Fedora 31 Upgrade

November 12, 2019 ยท 2 minute read

Posted in: fedora linux computing software

Finished upgrading all of the computers in my home from Fedora 30 to Fedora 31 over the long weekend. It was pretty uneventful!

My own laptop went smoothly, though slowly, because it has a mechanical hard drive. All of the packaged software upgraded correctly and with no intervention, including the stuff installed from RPMFusion. I had quite a bit of self-compiled stuff, mostly relating to sway, and some of that had to be re-linked. Also, PAM (authentication modules) stopped seeing swaylock’s PAM config in /usr/local/etc, so I had to copy it into /etc/. I used Gnome for a while after the upgrade, not because sway wasn’t working (I had it working again the same day), but because I wanted to have a different feel for a little while.

My eldest child’s laptop went without a hitch; nothing unusual installed on that one.

For my home desktop/server, there are usually some issues. Generally postgresql needs some manual attention, and everything that depends on it will need some work. That wasn’t the case this time. All of the usual tiny issues were absent, and everything was completely smooth…except for one thing, which was a doozy.

For search engines: docker does not work on Fedora 31.

I had one service running under docker, and it was completely broken. Fedora doesn’t package docker anymore, and the free software fork they do package, moby-engine, doesn’t work without changing the boot options on your kernel: it needs cgroupsv1, and the Linux kernel shipping in Fedora now defaults to cgroupsv2. I was prepared to install moby-engine and go through the steps needed to restore cgroupsv1, but I preferred to do things the right way for moving forward.

That was to install podman. Podman is a container engine with a command-line that is backwards-compatible with docker, and it is packaged by Fedora. All I needed to do to get it running was to install it and edit the systemd unit file I had been using to start the service.

All in all it was a pretty easy upgrade. If the one service I had running on docker had been more critical, though, that one catch would have ruined my day.