Why (at least some) Linux sucks

After the so-many-improvements-in-Cinnamon-5.4-that-it-fell-on-its-ass fiasco I decided it might be time for me to look for a different distro, something definitely NOT spiced. So yesterday afternoon I started to look for other distros, something fairly new but still holding onto the old ways or at least heavily customizable.

In the process an additional idea came to my mind: to search for uncommon, less known distros, and while at that also stumbled into some less known to me desktop environments (DEs). One of these drew my attention: Trinity.
So I decided I’d download whatever available that provides the Trinity DE by default but still downloaded a plethora of other different distros too.

The download operation took place in two stages since I had to take a nap in the mean time. Second stage was today, starting at about 1 PM. Downloads were started from the notebook – as I also was checking my mail while waiting for downloads to finish – but files were being saved to the shared folder on the other machine. No, I couldn’t make use of the torrent links where available because in 2022 Linux cannot map networked drives as Windows used to do since 95 (or 98), and the torrent applications just can’t deal with shared network folders so they simply pretend those don’t exist. Yay Linux! sick Anyway, after all planned downloads finished I thought it might be a good idea to check for updates on both machines before anything else.

Started with the notebook. Everything went fine except for Firefox 103 which failed on the local mirror. Installed the others then attempted to check the mirrors and if needed switch to a working one. However the dialog refused to show the lists. During update there had been a few messages about certain libraries not being symbolic links, which I kinda knew because it was me to install them (long story) so after a couple retries I let it be figuring I’d see about that later on. So I moved the USB modem to the desktop machine (because I, and most likely Linux itself, don’t know a way to bridge two local networks in order to share the Internet connection) and performed the latest updates there. Then obviously started the installation of VirtualBox in order to test each downloaded distro, live if possible otherwise install/test/wipe/next.

And here it started the daisy-chained bad luck. No, VBox 6.1 – latest available freshly downloaded earlier – installed just fine in the week-old Mint 21 Cinnamon. Extension Pack also installed without a hitch. Things were looking up. But when trying to create a virtual disk for Gobolinux I was puzzled by the strange option of 32bit-only OS types. After a few seconds I ignored it, and finishing the setup I tried to start the virtual machine. That’s when it barfed the error that VT-x was not available. Didn’t know exactly what that meant, assumed it could be some problem with VBox so abandoned it and tried to install some recent version of VMWare Player I had around.

But what the hell is a .bundle file and how to install it?!? There was a “how to” text file containing some instructions in French – which I mostly understand – but they were incomplete. Didn’t work. A quick web search brought the correct procedure… or almost, as even there people had slightly different opinions. Tried both until it worked. It was strange seeing "sudo [...] command not found" with first “solution”. Who ever comes up with these stupidly out-of-context error messages anyway…

Nevermind. Made the VMWare package executable with chmod a+x [filename], ran it with sudo sh [filename] and it started installing. Shortly after it hit the breaks and told me the same story: VT-x unavailable, should I continue installation [just for kicks as it wouldn’t work anyway]? This time I got it and said no. Definitely there was something missing.

Another web search provided the necessary hint: VT-x was a CPU virtualization capability. Checking my Intel Core2 Duo E7200 on the Intel site returned the confirmation: it was not implemented. I needed an alternative. And here’s when it got thicker: based on certain reports on the web I decided to try installing the latest 5.2 version of VBox which they said didn’t require VT-x as it does some kind of translation. Already had it at hand, but its compatibility stopped at Ubuntu 20-something. Never was afraid of doing uncommon things so what the hell – tried installing it in Mint 21.

If only it was that easy! GDebi started complaining about missing dependencies. First libssl1.1; not available in Mint 21 so downloaded and installed libssl1.1_1.1.1f-ubuntu2.16_amd64.deb from Ubuntu 20. Then libvpx5, so downloaded and installed libvpx5_1.7.0-3ubuntu0.18.04.1_amd64.deb from Ubuntu 18. Then GDebi got pissed off and stopped telling me what was missing – orange/red in the face just stood there quietly. Knew I should take a different approach so opened the Terminal and launched the VBox 5.2 package through sudo dpkg -i [filename].

That’s when the truth came to light:
dragos@HPdc7800:~/Downloads$ sudo dpkg -i ./virtualbox-5.2_5.2.44-139111~Ubuntu~bionic_amd64.deb
Selecting previously unselected package virtualbox-5.2.
(Reading database ... 356119 files and directories currently installed.)
Preparing to unpack .../virtualbox-5.2_5.2.44-139111~Ubuntu~bionic_amd64.deb ...
Unpacking virtualbox-5.2 (5.2.44-139111~Ubuntu~bionic) ...
dpkg: dependency problems prevent configuration of virtualbox-5.2:
virtualbox-5.2 depends on libqt5opengl5 (>= 5.0.2); however:
Package libqt5opengl5 is not installed.
virtualbox-5.2 depends on libqt5printsupport5 (>= 5.0.2); however:
Package libqt5printsupport5 is not installed.
virtualbox-5.2 depends on libqt5x11extras5 (>= 5.6.0); however:
Package libqt5x11extras5 is not installed.
virtualbox-5.2 depends on libsdl1.2debian (>= 1.2.11); however:
Package libsdl1.2debian is not installed.
virtualbox-5.2 depends on python (<= 2.7); however:
Package python is not installed.
virtualbox-5.2 depends on python:any (>= 2.6.6-7~).

dpkg: error processing package virtualbox-5.2 (--install):
dependency problems - leaving unconfigured

