Booting Slacko 6.3 on UEFI


Booting UEFI difficult? Nah. Not at all. Let's do this for Slacko 6.3 (32-bit).

1. Make sure you have UEFI machine. Machines that comes with Win8 or recent usually okay.
2. Get a blank flash drive. Format it as FAT32.
3. Grab a copy of Slacko 6.3 ISO
4. Grab a copy of Grub2 UEFI bootloader, from here: http://distro.ibiblio.org/fatdog/packages/700/grub2-efi64-2.00-x86_64-1.txz.
This is for 64-bit machine, if yours is 32-bit (extremely rare) then get http://distro.ibiblio.org/fatdog/packages/700/grub2-efi32-2.00-i686-1.txz.
5. Extract the tarball from previous step, make sure you get a copy of grubx64.efi (or grubia32.efi) from inside the tarball and rename it to bootx64.efi (or bootia32.efi).
6. On you flash drive:
- mkdir -p EFI/boot
- copy bootx64.efi (or bootia32.efi) and put it under EFI/boot
- Extract the contents of Slacko 6.3 ISO and put the following files to the root of the flash drive:
* vmlinuz
* initrd.gz
* puppy_slacko_6.3.0.sfs
* zdrv_slacko_6.3.0.sfs
- on the root of the flash drive, create a new file named "grub.cfg" and fill it with the following text:
menuentry "Start Slacko" {

linux /vmlinuz
initrd /initrd.gz
}


7. If you have Windows, boot to Windows and disable hibernation (aka fast boot, aka hybdrid sleep, etc). Your Slacko doesn't need this, this is more to protect Windows.
8. Configure your UEFI to disable Secure Boot.
9. Now boot with the flash drive plugged and tell your UEFI bios to boot from that flash drive.

You can run Slacko64 6.3 in the same way. Your success with other Puppies may vary, but the process is generally the same.

PS: In my (qemu) test, mouse doesn't work. But this is something I'm sure Mick can fix later :)

Posted on 1 Apr 2016, 01:12 by jamesb - Categories: Puppy
Edit - Delete


Comments:

Posted on 1 Apr 2016, 08:15 by 01micko
"Will this work on ISO?"
Interesting that it seems so easy.

As the title asks, I'm thinking that it would work the same. I also wonder if execution could be passed on from syslinux to grub. Then one could have an ISO image that boots BIOS and UEFI with minimal bloat with a syslinux boot menu choice.

I guess I'll have to build Qemu and find out; also find out what cause the mouse failure.

NB: looks like the date fix works nicely.

Delete

Posted on 1 Apr 2016, 09:51 by jamesb
"Yes"
You need to create a FAT disk image. Inside that image, create /EFI/boot and put grub2.efi (renamed) to /EFI/boot/bootx64.efi.

Make sure you have grub.cfg at the root of the ISO image (not inside the FAT disk image).

Use this FAT image as the secondary bootloader (the primary bootloader will be syslinux, used for BIOS booting).

Burn it the way Fatdog ISO builder does it. You can choose either mkisofs or xorriso but whichever you choose, you must use the same command for remaster and save-to-dvd (thus, mkisofs is probably better since Slackware already has the right version - the real mkisofs instead of cdrkit).

You can switch execution from syslinux to grub, but not from BIOS syslinux to EFI grub, so yeah what you want is not possible. You will need to have a separate syslinux.cfg for BIOS and grub.cfg for UEFI.

If you want to avoid multiple configurations, you can actually use grub2 as the BIOS CD/DVD bootloader too, but I haven't done this yet, and I can't tell how well it will work or whether it will work with multisession at all.
Delete

Posted on 1 Apr 2016, 10:19 by 01micko
"Thanks"
I will try that.

What I did actually do though was simply add isolinux.bin and boot.cat from the original slacko iso image and just built an iso (mkisofs).

I boots in virtualbox (efi enabled)! However, no X, complains about drivers.

I have no EUFI machines at my disposal to test.
Delete

Posted on 1 Apr 2016, 15:07 by mavrothal
"rEFInd"
I used rEFInd (https://sourceforge.net/projects/refind/) for my Macs to boot PD, slacko64 and tahr64. Presumably works in PCs too. Is very simple and flexible allowing multiple OSs, icons, volumes and many other goodies.
Does Grub2-UEFI do similar things?
Delete

Posted on 1 Apr 2016, 19:32 by jamesb
"RE: rEFInd"
@Mick - To run in virtualbox under UEFI you need xf86-video-fbdev. You can get away running in qemu because slacko already includes cirrus driver by default.

As for UEFI machines, don't be disheartened: both virtualbox and qemu can provide surprisingly accurate emulation for testing purposes.

@mavrothal - yes rEFInd is nice. It is especially nice if you use it as an installed boot loader (on HDD, or on USB flash drive). The only (minor) inconveniences is, it is not self-contained - you need extra drivers to access ext4, ntfs, and CD/DVD whereas grub2.efi is a single file (like grub4dos), but this is not a problem for an installed bootloader.

rEFInd also has another small problem when used as CD/DVD bootloader - it can only access stuff inside the EFI fat image. So if the CD/DVD must support both BIOS and UEFI, you will have to duplicate vmlinuz and initrd - one on the CD/DVD root (for isolinux) and one inside the EFI fat image (for rEFInd). This is probably not a problem for most Puppies since their vmlinuz/initrd is quite small; but a big problem for Fatdog with its huge initrd. Rod knew about it as I told him about it back in late 2012 when we first tested. He told me the fix wasn't easy so he decided to let it be. There is also another minor problem which I choose not to discuss here - it won't affect most people.

Compared to rEFInd, grub2.efi supports multiple OS, volumes, and many other goodies too. It supports graphical background image. But it does not support icons.
Delete

Posted on 1 Apr 2016, 20:12 by 01micko
"ISO works"
My iso (slacko-6.3.0.5 - unreleased from xorg branch, the 'fido' one) works just fine in Qemu with UEFI; mouse and all.



Booted fast and runs smooth.

Thanks and Cheers!
Delete

Posted on 1 Apr 2016, 20:25 by jamesb
"Great news!"
Finally - Puppy has entered UEFI era.
Delete

Posted on 3 Apr 2016, 12:34 by 01micko
"Works on MacBook Air"
I forgot about wife's MacBook! Its an 2012 Air with Mavericks (I think - extremely rare for me to use it!) and everything works ootb! Typing on it now - not bothering setting up email.

I constructed an iso that boots BIOS and UEFI following FatDog64 iso as a template, with the help screens and a png backdrop. I made a backdrop for Tahr too and a generic Puppy version. I made a mistake and named my image efi.img but that seems to not matter as long as the config can find it.

Before I booted it here I booted it on my old Dell (core 2 duo - bios) and of course it all worked there, as it has been for a while.

Too early to commit to woof? Maybe I'll post an ISO first.
Delete



Add Comment

Title
Author
 
Content
Show Smilies
Security Code 2324737
The Puppy Linux mascot?
Password (to protect your identity)