Adventures in Linux Ep. 1: Et tu, Fedora?
Tidbits from my predicaments with Fedora 34 XFCE. Apparently, Fedora 34 is not a bad crop, but Linux being Linux, nothing is erm… perfect. Not always. Never, actually.
Episode 1: RPM Fusion
I’m normally using
ftp-stud.hs-esslingen.de, but this is not related to any specific mirror. When released, FC34 had vlc-188.8.131.52 in RPM Fusion, but yesterday vlc-3.0.15 showed up for an update as the most recent VLC. Nobody seems to have tested anything, as it’s not installable because of unmet dependencies!
[ludditus@fedora ~]$ sudo dnf install vlc vlc-core vlc-extras ... Skipping packages with broken dependencies: vlc x86_64 1:3.0.15-2.fc34 rpmfusion-free-updates 1.5 M vlc-core x86_64 1:3.0.15-2.fc34 rpmfusion-free-updates 9.6 M vlc-extras x86_64 1:3.0.15-2.fc34 rpmfusion-free-updates 64 k
[ludditus@fedora ~]$ sudo dnf info vlc Last metadata expiration check: 0:22:40 ago on Tue 15 Jun 2021 06:36:41 PM CEST. Installed Packages Name : vlc Epoch : 1 Version : 184.108.40.206 Release : 9.fc34 Architecture : x86_64 Size : 4.4 M Source : vlc-220.127.116.11-9.fc34.src.rpm Repository : @System From repo : rpmfusion-free Summary : The cross-platform open-source multimedia framework, player and server URL : https://www.videolan.org License : GPLv2+ Description : VLC media player is a highly portable multimedia player and multimedia framework : capable of reading most audio and video formats as well as DVDs, Audio CDs VCDs, : and various streaming protocols. : It can also be used as a media converter or a server to stream in uni-cast or : multi-cast in IPv4 or IPv6 on networks. Available Packages Name : vlc Epoch : 1 Version : 3.0.15 Release : 2.fc34 Architecture : x86_64 Size : 1.5 M Source : vlc-3.0.15-2.fc34.src.rpm Repository : rpmfusion-free-updates Summary : The cross-platform open-source multimedia framework, player and server URL : https://www.videolan.org License : GPLv2+ Description : VLC media player is a highly portable multimedia player and multimedia framework : capable of reading most audio and video formats as well as DVDs, Audio CDs VCDs, : and various streaming protocols. : It can also be used as a media converter or a server to stream in uni-cast or : multi-cast in IPv4 or IPv6 on networks.
Fucking stupidity. If RPM Fusion cannot be trusted, why not using a random distro instead of Fedora? RPM Fusion is crucial to Fedora on the desktop (non-free, legally or patent encumbered packages, etc.). I know I have chosen Fedora because most distros couldn’t be bothered to update Thunar to fix a CVE vulnerability, but this has become a Catch-22 situation.
UPDATE: One more day, and the dependencies got fixed, so VLC could be upgraded to 3.0.15. Still, RPM Fusion being a small repository (only counting the packages for FC34), it’s not really acceptable.
Episode 2: ulimits & stuff
Some idiot somewhere (I can’t remember the details) mentioned NetSurf version 3.10 as an extremely lightweight cross-platform Internet browser. By default, NetSurf starts with JS disabled, but it generally manages to display most web pages quite OK (much better than
But then I noticed that Fedora only has NetSurf 3.9, not the latest 3.10. Pkgs.org however revealed that 3.10 was available in a third-party repo called Cheese, and it took me some time to identify it. With no info as to how to use it (is it a normal repo, or a COPR?), I decided to simply grab the RPM and install it.
I didn’t start it right away (I already knew how 3.9 worked), but some time later, when in the About box of a utility (again, I don’t remember which one), I clicked on a link, and then…
…not one instance of NetSurf 3.10 was started. An infinite loop of NetSurf instances was fired up, and soon enough, hundreds of NetSurf windows were cluttering my desktop, eating my CPU and RAM, and making my system unresponsive!
I thought Linux, or rather GNU/Linux (to mean “Linux as a distro”), would have evolved since I first met it 26 years ago. I’d have expected it to have set some limits by default, so that such a thing be impossible.
Fedora Magazine recently suggested people use the antiquated
cpulimit “to free up your CPU”; as if only the CPU were the resource to be protected.
Back when I was more into Linux,
limits.conf(5) was used to put some relevant limits to a user session, including e.g. the maximum number of processes (read also in Arch’s wiki). This worked, if my memory serves me well, even before
pam_limits(8) was invented. Enforcing limits through PAM was quite a thing, I seem to recall.
- CgroupsV2 are used by default since Fedora 31
systemd-oomdis enabled by default in Fedora 34, replacing
earlyloom, which was introduced with Fedora 32
No such shit worked in my case in Fedora 34. What’s the purpose of such complex mechanisms if they don’t fucking work, or if they use defaults that make them useless?
In my case, I switched to a virtual console using CTRL+ALT+F1, and I killed the X server. But then, restarting the XFCE session made it try to restore the previous session, which started again the infinite loop of NetSurf 3.10 browsers!
Not wanting to investigate about where does XFCE store its session these days, I went back to a virtual console and uninstalled
netsurf, which fixed the issue.
The only reason for using a Linux distro in 2021 is that everything else is worse. But in 1996 I was happily using Linux with 4 MB of RAM (megabytes!), whereas in 2021 using Linux with 8 GB of RAM and a SSD doesn’t make it feel much better, and beyond the clutter I can see no substantial improvement. Sure thing, it’s much better than Windows 10 or 11, but if it were after me, I’d still be using Win98SE. I was quite happy with it, the UI and ergonomics were almost perfect, and it could still run the fabulous DOS games of the 1990s. All in 4 MB of RAM.
To be continued…