Now I remembered it also wanted the Qt5 files earlier when installing VBox 6.1 and installed them, but automaticall uninstalled them while uninstalling VBox. Stupid OS! Most times additional libraries remain installed bloating the system, and when I do need them to stay installed it wipes them out. And why didn’t that son of a bitch GDebi automatically pull those in just as it did previously with v6.1?! Fuck! thumbs down

Anyway, fired up Synaptic, marked the libqt5 files for installation together with the python 2.7 ones but there was no 64bit libsdl1.2 available – only the 32bit. WTF?!? So back to the web, download the right file (libsdl1.2debian_1.2.15+dfsg2-6_amd64.deb) and install it through GDebi right from browser’s download bar. Oh wait – the highlander install police rolling eyes says there can be only one. Either GDebi or Synaptic. Developers just can’t multitask in their brains so why should software do it. So close GDebi, go ahead with the marked items in Synaptic – which takes its sweet time everytime – then close Synaptic and start installing libsdl through GDebi again. Because fuck command line, my brains are already mush, can’t remember all that convoluted syntax for each and every distinct operation.

Attempted installing VBox again just to be stubbornly told there was no python[2] installed. Whadda fuck?!? I had just installed it!!! OK, started Synaptic – again! – to double-check the Python2 files, maybe there was something missing. Found a python-all, marked it and installed it. Attempted VBox install again, with the same negative result. Thought I should check who exactly replies when calling for python so ran python --version in Terminal. Result:

dragos@HPdc7800:~/Downloads$ python --version
Command 'python' not found, did you mean:
command 'python3' from deb python3
command 'python' from deb python-is-python3

Uhm, thank you for the hint. So there is no python command per se, but also do not want python-is-python3 because the application specifically requests Python2, which leaves me “shopping” for python-is-python2:

dragos@HPdc7800:~/Downloads$ sudo apt-get install python-is-python2
E: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 14581 (synaptic)
N: Be aware that removing the lock file is not a solution and may break your system.
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

Fuck me dead! Again the attack of the single-tasking brains! Close Synaptic, retry the command line. Finally the insignificant thing installed. Attempted installing VBox for the Nth time. No more python missing error, no other dependency error but… yeah, can’t build some kernel modules whatever. Some undefined flag.

Checked the web, again. Known issue in the past. Supposedly an unnecessary header file was still included, and in the newer version it didn’t define that flag (something with _IOCTL). Found an old header on the web, copied the flag (actually two, kinda similar) and pasted into the new header. Obviously by opening a second session of the file manager as root in order to edit a system file, because I’m not the master of the computer but precisely the other way around. not worthy Another attempt at installing VBox took it a bit further but, again, another error stopped it in its tracks. This time it wasn’t a trivial copy/paste or such, so after definitive documentation on the subject somewhere on the Oracle site – along the lines of “we don’t give a flyin’ fuck, 5.2 is out of support so get over it” – I understood it was time to give up trying to check other Linux distros and just call it a day.

But that was not to be the end of it. When bringing back the USB modem (K4607-Z from ZTE) to the notebook the fucker wouldn’t recognize it properly anymore! Just like the last time, in same circumstances, instead of the usual enp0s29u1u2u1 – whoever allows these internal names to penetrate outside to the user should be shot in the head! – it insisted on calling it usb0, which doesn’t actually match anything, and the connection will never ever get through, more so when it picks up any possible local IP except for the unique one that the hardware usually assigns to it (since it works as some kind of a virtual LAN).

So I unplugged and plugged it again a few times, to no avail. Deleted network connections and created new ones. Manually set the necessary fixed IP (that it usually was given automatically without user intervention). No budge – it wouldn’t connect.

Went Windows sheep user – or plain bovine cow, all the same – and rebooted the machine (with the “thing” connected). No change, still as usb0, still wrong IP, still no connection. Hey Mint Team: any hiccups earlier this evening…? whistling
Unplugged the damn thing again and rebooted a second time, without it, then plugged it back right after the POST screen. This time it connected during boot as it usually does… but not as the usual enp0s29u1u2u1 – it’s now enp0s29u1u2u2. What the hell happened and how to fix it?! Fuck me if I know! This kind of shit never happened in Windows[1] but it already happened a few times in Linux. Mint. And obviously won’t be fixed and backported to 19.2, because.

So fuck it. I need a new computer and a new operating system. No, actually I need another life altogether. sigh By the way… I had (and still have) a very old AMD Duron machine, a CPU that doesn’t even have SSE (!!!) not to mention VT-x or other “modern” mumbo-jumbo; that machine ran XP Pro and had some version of VirtualPC where I used to test Windows 95 and 98 (not enough RAM for higher guest versions). Guess ultimately progress bites everybody in the ass. I’d rather have it kiss me in the ass though…

(2022.08.10, 00:13)

P.S. Forgot to say I even considered temporarily downgrading the kernel to something less than 5.8 (which is where issues with VBox began) so that I could at least review those distros, but why should such option be present in a “modern” Linux. “Progress” at any cost (for the sucker user). And no, if there somehow is such option in a manual way (such as force-installing through Terminal) I don’t know it and wouldn’t remember it anyway by tomorrow.

P.P.S. Also forgot to say that after all this ordeal that took all in all about seven hours somebody “up there” decided to give the whole neighborhood a break. So… suddenly lights out for about half an hour. And right now at the time of typing this the relays in the – unfortunately useless already – UPSes started ticking again, meaning there is serious voltage fluctuation in the power network and there may be another blackout soon. Reminds me of the good ol’ times in the 80s when blackouts were the standard…

[1] Actually it does, Windows increases the ID of the detected device when plugged into a different port but handles this internally in a seamless way so the user has no idea and things just work. Or at least they used to, when Windows still was “normal”.