Putting Puppy Linux on a Raspberry Pi

Fri 21 July 2017 by pj Tagged as linux raspi

I like the Raspberry Pi machines.... mostly. It's reasonably cheap, reasonably reliable, very widespread hardware. I just can't get comfortable running from an SD card - I've dealt with corrupted OSs on them waaaay too often in the past. So I went looking for a linux distro that would load from flash but run from RAM. Enter Puppy Linux.

Puppy has been around awhile, and it shows in the hodgepodge of information available online. After much reading of wikis, opening of issues on github, and asking on IRC, here's how to build a recent version of Puppy-raspbian:

If you're not running Puppy already, you'll want to clone run_woof, which sets up a Puppy-chroot from which you can run woof-CE which will build your image. So:

git clone https://github.com/puppylinux-woof-CE/run_woof.git
git clone https://github.com/puppylinux-woof-CE/woof-CE.git

Now you need a recent .iso to turn into a chroot. I used:

wget http://distro.ibiblio.org/puppylinux/puppy-tahr/iso/tahrpup%20-6.0-CE/devx_tahr_6.0.6.sfs
wget http://distro.ibiblio.org/puppylinux/puppy-tahr/iso/tahrpup%20-6.0-CE/tahr64-6.0.6-uefi.iso

Then run run-woof:

cd run_woof
./run_woof_helper

Note that I got a complaint about a lack of a value for SUDO_ASKPASS, which I remedied by doing:

sudo apt install ssh-askpass-gnome 
export SUDO_ASKPASS=/usr/bin/ssh-askpass

after which run-woof_helper ran fine. I chose the above tahr64 iso from the list, and after a few minutes was dumped into a root prompt in the chroot.