SD card experiment, UEFI system - Frugal Puppy on a small cheap laptop (HP stream etc) via SD card.
WARNING - EXPERIMENTAL - DO NOT TRY ON A MISSION CRITICAL PC. USE AT OWN RISK.
Some very cheap laptops are available & I wanted to run Puppy without trashing
windows on my Lenovo Ideapad 110S (celeron N3060, 2Gb ram, 32Gb eMMC storage, also
has a microSDXC slot). I got a microSDHC 32Gb class 10 card with adaptor for $7 AUD.
On my main PC, I downloaded bootx64.efi from here:
https://www.mediafire.com/file/toh3iith ... 4.efi/file
Need a fairly recent puppy .iso - I used ScPup64-20.06+2.iso. Bionic/Fossa probably ok.
I made a text file with the following entries & saved it as grub.cfg
NOTE1: If you have 4Gb ram or more, can remove ,nocopy from grub.cfg
NOTE2: Can have windows as default by setting default="1" in grub.cfg
Code: Select all
set default="0"
set timeout=5
menuentry "scp64-20062 frug" {
linux /EFI/BOOT/puppy/vmlinuz psubdir=puppy pfix=fsck,nocopy pdrv=060421a rootwait ro
initrd /EFI/BOOT/puppy/initrd.gz
}
menuentry "Windows 10" {
insmod part_gpt
insmod chain
chainloader /EFI-w/Microsoft/Boot/bootmgfw.efi
}
I inserted the microSDHC card (in adaptor) & via gparted, I formatted it as ntfs
& added a unique label (i.e. 060421a - must be same as pdrv entry in grub.cfg).
Then I mounted the SDHC card, made a folder named puppy on it, then mounted
ScPup64-20.06+2.iso & copied into folder puppy on the card, all .sfs, then
initrd.gz & vmlinuz & then bootx64.efi & grub.cfg & then unmounted the card.
If you ever intend to use laptop's windows, before next step must start it & set it
up - ensure control panel/hardware/power buttons has fast startup off, then shutdown.
I then booted the laptop with a bootable usb stick, going to bios first to change
the boot order to allow usb booting first & eMMC second & legacy support enabled.
When puppy had booted up, I inserted the microSDHC & mounted it.
Then I mounted the eMMC system (boot) partition, renamed folder EFI to EFI-w, then
made a folder EFI, & inside it a folder BOOT, & inside that a folder puppy.
I moved grub.cfg to the eMMC partition, then moved bootx64.efi into /EFI/BOOT,
then moved initrd.gz & vmlinuz into /EFI/BOOT/puppy, unmounted SDHC & rebooted,
removing usb stick once reboot began.
Booted to a working Puppy, for which a savefile (not savefolder) can be made. (ext3/4 allows savefolder).
NOTE3: Can select windows or puppy during boot (at menu, arrow up/down & press enter).
NOTE4: Windows updates will break the bootloader (resets windows as default). Must boot
with bootable usb stick & reset. Even bios boot order needs checking.