Re: The trixie 13.0 installer ISO does not boot on a x86-64-v1 MacMini 2010 (FIX)

Andrés Hernández <[email protected]> Tue, 12 Aug 2025 13:05:12 -0600
Newsgroups gmane.linux.debian.devel.cd
Message-ID <[email protected]>
Hello

I created a custom USB stick with the contents of the Debian 13 ISO [1] 
and the GRUB-EFI bootloader from Debian 12 [2].
I was able to use this to install Debian 13 in my old Mac Mini 2010 [3].

I inspected the partition layout from the installer ISO with losetup and 
fdisk:

root@VEFR-1:~/Downloads# ls -l debian-13.0.0-amd64-netinst.iso
-rwxr-xr-x 1 tonejito users 790626304 Aug  9 23:54 
debian-13.0.0-amd64-netinst.iso

root@VEFR-1:~/Downloads# losetup -f debian-13.0.0-amd64-netinst.iso

root@VEFR-1:~# fdisk -l /dev/loop0
Disk /dev/loop0: 754 MiB, 790626304 bytes, 1544192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x4f2c5af7

Device       Boot Start     End Sectors  Size Id Type
/dev/loop0p1 *        0 1544191 1544192  754M  0 Empty
/dev/loop0p2       4108   11307    7200  3.5M ef EFI (FAT-12/16/32)

root@VEFR-1:~# losetup -d /dev/loop0


Then I created a partition for the Debian 13 ISO image on a USB drive, 
and a second EFI partition for the GRUB-EFI boot loader from Debian 12 [2]:

root@VEFR-1:~# fdisk -l /dev/sdb
Disk /dev/sdb: 29.49 GiB, 31666995200 bytes, 61849600 sectors
Disk model: USB Flash Drive
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 6C792302-0CC0-4BA4-A713-6B5ACEB7DC24

Device       Start     End Sectors  Size Type
/dev/sdb1     2048 1546239 1544192  754M Microsoft basic data
/dev/sdb2  1546240 1955839  409600  200M EFI System

root@VEFR-1:~# gdisk -l /dev/sdb
GPT fdisk (gdisk) version 1.0.9

Partition table scan:
   MBR: protective
   BSD: not present
   APM: not present
   GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sdb: 61849600 sectors, 29.5 GiB
