Linux: A Love/Hate Story

Computers seem to gather. This slightly incriminating image shows seven laptops, six of which belong to me, and two desktops. One of the desktops, the mini-lenovo in the top-left, is my Nextcloud server, and the other, sitting, in defiance of the term desktop, under the desk, is my main computer, an Asus gaming machine of impressive age.

Of the laptops, three are in useable working order, but one of those – the red Dell netbook, is so old that its uses are limited. I have put antiX Linux((https://antixlinux.com/)) on it, but connecting to a modern webpage, of even the most static and undemanding design, sets its poor little processor into terminal sprint and sends its temperature up to alarming levels. I’m loathe to get rid of it, because I bought it almost new, from the Dell outlet store, in 2010, and it has served me well, but I think it may be time to offer it to the computer recycling people, who might be able to find a use for it.

The live machines are the two Thinkpads in this second picture. The one to the left (it’s the one with the yellow sticker on it in the first pic) is a slightly more modern machine than its stablemate (orange Ubuntu sticker). That is an X220, which my wife bought second hand, but could never get on with. I always thought it had the most amazing keyboard, but she broke the trackpad buttons at some point, and I took it on when she replaced it. I fitted a replacement keyboard, but it’s a cheapo Chinese rip-off that has a lot of flex. Yesterday, I popped into Just P C’s (sic) in Newport and asked whether he could fix it, and he said I could just stick it down with a double sided foam pad. I hadn’t thought of that. I’ll give it a try soon.

I hadn’t used it much since the disappointment of finding that the keyboard repair was shonky. I’d put a small SSD in it and loaded Xubuntu2 on, and liked that operating system so much that I’d done the same on the other ThinkPad, my main laptop. I was happy enough with that for some time, but wanted to try systems other than Ubuntu-based ones and, a few weeks ago, I stuck Manjaro Plasma3 on the X220, as an experiment.

And there, children, the tale begins. But first, some history.

Linux & Me

Ubuntu, which was designed to be ‘Linux for the rest of us’, was the first Linux OS I managed to get running, when a Toshiba I couldn’t afford to replace got so many viruses that its Windows XP system became useless. At the time, my attitude to computers was turn-on-and-use: it seemed outrageous to me that I might have to pay, a second time, for the operating system to get my expensive property working again.

So, with many false starts and struggles, I downloaded a copy of Ubuntu, made a CD of it, discovered how to boot into BIOS and managed to install my first linux OS. WiFi was a new and wonderful thing in those days, and I had to buy a wireless card, something like the one in this picture.

The first Ubuntu OS I installed was 32 bit, and it fit on a CD. I was immediately hooked, not to mention, extremely chuffed with myself. At that time, it felt like a major operation to install an operating system. This morning, I installed Kubuntu on my desktop before breakfast.

Anyway, for several years I used Ubuntu, and very happy I was with it too. It made writing and editing and other work very easy, and it also made the new media, such as electronic images and digital music files, enjoyable to create, store and use. I became a bit of an experimenter, putting an open source operating system onto an ipod,4 and making my first, stumbling attempts to understand the command line.

However, in 2011, Canonical, the company who developed and maintain Ubuntu, took their netbook remix layout and pushed it on to their main distribution, calling it Unity. It was a wrench and I was somewhat miffed. It was the first time I had felt that Ubuntu was trying to limit my computing freedoms, as opposed to trying to help me realise them. As you’ll see, over the years, that has become a theme.

My gripes at the time were that it was much more difficult to personalise the Unity desktop, and I couldn’t install my favourite icons or make it look the way I like my computer to look. In frustration, I began experimenting with other distributions and found Bodhi Linux5. I was using the Dell netbook as my main laptop by now, and Bodhi, being very lightweight, made a huge difference. It was also accessible and easy to customise, and I stuck with it for some years.

I had, however, bought a cheapish but reasonably powerful desktop computer when we moved into this house. It was, incidentally, the last new computer I bought, except for a Raspberry Pi I keep as a media server. Bodhi felt a little stretched on a large monitor, and in 2014, having read enthusiastic things about Unity, I switched back.
For a few years, it was love.

I was using, although not yet self-hosting, a cloud computer by then, so I had discovered the pleasure of integrating files across a network and, more importantly, contacts, task-lists and calendars between devices. I had also, finally, succumbed to the smartphone pressure in either 2012 or 13. I had, I felt, entered the future. I could take a photo on my phone and it would appear on my computer when I turned it on. I could write a page of text on my laptop and the updated version would be synchronised to my desktop. It still all felt new and wondrous.

Then, Canonical fumbled the ball again. They had been developing Unity so that they could achieve “convergence”: creating an operating system that would be useable on computers, phones, tablets, TVs and, for all I know, jetpacks, and the launch of the Ubuntu phone was crucial to this. Alas, it flopped, partly because Google and Apple were not likely to allow their cartel to be challenged, partly because the phone operating system was simply not ready when they released it, and partly because of Canonical’s hubris. I remember feeling quite angry about the way the phone was marketed. ‘Ubuntu insiders’, an elite clique of supporters, contributors and docile bloggers, got well publicised freebies, while the paying mugs were forced to hang on social media announcements to have a chance of buying one. At the time, I tried to get the tag #Ubuntuoutsiders going, but none of my 12 Twitter followers were interested, so it died a death.

Anyway, I did eventually get an Ubuntu phone, and it was a bit of a dog. The hardware was underpowered, and the OS lacked the very elements that would set it apart: the calendar, for instance, only had the option for local storage, or Google. For me and, I suspect, many people who use Linux, escaping Google’s creepy, coercive, bullying oversight is a major motive for the work it takes to remain an open-source software user. Assuming that everyone would have a Gmail address and would be happy to donate their personal information, creative endeavours and political interests to the monopolistic parasites of Mountain View, California, seemed a discordant clang.

In fact, Ubuntu Touch was a beautiful piece of work in many ways. A few years later, I bought my first Fairphone and loaded the system, now maintained by an heroic community of volunteers,6 onto it. It was, and remains, I should imagine, a distinctive, clever and attractive way to manage multiple functions on a small touchscreen device. It’s just too niche to be useful for everyday interaction. Its app store is tiny, and it hasn’t flown. Not all Canonical’s fault, but they didn’t do it justice.

Linux and Me: The Next Generation

At about this time, I made a mess of my commercially hosted OwnCloud setup, and became interested in self-hosting a cloud server. This is not a straightforward process, whatever the Nextcoud homepage 7 may say, and, for me, it represented the start of a multi-year struggle to get to grips with topics for which my intellect is woefully underpowered.

A cloud server consists of a machine running an operating system, on which a specialised web server program manages files in a database, making them available over the internet for the users to access, while securing them from internet users other than the permitted owners. There are a number of quite specialised areas of expertise within this melange, including database management, command line proficiency and networking skills.

When I started this process, I had none of these. Indeed, I still don’t, really. As a result of my clumsy endeavours, I do now have a little more than basic command line understanding, but I still have to do a websearch for any sort of database management, and am resigned to giving up a weekend to correcting even the most minor error message. As for networking, it remains a clouded mystery. I dogged forums, nagged my ISP and begged my domain hosts for information as I got my first experimental Nextcloud server set up, but, somehow, I managed it. For the hardware, I had used my mother-in-law’s abandoned Dell Latitude D430, a quixotic little laptop that was manufactured in 20078. The problem with that was that it has a hard drive like the ones used in ipods, and there wasn’t the space to upgrade it. Thus, I had the advantage of being able to use an online calendar, contacts manager and tasks manager, but I had to be very frugal with my file uploads, to avoid overwhelming it. Also, it ran an integrated chip, and that ran hot. I was never entirely sure it was safe to leave it running.

Eventually, though, I was able to afford a small, fanless computer, refurbished, from ebay. After that, I had to save up for a 1 TB SSD, and went through the process again. I had used Debian as the base operating system for the Dell setup, as the smaller it is, the better and, running ‘headless’, without a GUI, the specifics of the operating system are pretty unimportant, so long as it supports a software repository with the required packages for the task for which it is being used. Ubuntu is based on Debian, but is somewhat larger, even in server form, but I was persuaded to use it this time by the fact that most people on the Nextcloud forums used it.

However, even in the command-line-only, server edition, Ubuntu has, for some years now, been pushing their version of containerisation, called Snaps. Containerised apps are computer programs that have been bundled together with all their dependencies – the other programs and snippets of code that they require in order to work on a real computer. In Linux, traditionally, programs have remained focussed upon their own tasks. If a music player needs to use the sound card, for instance, it doesn’t include sound card management. Instead, when it is loaded into a repository, from which the users will download and install the music player software, its dependencies are listed. The user will get the software using a package manager: a piece of software that reads the dependencies, compares them to what is on the computer already and then adds any that are missing to the download of the software package.

Snaps make installing and maintaining a computer much easier, at least superficially. Unfortunately, they introduce their own set of problems. Unless you are a programmer, what you are given is what you get. Nextcloud, when I was trying to install it in 2019, was an example. It had the basic Nextcloud installation that would set up a database and the Nextcloud web server with one click. However, I never discovered how to link it to an SSL certificate: a fundamental security process without which a web server is so vulnerable as to be useless. In the end, I scrubbed the machine and started over again, and this time I didn’t hit the snap button, but dragged myself through the manual install process.

And, for nearly three years now, I have been able to keep my files on the little box on my desk. With very little maintenance, apart from the occasional upgrade, it has allowed me to not worry about losing data on my computers, as they are stored externally. A few years on, I became a little anxious about depending upon a self-maintained machine for all my data and bought a 10 TB external disk drive as a backup machine and that is an added level of security. I’m pretty happy.

I also set up a samba server, to store and share my media files and Nextcloud and email backups within the house. This was a simple enough task: at first, I used my Raspberry Pi with the external hard drive connected. It was a bit Heath Robinson, but it worked. However, the transfer rates, from the spinning disk hard drive to the computer processor via USB, were rather slow; though fine for music streaming and transfer, it was liable to stutter with decent quality video.

So, I started saving for enough SSD storage to hold all my music on an integrated system and bought a case last summer. It worked well enough, but the software I was using, Open Media Vault, had a major upgrade and the Pi version hadn’t caught up. On a routine update, it stalled and I panicked and shut it off, wrecking the operating system. This is not a complete disaster, as it’s not harmed the files, which I have backed up on the external drive anyway, but I haven’t been able to be arsed to reinstall it yet. I have an idea I’d like to learn how to use Docker9 – another containerisation system, rather more developed and useful than Snaps, but that is another major learning task, and I just haven’t got started.

Back To The Desktop

My experimentation with servers satisfied my computer curiosity for several years. I did play around a bit with desktop operating systems, but I stuck to safe choices: mostly stock Ubuntu, then the wonderfully stable and accessible Zorin OS10, then, for a while, on a whim, Lubuntu11.

Sometime in 2018, I’d been offered and had bought an old gaming machine. It’s a real beast, but wasn’t particularly useful to me. I didn’t have the desk space for another monitor and I was in the habit of using laptops most of the time, anyway. My Old desktop didn’t last all that long: I got about six years out of it, and I had a bit of a prejudice against desktops, as power-greedy, space-hungry white elephants. However, I did, eventually, find a use for the monster Asus.

I had always needed to maintain a Windows machine, for one, annoying purpose. Epub files are DRM protected and I read a lot. I still buy real books, but for my junk reading, science fiction and, as I get older, crime thrillers, I buy ebooks. To purchase a DRM protected epub, you must use a piece of software owned by the odious patent trolls Adobe: it’s called Adobe Digital Editions and Adobe don’t support Linux, just out of spite, I think, or because Microsoft pays them not to. So, I used to keep one laptop with Windows 7 installed, just to download my book purchases. As soon as I’d got them, I’d run them through Calibre and strip the DRM, and then load them on my Tolino, but to first buy them, I needed a Windows machine.

Starting up a Windows machine you don’t use very often takes a full morning. You will, inevitably, be stopped in your tracks by the infuriating Microsoft update process, which is designed, it seems, to divert you from whatever task you need a computer for. Its voice is that of the creepiest sort of teacher: moralistic and cautionary, with a vague hint of dark consequences if you don’t cater to his every perverted whim, articulated in the light, jocular bullying boss’s language of camaraderie and mutual purpose. I loathe Microsoft, not just on a practical level, but on a tonal, cultural level. It is deeply, instinctively fascistic, in a uniquely white, wealthy, passive-aggressive, American way. And that is why I have persisted, for so long, with Linux.

My father’s old laptop, vast and beautiful to look at, but with a processor just powerful enough to run a fridge if the door’s not opened too frequently, added to the pain. So, I hatched a plan to set up the gaming machine as a virtual host for Windows.

Virtualisation is a real computing marvel. It allows you to run a computer within a computer. So, on a Linux machine, you can set up another Linux machine, or a Windows machine, or even a Mac, if you don’t tell Apple’s lawyers, borrowing some of the host machine’s resources to do things you don’t want to do to the main machine. Its main use is as a way to manage complex networks: up until recently, it was the safest way to give large numbers of users access to a network while controlling their impact upon the network. It is also used to experiment with development and it is useful in education. Indeed, another reason I wanted a machine powerful enough to run as a virtual host was so I could complete a Linux Foundation course12, which involves a lot of trying things out in the command line. In this situation, when you’re presented with the “DO NOT PRESS THIS BUTTON” bit of code, it’s nice to be able to press it and see what it does, without having to constantly re-install my operating system13.

And it worked! I used VirtualBox14, bought an OEM Windows 10 licence from a cheapo online store and had Windows when I needed it, without sacrificing a machine to it. I completed my course and thought I was happy with my computer setups.

But then, a serpent began to eat at me.

The Lure of Computer Games

I realised, using the desktop, just how powerful it is, compared to the machines I’ve used up to now. That knowledge became, after a while, like a serpent, leading me towards the forbidden fruit of computing: games, weak sinner that I am.

Overall, I haven’t taken much interest in gaming, mainly because I think it is a poor substitute for books, but also because I’ve always thought the entry cost was absurd. Nevertheless, after I was made redundant in 2013, I bought a second-hand Playstation3, played five games (Bioshock15, Journey16, Mass Effect 1, 2 & 317), started a fifth (Bioshock __Infinite18), got bored, and gave it up as a bad job. I didn’t regret this little experiment: at the time, I needed a boost, and Journey, in particular, was a spectacular piece of art, which I was able to share with my wife and which has stayed with us as a treasured experience. All the same, gaming just didn’t really feel like being true to myself.

It’s a little like giving up smoking, though. So long as the cost of getting back into it is high, you can fight it, but if it’s made easy, it’s a problem. The gateway drug, for me, was a video extolling the virtues of Witcher 319, which I drifted onto on Youtube, and the audiobook of one of the short-story collections on which it is based being available on my library app20.

Witcher3 is what it is; I’m not going into it here. The books are good, though. I recommend them. What’s relevant is that the game was five years old by the time I decided I must play it, and I got it for a song on Gog21, which is an online game store, similar to Steam22, but with more of a commitment to open source or something. Then I tried to play it on my Virtual Windows machine and discovered that Virtual machines don’t use graphics cards.

Well, no: that’s not completely true. However, Virtualbox doesn’t support graphics cards, and the main competitor, VMWare, is commercial and the process for mounting a GPU is not available in the free version, and is really complex anyway23. In effect, though, it’s not a straightforward process, and unless your computer is very, very powerful, which the Leviathan was in its youth, but really isn’t now, it probably won’t be adequate for playing modern-ish computer games anyway. I can remember being really angry with myself when I discovered this, which might explain my bad decision making.

Remember what I said about Microsoft, above24. If you recall, I’m not a fan. I use Windows on my work laptop, of course. I work for a Council, and the subservience to Microsoft’s imperialism is total in such environments. We use Microsoft 365, rather than a proper office package, which is unbelievably stupid and means that the Council will never be able to escape Microsoft’s clutches25. For a Linux user, Windows is a continuous series of annoyances. It’s not because I’m not used to it: I am, like most wage slaves whose job has some clerical component, a moderately expert Windows user. It is the unnecessary complexity, the ‘guided’ processes, the ugliness, the distraction of the cluttered, intrusive, authoritarian medium. It takes creativity and introduces a slightly competitive, suburban American mundanity into every use. It interrupts to assert itself. It is needy.

All that being true, I still shamed myself. I reinstalled Windows as the base operating system on The Leviathan. This was about a year ago and, in that time, I have spent more hours than I want to admit playing, first, Myst26, then Warcraft II27 then Witcher328. I reached level 20 on Witcher3. No man in his fifties should be able to say that.

I was running it, though, with only a 128 GB SSD as storage, having cannibalised the larger 1 TB SSD for my Samba server, and, as Windows boxes tend to, it got filled up with stuff, without me adding much to it. In particular, it didn’t like the attempts by GOG to update Witcher, a vast program, leaving me looking at error messages which wouldn’t go away. At some point, this lack of utility began to feel like a sign.

I bought another 1 TB SSD, fully intending to reinstall Windows. Then, having installed Manjaro on my Thinkpads, I decided to see how it would run on The Leviathan.

This is where we came in.

Back to the Beginning

The weekend before last, I put Manjaro Plasma on The Leviathan. It ran like a bullet and looked even prettier than it does on the Thinkpads, but, for a non-programmer, it has some limitations. The worst of these is that it is based upon Arch, rather than Debian: it is an entirely different branch of Linux operating system to the Ubuntu family, for which a lot of Linux software is packaged. VirtualBox, for instance, does not have an Arch package that is easily installable on Manjaro. There are instructions for making it work on the forums, but they look pretty intimidating.

So, wanting to use Plasma, I tried KDE Neon, which is an Ubuntu distribution maintained by the KDE community. Alas, a piece of software I use regularly, Manuskript, doesn’t load in Neon. Neon is built on the latest long-term-support version of Ubuntu, and that has some quirk which prevents Manuskript starting up. No one has yet managed to fix it.

Finally, this weekend, I settled on Kubuntu. This is an ‘official flavour’ of Ubuntu, meaning it is supported by Canonical. It seemed perfect, but then…

Firefox on the newest versions of Ubuntu and its ‘flavours’ is a snap. Even if you try to install it via the command line, using the apt-get command, it converts the command to a snap install. I really do not like snaps. For a browser, they can be a real nuisance, as their updates happen in the background and lead to random restarts of the application. If you’re in the middle of an online form, or a TV programme, you lose your data, unless you save manically.

And they don’t look as good. I like a rather beautiful set of icons called Buuf, originally designed by a young artist called Mattahan, way back before I was using Linux. I’ve used them from my earliest expriments with Ubuntu29 A very active, responsive and kind volunteer called Phob1an30 maintains a set of them for Plasma31 and they look pretty amazing.

Snaps, however, don’t conform to the GTK theming: they have their own icons included and that’s that.

There is, of course, a way around it. One of the real strengths of Linux is that you can change everything, if you have the skill. If you don’t, people with the skill will share their knowledge. So I have a new repository (program source) added, maintained by the Mozilla Foundation, who make Firefox, and Firefox integrates prettily into my desktop while being properly and safely updated.

For, me, with sixteen or so years’ experience of playing with Linux, that process was a bit of a challenge, taking several hours to sort out properly, but for a new user, fed up with being bossed around by Windows, the sense that Canonical are trying to limit your choices on Ubuntu would be an off-putting welcome. I have a lot to thank Canonical for: they took the community endeavour, Linux/GNU, and made it simpler to get into and to use for all the things that computing makes better or even makes possible. However, I think they do have a tendency to try to compete with Apple in making a consumer product that requires no engagement and allows not variation. They should not be despised: they have created server software that runs over 35% of the internet, second only to Debian in the field32. And, unlike Windows and Apple, they have done that while remaining a company with a modest income, that doesn’t exploit oppressed people in their supply lines or try to trap people, schools or other public bodies into holding their data on systems from which they can’t export (Microsoft)33.

It’s just that Ubuntu has begun to feel, again, that it knows better what’s good for us than we do. Its use of a strict, difficult-to-modify version of the Gnome desktop system and its push to make snaps the standard way of installing applications, has the odour of Apple, late Steve Jobs era, with just a hint of recent Microsoft preacher-knows-best tonality34.

Or, maybe the problem is with me. After all, it’s been a long time since I’ve paid Canonical for a copy of Ubuntu, although I do make payments to open-source software projects – my last donation was to Thunderbird. And, if I’m really so fed up with Ubuntu, maybe I should move to Arch35, on which Manjaro is based, or to Debian36, Ubuntu’s fully-open-source big sibling, or Fedora37, the independent, community arm of RedHat38. It’ll take some work to change from what I’m used to, but it might be fun.

However, for now, I’ve got a lovely looking desktop on which I am happy to do my writing, and I have to put up with feeling slightly left behind.

It’s still infinitely better than Windows.

Infinitely.

  1. https://antixlinux.com/[]
  2. https://xubuntu.org/[]
  3. https://manjaro.org/download/[]
  4. https://www.rockbox.org/[]
  5. https://www.bodhilinux.com/[]
  6. https://ubports.com/[]
  7. https://nextcloud.com/[]
  8. https://en.wikipedia.org/wiki/Dell_Latitude#Dell_Latitude_D420/D430[]
  9. https://www.docker.com/[]
  10. https://zorin.com/os/[]
  11. https://lubuntu.net/downloads/[]
  12. https://training.linuxfoundation.org/training/introduction-to-linux/[]
  13. https://phoenixnap.com/kb/dangerous-linux-terminal-commands[]
  14. https://www.virtualbox.org/[]
  15. https://en.wikipedia.org/wiki/BioShock[]
  16. https://en.wikipedia.org/wiki/Journey_(2012_video_game)[]
  17. https://en.wikipedia.org/wiki/Mass_Effect[]
  18. https://en.wikipedia.org/wiki/BioShock_Infinite[]
  19. https://en.wikipedia.org/wiki/The_Witcher_3%3A_Wild_Hunt[]
  20. Misted Spires, Silver Cobwebs And A Joyful Dog[]
  21. https://www.gog.com/[]
  22. https://store.steampowered.com/[]
  23. https://superuser.com/questions/1675735/is-there-a-way-to-share-a-gpu-with-a-guest-vm-in-the-same-way-we-can-share-a-cpu[]
  24. #boo-to-Microsoft[]
  25. There’s a discussion of the point in this podcast. I recommend listening to the whole thing if you have time, but I’ve specifically bookmarked the pertinent passage []
  26. https://en.wikipedia.org/wiki/Myst[]
  27. “Zog-zog!” https://en.wikipedia.org/wiki/Warcraft_II%3A_Tides_of_Darkness[]
  28. https://en.wikipedia.org/wiki/The_Witcher_3%3A_Wild_Hunt[]
  29. https://danceswithcats.uk/wp-content/uploads/2021/12/Screenshot-with-ipod.png[]
  30. https://store.kde.org/u/phob1an[]
  31. https://store.kde.org/p/1305826/[]
  32. https://writersblocklive.com/blog/linux-statistics/[]
  33. https://edps.europa.eu/sites/edp/files/publication/20-07-02_edps_euis_microsoft_contract_investigation_en.html[]
  34. This article is actually pretty sympathetic to that policy. There’s a broader discussion of app delivery, related to snaps, in this article.[]
  35. https://archlinux.org/[]
  36. https://www.debian.org/[]
  37. https://getfedora.org/[]
  38. https://www.redhat.com/en[]

Responses

  1. A Spanner In The Works – Danceswithcats

    […] Linux: A Love/Hate Story[↩] […]

  2. The Times They Are A-Changing. – Danceswithcats

    […] Linux: A Love/Hate Story[↩] […]

Leave a Reply