From Fedora Project Wiki
(Created page with '= Bootable EFI CDs on Intel Macs = Bootable EFI CDs on an Intel Mac are a bit different than a normal EFI CD. As such, they need special support. == What's needed == * HFS+ s...')
 
 
(10 intermediate revisions by 2 users not shown)
Line 6: Line 6:
  
 
* HFS+ support for blessing a file
 
* HFS+ support for blessing a file
 +
* make dumpet correctly interpet and display hybrid iso/apm CDs and HFS+ blessing
 
* Ability to create image files for the icon and label to be used on the boot option screen
 
* Ability to create image files for the icon and label to be used on the boot option screen
 
* Ability to create CD that has el torito images as well as an Apple Partition Map which specifies the HFS+ image as a partition.
 
* Ability to create CD that has el torito images as well as an Apple Partition Map which specifies the HFS+ image as a partition.
Line 17: Line 18:
 
|Sub-task||Percent Complete||Notes
 
|Sub-task||Percent Complete||Notes
 
|-
 
|-
|HFS+ bless||100||Apparently we can do this now (mjg59 - add a note to say how?)
+
|HFS+ bless||100||Apparently we can do this now. Two bytes in the HFS+ superblock need to be set to point to the inode of the appropriate file, which can be determined with ls -i. Code written (http://www.codon.org.uk/~mjg59/bless.c)
 
|-
 
|-
|icons||0|| We know how to create them (mjg59 - add a note to say how?)
+
|icons||0|| We know how to create them. generic-logos has a sample implementation and builds the Mac icon (/usr/share/pixmaps/bootloader/fedora.icns) and this should be installed as .VolumeIcon.icns
 
|-
 
|-
|create hybrid APM CDs||0|| pjones working on this
+
|dumpet modification||30|| pjones working on this - progress info at http://git.fedorahosted.org/git/?p=dumpet.git
 +
|-
 +
|create hybrid APM CDs||0|| pjones working on this - plan is to make mkisofs use libapplepart provided by dumpet
 
|-
 
|-
 
|*-logos||0||
 
|*-logos||0||
 
|-
 
|-
 
|mk-images||0||blocking on stuff above
 
|mk-images||0||blocking on stuff above
 +
|-
 +
|isohybrid integration||0||the plan for this is insane - basically, it's to pick a creative value which decodes to benign x86 insns for the volume size in the apple partition map, and stick a jmp into the next field, then stick the actual isohybrid code a bit later where we've got some space.
 
|-
 
|-
 
|}
 
|}
 +
 +
= Alternate Approach =
 +
 +
There's also another way:
 +
 +
* Put a GPT table on the CD
 +
* Create an EFI System Partition that points at the El Torito image
 +
* copy /usr/share/pixmaps/bootloader/fedora.icns to \.VolumeIcon.icns
 +
* Put a label file at \{somefile}
 +
* Make sure the bootloader looks at the iso9660 image instead of El Torito or the EFI System Partition.

Latest revision as of 17:20, 21 July 2011

Bootable EFI CDs on Intel Macs

Bootable EFI CDs on an Intel Mac are a bit different than a normal EFI CD. As such, they need special support.

What's needed

  • HFS+ support for blessing a file
  • make dumpet correctly interpet and display hybrid iso/apm CDs and HFS+ blessing
  • Ability to create image files for the icon and label to be used on the boot option screen
  • Ability to create CD that has el torito images as well as an Apple Partition Map which specifies the HFS+ image as a partition.
  • icon/label images included in *-logos
  • modification of mk-images to create the appropriate HFS+ image and add it to CD images.

Current Status

Sub-task Percent Complete Notes
HFS+ bless 100 Apparently we can do this now. Two bytes in the HFS+ superblock need to be set to point to the inode of the appropriate file, which can be determined with ls -i. Code written (http://www.codon.org.uk/~mjg59/bless.c)
icons 0 We know how to create them. generic-logos has a sample implementation and builds the Mac icon (/usr/share/pixmaps/bootloader/fedora.icns) and this should be installed as .VolumeIcon.icns
dumpet modification 30 pjones working on this - progress info at http://git.fedorahosted.org/git/?p=dumpet.git
create hybrid APM CDs 0 pjones working on this - plan is to make mkisofs use libapplepart provided by dumpet
*-logos 0
mk-images 0 blocking on stuff above
isohybrid integration 0 the plan for this is insane - basically, it's to pick a creative value which decodes to benign x86 insns for the volume size in the apple partition map, and stick a jmp into the next field, then stick the actual isohybrid code a bit later where we've got some space.

Alternate Approach

There's also another way:

  • Put a GPT table on the CD
  • Create an EFI System Partition that points at the El Torito image
  • copy /usr/share/pixmaps/bootloader/fedora.icns to \.VolumeIcon.icns
  • Put a label file at \{somefile}
  • Make sure the bootloader looks at the iso9660 image instead of El Torito or the EFI System Partition.