Title photo
frugal technology, simple living and guerrilla large-appliance repair
Thu, 15 Feb 2018

I am trying to make the Xenialpup version of Puppy Linux work for me

Since I am not anxious to either dual-boot or replace Windows 10 with Linux on my main laptop (HP Envy 15-as133cl 15t), I thought I would go back to the live distribution that introduced me to Linux -- Puppy -- and see if I could make it do all the things I want and need it to do.

My history with Puppy goes WAY back. I remember running version 2.13 on all kinds of hardware -- castoff laptops, converted thin clients. It would run on anything.

Back then I booted Puppy from CDs. Nowadays, with "modern" Puppy I could boot from USB and save either to the laptop's hard drive or another USB drive.

I downloaded the latest Puppy, Xenialpup, and used the Fedora Media Writer in Windows to put it on a 4GB USB flash drive. Xenialpup is UEFI-compatible, and after turning off Secure Boot on the laptop, I was off and running the super-fast JWM desktop that has traditionally anchored the Puppy live system.

Surprisingly, I was able to get a pretty comprehensive Ode blog-posting setup going. I have Unison: I pulled version 2.40 from an old Ubuntu package and used dpkg-deb to extract the binary since I need the old version and not the Ubuntu Xenial version of Unison, which is 2.48. (On a related note, why is it so hard to get a working Unison 2.48 for CentOS?)

I pulled all of my scripts from the Windows Subsystem for Linux, and I've already synced the blog over to this system.

Thankfully, Puppy's unusual running-as-root way of working didn't screw up my file ownership on the server, or in my Windows Subsystem for Linux copy of the filesystem.

There was one old problem from Linux that I haven't had to deal with in a while: While typing, I had the typical "jumping" behavior due to "interference" with the touchpad. Though Puppy doesn't have a "disable the touchpad while typing" setting, I was still able to solve the problem quickly by disabling tap-to-click with the system's straighforward Input Wizard configuration utility.

Where I ran into problems was with my development environment. I got Ruby to work in Puppy after a little effort, but I couldn't get the equivalent of ruby-dev to build things like the Ruby Twitter gem, and the gem itself, which is a package in Ubuntu, is not easily available for Xenialpup.

So I can post to the blog but can't use my "new" social-posting routine that turns URLs into Ode-compatible files and then sends the results to both the blog and Twitter.

I can't run all the gems I want in Ruby. But I am also exploring Clojure, so maybe that would work.

I did manage to install the JDK, though I had to add it to my path, opting to do so in /etc/profile, in order to get it to work.

I downloaded the Leiningen script and installed it. I can create new Leiningen projects, but the REPL errors out in spectacular fashion.

I haven't tried to get Node working yet, but the Ubuntu version is old (4.2.6), and I'm not confident that this installation will play well with the overall npm ecosystem. I could try to download and install direct, but there's potential for a lot of trouble.

The mechanics of Puppy are working great. Despite the unorthodox packaging and software installation, I did manage to get quite a few things working. I have my favorite text editor (Geany), the full LibreOffice suite via SFS package, the Firefox browser with all of my bookmarks synced, and a super-fast desktop packed with a lot of (mostly) home-grown utilities.

But I couldn't get Puppy to go the last mile.

So the "story" for me and Puppy Linux in 2018 is good until the point at which I want to do development work. At that point it's better to stay in Windows (and the WSL) or opt for a traditional Linux installation.

Now if only there was a "full" Debian live environment that allowed for persistence. Maybe there is. I'll be looking.