site  contact  subhomenews

Booting EasyPup frugal installation with reFind

March 22, 2020 — BarryK

Ramachandra sent me an email that he is unable to boot a frugal installation of EasyPup with reFind boot manager.

I have been through the exercise this morning, and got it to boot. Firstly, read this post about the setup of reFind on my new Lenovo PC:

https://bkhome.org/news/202003/multi-booting-buster-pyro-and-windows-on-new-pc.html

These instructions are going to apply to any Puppy, not just EasyPup. Also to any other Linux installation.

I booted EasyPup 2.2.12 from USB-stick, by holding down the F12 key and then choosing the USB-stick from the menu.

After that, it is the usual Puppy thing, you run the "Puppy Universal Installer" from the "Setup" menu, and choose a frugal install. I chose sda6, a ext4 48GB partition -- most importantly, I did not set the "encrypt" flag on this filesystem (did not run "tune2fs -O encrypt /dev/sda6".

I chose to install into "easypup/2.2.12" in sda6, so this is the end result:

img1

...well, not exactly. 'buster64save.4fs' will not be there until after the frugal installation of EasyPup is booted.

It is easy to insert a menu entry into /EFI/BOOT/refind.conf, in the sda3 fat32 esp partition:

menuentry "EasyPup Buster (frugal sda6 easypup/2.2.12)" {
volume hdd48gb3
loader /easypup/2.2.12/vmlinuz
initrd /easypup/2.2.12/initrd.gz
ostype Linux
options "pmedia=atahd psubdir=easypup/2.2.12"
}

...I inserted that just above the "Windows 10" menu entry. Note that you can find out the label (volume) of a partition by running 'blkid', for example:

# blkid /dev/sda6
/dev/sda6: LABEL="hdd48gb3" UUID="cef85caf-2d3f-4bbc-9a57-ac5b64fb2ff3" TYPE="ext4"

There is however, one important thing missing. ReFind needs drivers to recognise filesystems other than fat16/32. That is, fat support is builtin, however, others, such as ext4, need a driver.

The drivers are to be found at /usr/share/refind/drivers_x64 in EasyOS and EasyPup..

Copy the 'ext4_x64.efi' file to /EFI/BOOT/drivers in the fat esp partition -- you will need to create the 'drivers' folder.

Then you are good-to-go.

Future builds of EasyOS and EasyPup will have that ext4 driver already there, at /EFI/BOOT/drivers/ext4_x86.efi, in the boot partition of the USB-stick. That makes it easier when setting up reFind boot manager in a PC. 

EDIT 2020-03-23:
All of the above has been explained in the easyos.org website, for example:

https://easyos.org/install/install-to-pc-with-existing-refind-boot-manager.html

However, this blog post focuses on the specific example of EasyPup, or any other Puppy Linux frugal install. 

Tags: easy