Model: USB Flash Drive
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 8887B11F-FFBD-4101-BAE6-4B929F249814
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 61849566
Partitions will be aligned on 2048-sector boundaries
Total free space is 59895741 sectors (28.6 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
    1            2048         1546239   754.0 MiB   0700  Microsoft 
basic data
    2         1546240         1955839   200.0 MiB   EF00  EFI system 
partition

root@VEFR-1:~# eject /dev/sdb


I unplugged and connected the USB drive again to confirm that the kernel 
reads the partitions.
Then I copied the entire ISO to /dev/sdb1:

root@VEFR-1:~# dd if=/dev/loop0 of=/dev/sdb1 bs=512 count=1544192 
status=progress
787440128 bytes (787 MB, 751 MiB) copied, 171 s, 4.6 MB/s
1544192+0 records in
1544192+0 records out
790626304 bytes (791 MB, 754 MiB) copied, 178.257 s, 4.4 MB/s


Afterwards, I created an EFI partition, manuallt mounted it on /mnt, and 
copied the GRUB-EFI bootloader from my Debian 12 laptop [2]:

root@VEFR-1:~# mkfs.vfat -F 32 -n EFI /dev/sdb2
mkfs.fat 4.2 (2021-01-31)

root@VEFR-1:~# mount -t vfat /dev/sdb2 /mnt/

root@VEFR-1:~# mkdir -vp /mnt/EFI/boot /mnt/EFI/debian
mkdir: created directory '/mnt/EFI'
mkdir: created directory '/mnt/EFI/boot'
mkdir: created directory '/mnt/EFI/debian'

root@VEFR-1:~# cp -v /boot/efi/EFI/debian/grubx64.efi /mnt/EFI/boot/
'/boot/efi/EFI/debian/grubx64.efi' -> '/mnt/EFI/boot/grubx64.efi'

root@VEFR-1:~# cp -v /boot/efi/EFI/debian/shimx64.efi 
/mnt/EFI/boot/bootx64.efi
'/boot/efi/EFI/debian/shimx64.efi' -> '/mnt/EFI/boot/bootx64.efi'


The only remaning part was to copy the GRUB configuration file from the 
installer ISO to the USB drive, I had a burned DVD mounted on /media/cdrom0:

root@VEFR-1:~# cp -v /media/cdrom0/EFI/debian/grub.cfg /mnt/EFI/debian/
'/media/cdrom0/EFI/debian/grub.cfg' -> '/mnt/EFI/debian/grub.cfg'


This is the end result

root@VEFR-1:~# find /mnt/ -type f
/mnt/EFI/boot/bootx64.efi	# From my Debian 12 laptop
/mnt/EFI/boot/grubx64.efi	# From my Debian 12 laptop
/mnt/EFI/debian/grub.cfg	# From the Debian 13 installer ISO


This worked for me, I was able to boot my old Mac Mini 2010 [3] and 
install Debian 13 without issues [4].

This issue might be fixed in the next Debian 13 installer ISO if we 
provide a GRUB-EFI bootloader compatible with x86-64-v1 machines.
It seems that the GRUB-EFI bootloader that is present in the current 
Debian 13.0 installer ISO does not work with these old machines (see my 
previous email) [5].

Regards

--
	Andrés Hernández
	= ^ . ^ =

> [1]: https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-13.0.0-amd64-netinst.iso
> [2]: https://packages.debian.org/bookworm/grub-efi-amd64
> [3]: https://everymac.com/systems/apple/mac_mini/specs/mac-mini-core-2-duo-2.4-mid-2010-specs.html
> [4]: https://www.twitch.tv/videos/2537064157?X=Debian-13-MacMini-2010-002
> [5]: https://lists.debian.org/debian-cd/2025/08/msg00008.html


On 10/08/25 12:03, Andrés Hernández wrote:
> Hello
> 
> I went to the debian-cd download page [1], downloaded the Debian 13 
> (trixie) netinst ISO image [2] and burned it to a DVD-RW disc to perform 
> a clean install in my old MacMini mid-2010 (Macmini4,1) that has a very 
> old Intel Core 2 Duo P8600 processor which only supports the x86-64-v1 
> subarchitecture [3].
> 
> The result that I expected was the installer to boot using EFI and then 
> I would be able to install Debian 13 (trixie) as usual. I have this 
> machine running Debian 12 (bookworm) without issue. Although the option 
> for EFI boot was detected I was not able to boot the installer into EFI 
> mode, I got a blank screen even after leaving the machine sitting for 
> half an hour.
> 
> I went ahead and rebooted the machine into BIOS mode (the CD icon 
> appears with "Windows" in the MacMini boot options screen) and then I 
> was able to install Debian 13. I created the EFI partition but the 
> installer did not perform the EFI installation because I booted into 
> BIOS mode (this is expected).
> 
> The end result is that the installer finished and I could not boot into 
> the new installation because the EFI partition was not initialized 
> correctly because I installed in BIOS mode. I fixed this by attaching 
> the disk to other MacMini that I have around and copying my EFI 
> partition contents with the GRUB files, then chrooting into the install 
> and replacing grub-pc with grub-efi. This is just a workaround test that 
> I did to see if any further issues were also happening. [4]
> 
> I feel that the technical issue is that the GRUB EFI boot loader that 
> the Debian 13.0 ISO was compiled for the x86-64-v2 subarchitecture. I 
> saw the following in the "ArchitectureSpecificsMemo" wiki page [5] 
> related to the sub-architectures for amd64 (also known as x86_64):
> 
>  > ArchitectureSpecificsMemo
>  > …
>  > Each Debian architecture has a baseline indicating the oldest or 
> least capable CPU on which the architecture can be used.
>  > The baseline can change between Debian releases.
>  > The baseline is mostly defined by the gcc-N package, which is 
> configured to produce baseline binaries when options like -march= are 
> not used.
>  > …
>  >   amd64
>  >     x86_64 with no optional extensions (psABI baseline).
>  >     The core specification includes MMX, SSE and SSE2 so these are 
> OK, but SSE3 and up are not guaranteed.
>  >     (The default is -march=x86-64, but not -march=x86-64-v2 or later.)
> 
> I have had a similar issue with install ISO images not booting on old 
> machines that do not support the x86-64-v2 architecture or newer. One 
> example of this is Proxmox that dropped x86-64-v1 on the 8.x release, I 
> have the exact same symptoms happening with their install ISO on this 
> machine.
> 
> I went ahead and booted the exact same Debian 13 DVD-RW on a sightly 
> newer MacMini 2011 (Macmini5,1) [6] that I have around here that does 
> support x86-64-v2 and the installer booted without issues in EFI mode.
> 
> Maybe we need to replace the GRUB EFI image that is present in the 
> Debian 13 installer ISO to be compatible with older x86-64-v1 machines 
> according to [5].
> 
> NOTE
>    This is my first bug report, I am not sure if I should format this 
> using "reportbug" [7] or send this to other mailing list.
> 
> Thanks in advance
> -- 
>      Andrés Hernández
>      = ^ . ^ =
> 
>  > [1]: https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/
>  > [2]: https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/ 
> debian-13.0.0-amd64-netinst.iso
>  > [3]: https://everymac.com/systems/apple/mac_mini/specs/mac-mini- 
> core-2-duo-2.4-mid-2010-specs.html
>  > [4]: https://www.twitch.tv/videos/2536210400?X=Debian-13- 
> MacMini-2010-001
>  > [5]: https://wiki.debian.org/ArchitectureSpecificsMemo
>  > [6]: https://everymac.com/systems/apple/mac_mini/specs/mac-mini-core- 
> i5-2.3-mid-2011-specs.html
>  > [7]: https://www.debian.org/Bugs/Reporting
> 
>