Haiku ESP (EFI Secure Boot) partition image?

…is it available as a separate download somewhere? Or can e.g. DriveSetup create it on a newly initialized drive? (this would be useful to bake your own ESP plus “any size” BeFS partition combo onto e.g. an any size USB stick, then to install Haiku onto the latter)

Thanks in advance :slight_smile:

Yes, it can: UEFI Booting Haiku | Haiku Project

It sound unnecessarily dangerous. It is not that hard to create an ESP partition.

That was basically my question - I know of course you can do it manually (or clone an existing partition), but DriveSetup seems to imply (?) capability of doing more than it currently does. For example, if you actively ask it to create an “EFI system data” partition, the intent thereof is pretty clear, yet it neither formats as FAT32 (label “EFIBOOT”) nor therefore install the few things needed on there for even a single boot option Haiku only setup. Automating these steps to go from a fixed “live” system a la the official Haiku images to a more dedicated one on an “any size” drive would probably be useful for a lot of people, and should be a fairly straightforward addition I guess. Any thoughts?

EDIT: Maybe such an automated procedure could even include installing rEFInd including a nice Haiku logo (iirc others have posted such creations on these forums in the past) to provide the basic provisions for multi boot (or multi-Haiku, e.g. official + nightly release) setups. Just a thought.

EDIT2: Quoting nephele in another thread: “The location of the ESP [partition] is irrelevant, that is one nicer things of EFI that we don’t have to reserve some special section anymore. The Haiku anyboot image has the ESP at last position for example (though this should change if we finish the bfs resizing code at some point, so the installer medium can directly become the installed OS).” What I’m asking above could perhaps be categorized as the poor man’s or safer version of that process, not involving resizing of existing partitions etc. After all, USB sticks are quite cheap these days so having two is not that uncommon anymore. Bottom line, anyboot on one, then prepare and install onto the other with some straightforward automated steps; where to draw the line or converge between DriveSetup and Installer here I leave open for discussion.

1 Like

EFI system data implies neither, this refers to the gpt partition identifier

There is no reason why fat33 is always right either, in fact, the efi spec mandates usb thumb booting support atleast fat16, it doesn’t have to support fat32.

I think that drivesetup is simply the wrong tool for this and should be replaced, in the contrxt of the installer, with a more friendly option.

I’ve already opened a ticket for this quite some time ago.

4 Likes

This creates a partition and sets the partition type to “EFI system data”. Nothing more, nothing less. If you are trying to second guess the software and think it is implying things, you are wrong, because our software isn’t that smart :slight_smile:

Yes, there is a ticket for Installer to support a “I don’t care about the details, just erase everything on my disk and set it up correctly” mode. That should surely be done.

5 Likes

I also have a small guide on how to enroll Haiku’s keys into your BIOS to use EFI Secure Boot.
https://cgit.haiku-os.org/haiku/tree/data/boot/efi/keys/README.md

We sign our release bootloaders with our own cert, so you have to add the Haiku, Inc. cert into your BIOS as a trusted vendor.

Keep in mind, there really isn’t a benefit since our bootloader doesn’t cryptographically check our kernel. All your doing is ensuring Haiku’s bootloader hasn’t been tampered with.

“ESP (EFI Secure Boot)”

ESP is “EFI System Partition”. EFI isn’t secure by definition, it has extensions to enable cryptographic signing of executable code.

2 Likes

Is there some documentation on what the different files do? I had a laptop that kept saying “Sucess!” when enroling keys but could not boot then, at some point it worked but i really don’t know which file/option it was that worked.