The Year of the Linux Desktop... For Me Anyway (Part 2): Friendship ended with CachyOS
by ben_h
Editor's note: It's extremely funny to me that I finally got this thing ready to go on the day that Valve announced what is essentially a consumer Linux Desktop PC. Next year might actually be the year of the Linux desktop.
Aaaaand we're back. I'm now almost three months into using Linux exclusively on my desktop computer so I figured it's time to give an update on how it's going.
The shortest summary is that I don't really notice Linux now. Only when I'm installing things or doing command-line stuff does it feel any different than Windows did. Because of the flexibility of Linux, I've been able to essentially go back to my old pre-Windows 11 desktop layout and workflow. It's really nice. I haven't missed Windows once the entire time.
Beyond that, pretty much every wrinkle I had with Linux has now been ironed out and it for the most part Just Works. I did end up switching away from using CachyOS and am currently testing out Bazzite instead since I was running into a few annoyances with CachyOS and wanted to see if Bazzite had improved. I'll get into it more later but the short answer is yes, it has improved. Substantially so.
I had written some other stuff but threw it all away after installing Bazzite because I'd rather talk about that.
But first, some general thoughts on Linux.
It's not that I'm becoming a Linux Evangelist, but it's more like using other OSes makes it stick out that Windows now sucks so much that any other OS seems like a huge upgrade by comparison
I was having a hard time putting into words the feeling I've had about using Linux compared to my three years with Windows 11, but luckily on a recent Tech Pod with Brad Shoemaker and Will Smith, Will, who is also trying out Linux, put it perfectly during a bit where they both started ranting about Windows:
I've reached the point with [using] Linux... on the laptop that when I'm using my Windows machine, it feels like I'm going back in time.
In an extremely bizarre way, current Linux, especially with the Windows-like KDE Plasma desktop environment, feels like what a successor OS to Windows 7 or early Windows 10 should have been. In the early days of Windows 10, right after their "Windows <3 Linux" initiative started that launched the Windows Subsystem for Linux (WSL) but before Windows 10 started to get crammed with crap in feature updates, it basically felt like a combination of Windows 7 and with all of the UNIX tools I used on my Mac and with Linux. It was a really slick operating system to use and was good enough that for a couple years, I stopped dual-booting. Windows 10 back then was light on resources (Windows 10 had to be lighter since it supported all the same PCs as Windows 7), highly customizable, and felt like a huge step forward.
Unfortunately, that was the last time Windows felt like it was making forward progress. Since then it's been constant regression. I could handle it with Windows 10 because it simply became a game of whack-a-mole removing all the new crap they were adding and at least the bones of the OS were still there.
That hasn't been the case in my experience of three years with Windows 11. Even simple things like moving the taskbar location were removed (I like having mine at the top since I also use Macs and like having the clock in the top right corner) and the only options to fix this outside of third party software involve using PowerShell or registry editing and accessing old, defunct functionality to trick the OS into moving the bar. Ungrouping separate windows of the same applications on the taskbar had also been removed even though that was an option since grouping separate windows of an application into a single icon became a thing in Windows 7. Same with showing text labels for applications on the taskbar. I only recently found out that these two options were finally added back in Windows 11 24H2, which my PC didn't get until a few months before I moved over to Linux (and I missed that they were added at all since all Microsoft advertised for 24H2 was Copilot garbage). It made zero sense for Windows 11 not to have these kinds of options from the start, especially since they were still technically built into the OS (you could access them with registry edits), yet it took almost three years for Microsoft to allow them to be used again.
Weird that a lot of our complaints seem to be Windows-related lately. I fucking hate Windows taking away features like Windows 11 took away like a half dozen little UI features that I relied on
Brad in that same Techpod segment
Yup. Pretty much that. There's no actual reason for them to keep removing functionality, especially since a lot of it is technically still in the OS. Brad's complaints were mostly about virtual desktops and Microsoft destroying how they've worked since Windows 10 was released. My issues are completely different. It seems like everyone who's some type of technical user has a list of Windows 11 issues relating to Microsoft needlessly changing things in the OS or, in Brad's case, seemingly breaking established functionality for no apparent reason.
By comparison, modern Linux is extremely fast and light. Nothing in it will change unless you want it to. It has a bit of a learning curve (but nothing compared to how it used to be) but once you get past that it becomes a lot less of a pain and I'd argue easier to use than modern Windows. You don't have to piss around with stupid registry bullshit or their arcane file permissions system, the OS doesn't treat you like a child, and it's a lot easier to get things done.
My Biggest Takeaway so Far
The most notable thing I've felt in the last several months of tinkering is that it's nice to have fun experimenting with my computer again. Modern Windows and MacOS are both becoming increasingly restrictive in what you can do. Gone are the days where you could install bootleg or limited edition colour schemes to Windows (shoutout to Royale Noir and Zune themes back in the Windows XP days). MacOS generally hasn't been quite as bad in terms of restrictiveness but it's starting to get there, especially in the new version of MacOS (which sucks, but not because of the glass effect that all the tech pundits were talking about. I don't care about the glass effect. A lot of their app redesigns are really bad and a big step back in terms of usability, which is surprising honestly since usually I can see at least see what they're going for. Not so now. It's a lot of form over function. The Music app sucks now). It's nice to be able to do literally whatever you want without having to work around a bunch of deliberately placed obstacles. Can you accidentally shoot yourself in the foot and screw things up? Of course, but that's part of the fun.
The perfect example is messing around with tiling window managers. I'd tried them out in the past in the form of programs for Windows or MacOS, but they were always somewhat compromised feeling and didn't work as you'd expect. With Linux, you can go all-in on using one and trying it out. They're really weird to use and if you don't like it, you can switch away easily. I've been meaning to test out the thing Will Smith from the Tech Pod is using, niri, which is a scrolling tiling window manager. It's completely wild and unlike anything I've ever seen before. There's a version of it for KDE called Karousel but it's definitely beta software as it doesn't support multiple monitors and lacks functionality but even with those limitations I can see why this new window management style has potential. It's cool to be able to try new things!
BAH GAWD That's Bazzite's Music!
In my last blog I was fairly harsh on Bazzite. I had used it for several weeks last year and to put it simply it was not a viable product for normal people to use. I ran into a bunch of issues that were showstoppers at times even for someone more comfortable with Linux. At the time, Atomic/immutable versions of Linux were quite new and very little had been figured out so for users, setting up and doing various things in immutable Linux was a huge pain. Several main pieces of software I frequently use didn't work well and I had pretty bad driver issues that made playing a lot of my games impossible.
That's not the case anymore. I was pretty blown away by how much better Bazzite has become in the last year and a bit. Every concern I had and every issue I ran into in the past has been addressed. I had a laundry list of problems with it last year that drove me away from it and all of them except one minor one have been fixed (the minor one being that the installer still sucks. It's way too easy to accidentally skip creating a user account. But this is a Fedora issue, not a Bazzite issue since Bazzite uses Fedora's installer).
I guess this will serve as a basic review of Bazzite since I've been using it for a bit now. As an aside, I will say that distro-hopping is really easy these days. I just copied my home folder to a secondary drive, exported all my browser data, noted all of my software to reinstall, installed Bazzite onto my main drive then did the process in reverse, copying all my stuff back into the new install. All my config files still worked as is (for my fish shell and stuff), my browser was setup up identically to how it was previously, and in an hour I had all my basic software reinstalled again. In total the whole move took a small part of a single evening.
The Basic Bazzite User Experience
Bazzite now includes a bunch of useful software by default, installs Steam automatically, and has a great software store to get other desktop software from. My controllers worked with no setup required outside of pairing them. Since they handle installing Steam for you, you don't have to worry about the various flatpak file permissions issues you can sometimes run into. This meant that I could add my Steam libraries off my secondary drives to it and be up and running immediately. Within about 15 minutes of finishing the OS install I was already running and playing my previously downloaded copy of Persona 5 with a controller. Like on CachyOS, my audio interface and various other USB hardware things all worked plug-and-play. No tinkering or seeking out drivers was required. All I had to do was set my audio output source, rearrange monitor orientation in the display settings, turn off mouse acceleration, and I was up and running. There was a bunch of tinkering I wanted to do, but that's all optional. Technically, I was completely ready to go in under a half hour from install finishing.
All of the disk mounting stuff I wrote about in my last blog was a non-issue here. Bazzite includes good auto-mounting software (more on that later) and defaults to the user-friendly setting of having all of your drives mount automatically but then gives you the option to turn it off should you want to. That makes so, so, so, so much more sense compared to what CachyOS, SteamOS, and others do. This is a wonderful thing and fixed one of the biggest pain points I had with CachyOS early on.
Another issue I had last year when using Bazzite was in relation to the OS having broken Nvidia and other drivers. Those problems are gone now. I've tested probably two dozen games so far, including some that didn't work well for me last year, and everything has worked flawlessly. Other than needing to install Proton-GE using the ProtonPlus app included with Bazzite for one game, I didn't need to do anything myself. It all mostly just worked. The other big issue I had was around Sunshine streaming, since I use my PC as a Sunshine server to stream games to other devices in my house. Sunshine didn't really work last year in part because of Nvidia's drivers but also because all of the commonly available versions of it didn't know how to handle being on Bazzite since it was seemingly locked out of accessing certain files that listed hardware configurations. The Bazzite folks themselves have stepped in and provided a means of installing Sunshine themselves since it's a pain to do manually. I'll talk about that a bit more in the command line section but for the software itself Sunshine now works just as well on Bazzite as it did on Windows, which is not something I could say about the CachyOS-specific version, which was really buggy and weird (and a big part of why I abandoned CachyOS). I tested it for several hours and didn't have any of the weird hitches or graphical glitches I saw in the CachyOS-specific version.
They include an app/software store called Bazaar that is very good. Importantly, it has curated sections of it that from what I saw include a lot of actually useful and good software featured. I wrote most of this blog before I switched to Bazzite and I was pleasantly surprised to see most of the software I wrote about listed in those sections as suggested apps. That saves others all of the experimenting I had to do while finding this stuff. Of course, there's tons more software than what's in the curated section, but it's good of them to highlight all of the polished, better implemented things. By contrast, the KDE Discover Store shows you absolutely everything, for better and for worse. Bazaar's layout is much nicer and I think overall it's a better experience to use.
Beyond that, there's not a whole ton more to say. The desktop is standard KDE Plasma and can be configured the same as on any other distro. The general takeaway is that Bazzite is massively more polished than CachyOS and they've made a lot of decisions that are hugely beneficial to the user, especially those new to Linux. They've done meaningful work to make it user-friendly and taken the time to think about the defaults. It's good enough that I'd be comfortable installing it on a PC for my dad now for him to use for web browsing and stuff. It's that solid. Congrats to them for doing such a good job fixing up the OS the last year or so.
Doing More Advanced Stuff in Bazzite
Using Bazzite in the terminal context used to be a massive pain. Out of the box, it had almost nothing useful installed and you were expected to do absolutely everything using a thing called a Toolbx/toolbox, which is a Fedora tool for creating containerized terminal workspaces that was, let's say, not very well documented at the time. You still have to do this because of the OS being immutable, meaning that you cannot add, remove, or change any files in a bunch of directories, but it's very different now. At the time it just wasn't ready for prime time.
Everything terminal related in immutable Linux is way better now. Bazzite includes a helper tool called ujust that allows you to do a bunch of things (it was there last year too, but again everything was some degree of broken at the time). One of the key things that it does is allow you to install what they call "bazzite-cli" which enables some functionality and installs a package of extremely useful command line tools (one of them, eza, which is a fancy newer version of the ls command, is essential). This seems minor but is huge. In effect, it means that, with all of the bazzite-cli tools and other now-included tools, you generally will have most things you need for basic Linux system tinkering and administration. Outside of this, with ujust you can also install a bunch things that would be otherwise very tricky to install on immutable Linux. For example, I used it to install Sunshine for Sunshine/Moonlight streaming. It took about 30 seconds and the configuration they included with Sunshine works miles better than the bespoke CachyOS-specific version that was recommended to use on CachyOS. Same with virtualization software and other things like that. ujust is there to help handle anything complex you need to do with the OS since it being immutable makes it tough otherwise. It's great.
If you do want to do more advanced terminal stuff, they also now include a tool called Distrobox, which is a much more user-friendly and better version of toolbox, that allows you to create containerized Linux environments to do work in so you can install and tinker with Linux packages to your heart's content without ever doing anything to the main OS. The key difference with Distrobox is that it can create a container of any version of Linux. Why is this useful? It's simple: you are no longer at the mercy of one package manager or system software configuration.
If you remember, in my old blog I mentioned most online Linux guides and documentation were about Ubuntu because it gets most of the attention from developers and has a huge user base. Well, with Distrobox now you can use containerized Ubuntu to do all of your terminal work and you now have Ubuntu's APT package manager, which is easy to use and has a massive amount of stuff in it, easily at your disposal. This is a huge boon for anyone who's run into the common issue where they find software that's only on APT and not pacman, dnf, or other package managers included with non-Ubuntu/Debian distributions of Linux. If you are coming from Windows and are familiar with WSL2, think of using Distrobox as being similar in practice to how WSL2 handled Linux, except better because it feels like way less of a kludge.
Another bonus of Distrobox is if you screw something up badly, you can always delete the Linux container and start fresh without it ever impacting your files. You can also keep multiple containers and switch between them as needed. So say you want one container for working on software and another for something completely different. You can do that and hop between the containers at will. It's super slick.
Outside of that stuff I haven't really run into any issues so far. I've managed to get a bunch of common things like Docker, python Anaconda, and the like running without issue and as of now don't foresee myself having any further issues with the terminal. Setting up virtual machines seemed like it might be a bit of a pain at first (searches I did indicated a lot of virtualization software is broken on immutable Linux still) but a combination of using the ujust command to set up the backend of virtualization, and then using a GUI tool I found called Virtual Machine Manager to set up the actual machines, I've had VMs up and running with little trouble. When I say they fixed all of the problems I had I mean it.
Anyhow, now back to our previously scheduled Linux programming.
Linux is incredibly resource efficient and quick. It's hard to explain just how ridiculously light and fast it is to run.
A thing I've noticed with Windows and recent MacOS is that they both really start to feel slow after a bit and under certain conditions. The last few months of my Windows install, I was having a lot of bizarre problems with File Explorer feeling slow and taking a weirdly long time to load folders, which was odd given I was using almost entirely fast NVME storage at the time. Beyond that, the OS just felt slow at times, especially when navigating things like Settings. Even on boot, it was starting to take 30 seconds or so for the OS to be responsive when I logged in. It didn't make any sense given my PC is relatively new, had a newish OS install, and the OS was installed on a fast NVME SSD.
This isn't exclusive to Windows. MacOS has, over the last 5-8 years or so, started really hogging RAM and relying heavily on paging memory to the SSD. This is generally fine if you are only lightly utilizing paging/virtual memory, say with a bunch of browser tabs. The problem is the second you open something heavy like XCode, the "memory pressure" graph spikes into yellow and it starts paging a ton, which really hurts system performance. It makes the OS feel awful to use. This would be fine if the OS was using paging was a last resort like it used to be on MacOS, but nowadays the OS itself will happily gobble up half of the now base-level 16GB of RAM for itself, and once you get past about 13GB of RAM used it starts aggressively paging, meaning that if you so much as have a handful of browser tabs, one moderately demanding application (say an IDE, a DAW, or Final Cut-kinda thing), and Spotify open, you're already on the edge of the OS starting to operate like it's running through molasses.
I haven't run into any of this type of thing on Linux despite deliberately doing everything I can to clog things up. In general, the OS barely uses any RAM. It's wild. On boot, if I shut off all my auto-start applications, Linux will idle at like three gigs of RAM used. With a browser open running 1080p60 Twitch along with a bunch of tabs, Steam, and a bunch of other things running in the background, which is my baseline setup, it sits at around 6-7 GB used out of 32. I've never managed to pass 20 GB used, even running very heavy, RAM-intensive games. When I tested Baldur's Gate 3, it compiled shaders which used nearly 100% of every CPU thread I have, and even then the OS was just as responsive as if the CPU was idling. It's wild. The OS is always fast, snappy, and responsive, even when under a heavy load.
On the application side of things, everything's so fast. Even Firefox with all of the cached tabs loads almost instantly when you start it. The file browser included with KDE, Dolphin, is extremely fast to use and seems limited in performance entirely by the speed of your storage drives. With an NVME drive, you never have to wait for it to load a folder. Thumbnails and even video previews load instantly. It's so nice.
I cannot emphasize this enough: You can do the dumbest (positive) things possible with your Linux desktop. It'll let you do whatever you want in terms of customization
For a brief period I thought it'd be funny to make my desktop look like a stereotypical hacker desktop complete with green text and blacked out UI elements. So I did it. I created a custom KDE theme, which was way easier than I thought. To keep things consistent, I got a mod for Steam that turns it into a GNOME-style app that you can use custom CSS on. So even my Steam matched the dumb theme. Later, when I got bored, I instead made my desktop look like a 90s Silicon Graphics workstation since someone decided to make a theme for KDE that looks like one of those things. I also set my cursor to be Hatsune Miku as a joke and kinda forgot to switch it back. Between the Miku cursor and me using on a bad (but also good?!?) knockoff of the Windows 7 theme for a while, my computer was probably pretty confusing to look at from the outside. I've since settled on using a theme called Reactionary, which is based on ReactOS, which was a reverse engineered version of old Windows. I made sure to do the extra step of installing an icon set that includes mid-00s Windows and Linux icons for everything. This has really tied things together. Most of the icons on mid-00s looking skeuomorphic designs that remind me of the old days.
As an aside: you know what? Skeuomorphism: better than plain flat icons that are all similar looking. Weird how making things easy to differentiate and identify based on real life objects with might work better than a bunch of same-y white flat icons. Yes, kids had to know what a floppy disk was back then to know how to save things, but nowadays kids don't know what floppies are and they don't know how to save files to directories so really we've just gone backwards.
The other, most cursed thing that's happened is now that I'm several months into having wobbly window physics turned on (so when I move a window it slightly wiggles based on the speed I move the window at) I'm so used to it that it weirds me out when my windows on my Mac don't do it.
I've also been trying out other desktop environments since you can kinda just do that if you want. I installed Cinnamon, Gnome, and Sway. I haven't tried Sway yet but Cinnamon is still nice. Gnome seems like it'd be a lot better on a laptop than a desktop. I haven't tried Sway yet but I'm curious how it works with multiple monitors since it's one of those tiling desktop setups. For now though, I'm sticking with KDE. It's convenient, easy to customize, and tends to work exactly how I want.
The importance of having a GUI App Store and why I think it's nuts that CachyOS doesn't have one installed by default
I brought this topic up in my last blog but that PCWorld Linux podcast I mentioned before has reinforced my stance on this topic. Software in general lives and dies by how well done the default settings/applications/whatever else are chosen. Most people use the defaults, and those same people likely won't find alternatives if they aren't aware of them. A clear-cut example of this is Will Smith's issues he's run into with CachyOS. He's run into several problems that sent him down rabbit holes he didn't need to go down had CachyOS done one thing.
That thing? Including KDE's Discover Store, which is an app store similar in function to the Mac App Store or Windows Store, with the KDE version of the OS by default instead of as an easily missable optional install. CachyOS defaults to using KDE as the desktop environment, and includes various other KDE software like Kate and Konsole when you choose to install KDE with the OS, but for whatever reason doesn't include KDE's Discover Store, which is used to easily manage flatpak, proprietary, and OS-specific software. CachyOS's decision not to include the piece of software that makes installing common software like Dropbox or Spotify easy means that new CachyOS users (like Will or even me) are instead going to be sent down roads they didn't need to be sent down when installing common software they need. So many headaches could be avoided if they just included a GUI app store, but they didn't. They're the only more popular distro I've run into that has doesn't have a store. All of the Ubuntu and Fedora derivatives I've tested have some form of GUI app store and even Bazzite has the Bazaar store. There's not any reasonable argument I can think of against including one of these stores. It's quite silly.
On the most recent Dual-boot Diaries, Will ran into an issue where he ran a full update to CachyOS from the command line that ended up deleting a version of QT (which is a tool used for making and running software UIs) used by several things that in effect bricked his PC since QT is used by important stuff. I almost had the same thing happen but because I was managing my QT install through the Discover store, it detected that the update process would have deleted a version of QT that was in use and prevented me from doing the update until that was fixed.
So it's not just that the Discover Store is beginner-friendly, but also that it provides an extra layer of protection against you breaking your PC. SteamOS uses it for all system updates when in desktop mode and I'm starting to see why.
I made an unregistered offline Windows 10 VM for if I needed Windows for anything specific that wouldn't work on Linux. I've only used it once in four months
When I first set up Linux, as a precaution I created a Windows 10 VM in case there was anything I needed to use that wouldn't work on Linux. I haven't booted it in several months now and only really needed it for one thing.
That thing? The most important thing of all: Patching English language translation into a Japanese Dreamcast Evangelion typing game that was one of the few games that doesn't have support for the commonly used Dreamcast game patcher. Every other sketchy or hyper-esoteric piece of Windows software I've tried using, be it PS3 game decryption software, PS2 ESR patching software, and all kinds of other weird things, has worked flawlessly using either using Wine or has a native Linux version available.
The reason I needed Windows was because this patch required using an extremely old and almost never used method of interacting with batch scripts. If you didn't know (I had totally forgot), you can drag a file/folder onto a batch file and the BAT will treat it as the input. In 25+ years of using Windows, I'd run into this specific interaction a few times, mostly back in the old days of Windows XP-era PC game piracy when I was 10, bored, and wanted to see if games would run on my PC before I bought them. This didn't seem to work on Linux and no amount of tinkering with adding inputs on the command line would get the script to work correctly. So I gave up and used that VM. But that's literally it. I haven't even bothered getting the VM working again since moving to Bazzite.
Finally, you can easily use a PS3 controller to play all those games that use pressure-sensitive buttons that you know and love
I had mentioned last blog that it was nice that my DualShock 4 controllers worked perfectly on Linux after years of having to rely on third party software or, more recently, Steam Input just to get them to work at all on Windows. I was pleasantly surprised but chalked it up to being some third-party Linux driver that allowed the controllers to work.
Recently, when Jeff Gerstmann celebrated his 50th birthday by playing 4 hours of Haze for the PS3, he went off on a tangent about how shitty the DualShock 3 was, which made me dig my DualShock 3 out of the drawer to try out. After marvelling at how light the thing was and how terrible the triggers were, I decided to keep using it for a few days. When I went to play Katamari Damacy in PCSX2, I had input issues. For some reason, the DS3 face buttons weren't being picked up. So I told it to auto-map the controls and discovered that when PCSX2 did the auto-mapping, all of the face buttons on the DS3 were set to be pressure-sensitive. I was surprised to say the least, so I fired up Gran Turismo 3 and sure enough, the buttons worked as expected.
So then I wanted to know why. Why did all of the Playstation controllers work so well on Linux when they didn't really function on Windows at all? The answer was surprising. Apparently Sony themselves contributed drivers to the Linux kernel. Everything suddenly made perfect sense. As a person who strongly prefers the DualShock layout, it has been really refreshing to have my controllers work perfectly.
This type of thing is apparently quite common in Linux. Hardware manufacturers will want their stuff to work properly, and because of the open nature of Linux they can just contribute OS-level drivers themselves without it being a big hassle like in Windows (this also applies to things like modern CPUs with more complex designs like the recent P-core/E-core, 3D cache, or disaggregated Intel and AMD chips. To add CPU task scheduler support for new CPU designs to Windows takes a long time and has to go through Microsoft's approval. On Linux, the hardware maker adds the chip support and CPU scheduler tweaks to the kernel themselves, which is why the last couple of generations of Intel and AMD chips have worked much better with Linux than Windows at first in some cases. It's a whole thing and a separate topic but is something interesting.
Anyhow, that's about enough of that. Now for the next section of this thing.
Useful Open Source Software I've been using since knowing things exist in the first place is half 98% of the battle with Linux
dolphin-extra shouldn't be extra since so many of the things included in it are essential
This one is genuinely kinda frustrating. Last blog I wrote about how setting up auto-mounting on Linux can be a crapshoot since it's not consistent across distros or desktop environments unless you do it yourself manually. In KDE, by default, it's set such that you have to manually mount drives every time you fire up your PC. Same with other similar functionality like mounting ISOs. It is all a pain to do. When I used to use Linux back in the day, auto-mounting and the like was usually enabled by default and it was a fairly simple process.
Well, it turns out if you install the extra tools for the Dolphin file browser (which is KDE's default file browser), you get all of that functionality added and turned on by default. Auto-mounting drives? Trivially easy. Internal drives are mounted by default and if you mount an external drive manually once and it'll auto-mount every time you boot your PC without fail. Want to mount/unmount an ISO? With dolphin-extra installed, you right click the ISO and magically there's a mount option there and it works exactly as you'd expect. dolphin-extra also includes more powerful file search capabilities that I've ended up using a few times.
My suspicion is that they included this in Bazzite because Dolphin has all of this functionality in it on the OS. Mounting ISOs is there as is similar auto-mounting behaviour. Why this wasn't included in CachyOS is anybody's guess, but that's also kind of a theme with CachyOS to be honest.
Haruna rules. Use Haruna
Why would I talk about a different media player when VLC is right there and supports everything?
To put it plainly, Haruna is a much better user experience to actually use. I ended up testing a bunch of different video players before going back to using Haruna.
What makes Haruna good? Two things. First, it automatically starts up subtitles if it finds a subtitle file in your video's directory, which is wonderful for anime and stuff like that (also Haruna's subtitle system is much less jank than VLC's). Secondly, Haruna doesn't have a library or playlist system. Instead, when you open a video, Haruna will look in the directory for other videos and automatically create a playlist for you, meaning to open a series in Haruna all you need to do is double click the first video in the folder in your file browser and Haruna will handle the rest.
The telling thing about Haruna for me is that I wish I could have it on my Mac too. Haruna is so convenient that it makes every other video player I've used seem bad by comparison. The default QuickTime Player included with MacOS is garbage but even all of the third-party Mac options I've tried, some of which were demos of paid products, pale in comparison to Haruna. Haruna may not have the utility of VLC, but by instead focusing on polishing up the most common use-cases for video players, they've built a tool that's way more useful for most people.
For the two people wondering "But what about mpv?", Haruna is built on top of mpv. It's basically a front end for mpv to make it more useful for general use. I use mpv on my Mac and it's wonderful too. If you're using Gnome, there is also a Gnome equivalent of Haruna called Celluloid that's pretty good too.
Gear Lever is a great helper for using AppImages
AppImages, which are portable Linux applications that work similarly to portable Windows apps in that they are entirely self-contained and can kinda run on anything from any directory, are super commonly used in Linux. Adding AppImages to your start menu so they can easily be started or searched manually can be annoying. Gear Lever exists to handle this for you. Once Gear Lever is installed, it sets itself as the default application for opening AppImage files. It will then ask you if you want to add the AppImage to the start menu and if you say yes, it does it. From there, your AppImages will work identically to any other bit of software you've installed. There's other features in it for managing updates and stuff but otherwise that's kinda it. It's a tool designed to make a super common task a bit easier.
Syncthing is basically LAN Dropbox and is super duper useful
I like to have a lot of my documents available on any machine in my house. I used to Dropbox for this for a long time but it's kinda overkill for what I want to use it for. This is where Syncthing comes in. Syncthing lets you set up easy automatically synced shared directories over your local network without having to set up a dedicated server of any type (a NAS or a SMB share or whatever). If you don't understand what this means, you will when I tell you what I use it for and you'll figure it out from context.
I mostly use Syncthing to sync emulator save files/virtual memory cards between my desktop and my Steam Deck. This means I can play a game on my PC and then pick it up later on my Steam Deck and can rely on having that same save file available for both. For Steam Deck there's a Decky tool available that allows you to run Syncthing while in gaming mode that is required for this to work but it's pretty straightforward to set up.
With my Mac laptop and Linux desktop I use Syncthing to keep all of my other files synced up like, say, the text file the rough draft of this blog is in.
btop is super cool if you want to keep an eye on PC diagnostics
When you first learn to use the Linux terminal, or at least when I did in school, one of the more essential commands you learn about is the top command, which shows you a command-line version of something like Windows Task Manager. It shows you what processes are running along with their process IDs (PIDs) so you can kill/stop them if you want. top itself isn't that informative beyond processes and memory usage though and once you learn the ps and grep commands to find PIDs, top becomes redundant since it is a much slower way of finding PIDs to kill.
btop is a massively extended version of top that rules so much. It has all of the info of top, but also all kinds of other things. You can get CPU and GPU temperatures, extremely detailed memory and disk usage metrics, network usage, and various other things all on one screen. It's also highly customizable and can be set to log information if you want to do benchmarks or whatever. I use it to monitor my PC while playing games. It's great.
CoolerControl gives you a fancy GUI readout of all of your PC temps, fan speeds, and voltages. It also gives you Fan Control-like control over your fan curves
In Windows, I had to use a particular fan curve with my RTX 3070 that caused it to be a lot quieter because by default, it would turn off fans when the GPU wasn't in use but Windows would constantly trigger just enough GPU usage to cause my fans to spin up for a fraction of a second. This meant that my GPU was clicking a bunch as the fans turned on and off frequently. To get around this I used a fan curve that idled the fans at a super low RPM rather than turning them off. This worked wonderfully.
When I moved over to Linux I was worried the same clicky behaviour would happen so I looked into ways of customizing fan curves within Linux. Everyone pointed to this CoolerControl app. It's super slick. It does all of the fancy fan curve stuff you'd want but also just works great as a GPU-Z or CPU-Z style dashboard to temperatures, voltages, power usage, and fan speeds. I haven't actually ended up using the fan curve I wanted (I got it working but then didn't leave it enabled) because it turns out Linux barely touches the GPU when just in the desktop and the GPU fans just stay off unless I'm playing a game, meaning that fan clicking behaviour I had run into in Windows hasn't really happened, but it's nice that the option's there should I need it.
Note: If you want to use CoolerControl in Bazzite, you need to use ujust to install it since it has to be installed a certain way. Luckily they will handle it all for you if you use the ujust command.
xfburn is a drop-in replacement for imgburn on Windows
Are you the type of person that wants to burn DVDs of FreeDVDBoot-injected ESR-patched PS2 ISOs so you can easily play Japanese train games in your unmodded North American region PS2 create burned CDs of legally acquired music? Did you use imgburn on Windows to do so? Well, xfburn is basically a Linux clone of imgburn that works nearly identically. I don't have much to say about it. It just works. It's much simpler and better than the commonly recommended Brasero tool that is commonly used for this task on Linux.
Sunshine actually works again and is now decent on Linux
I'm a big Moonlight and Sunshine (which are the client and server for local video streaming from one device to another) user since I use it a lot to stream games from my PC to my Steam Deck, and one of the things that stopped me from moving over to Linux last year was the fact that Sunshine was super duper duper duper broken for much of the year. It wasn't the dev's fault either. If you used an Nvidia card you couldn't use Sunshine for a while because Nvidia arbitrarily removed support for certain forms of encoding from their drivers for their consumer GPUs. Your only options at the time were to either use other forms of encoding that barely functioned or manually patch your GPU driver to re-enable that encoding support. I did the latter option but it was still really janky and unusable compared to the Windows version. The Sunshine developers were working on a fix but at the time it was mostly an "it is what it is" situation.
This is no longer the case. Sunshine now mostly works identically to how it did in Windows on Linux now. I can now easily stream games at 1080p60 to my Steam Deck, meaning I can now play my PC on any TV in my house since Sunshine streaming over wifi is rock solid. Unlike Steam's streaming, latency is barely noticeable in Sunshine. I played through Elden Ring, Cyberpunk 2077, FF7 Remake+Rebirth, and a bunch of other games using Sunshine/Moonlight.
I guess my one comment is that I haven't yet tested out Artemis and Apollo, which are forks of Moonlight and Sunshine that add a bunch of extra features that sound useful. Notably, they use virtual monitors for streaming rather than relying on your physical screens, which is useful if you want to stream and your screens happen to go to sleep in the interim.But for now, I'm quite happy with Sunshine and Moonlight.
shotcut is really solid video editor for basic stuff
I'm one of those Final Cut people since I got a copy of it on my Mac for super cheap over a decade ago as a student, but I've found myself wanting to do simple GIF making and other video editing on Linux. I tested out a bunch of options and settled on shotcut, which is an open source video editor that's a bit weird but does most of what I want. It's not perfect by any means but it gets the job done.
The Open Source version of Visual Studio Code, VSCodium, is really nice. It has most of the useful plug-ins, none of the Microsoft garbage
For people trying to get away from using Microsoft products, that usually means finding replacements for Windows, Outlook, Office, or whatever. For software developers who do certain kinds of work, it's a much trickier thing. Microsoft did their Embrace, Extend, Extinguish thing on a big part of software development over the last decade and now dominates the text editor space with Visual Studio Code (seriously, they went from no market share to a massive majority of the marketshare). They've basically monopolized non-IDE code editing, which sucks since several of the editors they killed off/choked out, especially Sublime Text, were better tools than VS Code for a long time.
I've always been cool on VS Code but there's no denying the usefulness of it, especially with all of the community-developed plug-ins (the LaTeX plug-in was essential when I was doing my math degree). However, recently, Microsoft has started Microsofting VS Code up, cramming GitHub stuff (which Microsoft owns), cloud stuff, telemetry, and now AI bullshit into it, taking VS Code from a lightweight and flexible editor to something that nags you about using ChatGPT (surprise surprise, there's a Microsoft subscription they're pushing by doing this. This time for GitHub Copilot) and consumes a lot of system resources.
Luckily, since VS Code is open source, some folks have made the effort to build a separate version of it that includes all of the customization and flexibility of the app, but guts all of the Microsoft bullshit out of it. I've been using it a fair amount and it does exactly what it says on the tin. You've got VS Code with all of the plug-ins you want but no Microsoft trying to push you to use their AI tools, cloud workspaces, or other such things. It's nice.
PS: If you are installing this on Bazzite, get the AppImage version rather than the flatpak. Getting around the flatpak sandbox for VSCode is essential for using it and it's a hassle to do. With the AppImage version, you don't have to worry about that since it's not sandboxed.
yakuake brings back my degenerate "always have a terminal running all the time" habits from the old days
Back in the day I was one of those people that set up iTerm 2 on my Mac to have an always on terminal window opened but hidden that I could access with a hotkey. It was super duper useful for a bunch of reasons. It was nice not having an extra window floating around. Being able to hit a sequence of keys then have a terminal pop up and be the focused app so I could immediately start typing was great too since it saved time.
yakuake is a Linux tool that takes your terminal of choice and adds that iTerm 2 dropdown functionality I used to use. Further still, it will move your dropdown terminal to whatever screen your cursor is in so your terminal pops up wherever you are looking. You can also open tabs in it so you can have multiple terminals going at once. It's a very simple tool but I use it dozens of times a day now. It saves me having to dig through windows when I have multiple terminal things running at once. It's wonderful.
micro is a genuinely great super duper beginner friendly terminal editor that new linux users should use
Among the many newer tools (micro is from 2016 but didn't catch on until recently) that really drive home how much easier and more friendly working in terminals has gotten, micro is definitely up there. It is the closest thing I've seen to a full-featured GUI text editor that works in the terminal. micro's mouse support works like it would in Notepad or anything else, it automatically colours your code for you, and hotkeys and other functionality that is much more in line with modern GUI text editors (ctrl+S for save, etc.). I'm a 13+ year Vim user but had this been available when I started doing terminal stuff, I would have probably just used this thing for basic stuff. I can't recommend it enough for new Linux users. micro takes away all of the scary parts of editing files from the terminal and makes it all work in a way that's familiar to most people. Yes you have to use keyboard shortcuts but it's all the normal ones, and should you need a reference, you can always hit Alt-G, which is listed at all times in the corner so you don't need to memorize anything.
I guess to drive it home that I think micro is good, I've been using it instead of Vim lately, which says something because I used Vim for years and years without ever thinking about trying anything else.
XIVLauncher is essential for people who want to play FFXIV on Linux
If you want to play Final Fantasy XIV on Linux, this is kinda your only option. It's a launcher that will install the game for you and automatically add it to Steam as a non-Steam game so it can be run with Proton. I used this to play the game on my Steam Deck but it works well on desktop Linux too. Just be sure to go through the settings once before installing (for if you want it to be in free trial mode or not) and you'll be good to go. If you got FFXIV through Steam, you don't need to worry about this but if you are like me and created an account separately, this is the way to go.
What's Next?
I'll probably give an update on Bazzite a little while down the road. I've yet to hit any meaningful hurdles with it though I'm sure I will at some point.
Beyond that, an idea I have is to install some kind of Linux on one of my favourite old MacBooks that stopped getting MacOS updates a few years ago. It's one of those ones from the beloved 2012-2015 era of Macs that were probably the peak of their hardware design in terms of being a practical and usable product (I don't mind the current generation. The previous generation with the bad keyboards and only USB-C ports was straight up garbage). That little laptop, despite being 11 years old is still pretty quick but it's not safe to use on the internet as is. I'll probably throw Fedora or Mint on it since those are both known to work quite well on Macs. That might be a fun thing to write about.
To take that idea a step further, I also have been considering seeing how Asahi Linux works on an M1 Macbook Air of mine. That's the weird version of Linux that's built entirely by reverse engineering the Apple Silicon Macs since there's no documentation or other information on how those chips work. Apparently Asahi is in a pretty good place now so I'm curious to give it a try.
PS: The Asahi Linux people really don't like generative AI lol.
From the Asahi Linux documentation:
Policy on Generative AI
It is the opinion of the Board that Large Language Models (LLMs), herein referred to as Slop Generators, are unsuitable for use as software engineering tools, particularly in the Free and Open Source Software movement.
The use of Slop Generators in any contribution to the Asahi Linux project is expressly forbidden. Their use in any material capacity where code, documentation, engineering decisions, etc. are largely created with the "help" of a Slop Generators will be met with a single warning. Subsequent disregard for this policy will be met with an immediate and permanent ban from the Asahi Linux project and all associated spaces.
...
It is very easy to get caught up in the hype that bad actors have built around Slop Generators. The anthropomorphic presentation of Slop Generators as "agents" or "assistants" is a very deliberate attempt to manufacture consent for their integration into workforces at the expense of human interaction. The implication of some higher degree intelligence or sentience is very much deliberate, and it is very much false.
Make no mistake, they cannot think. They cannot reason. They cannot take into account context. They don't "know" things or have a sense of humour or any of the other human-centric qualities bad actors would have you believe of them. Slop Generators are a chain of matrices in a stochastic system. The output of a Slop Generator is nothing more than a statistical calculation, where the next word to be generated is decided by an opaque probabilistic function dependent on previously generated words. This is fundamentally the same mathematics that is used to predict the weather.
A Slop Generator cannot assess the veracity of its claims, nor can it ever tell you that it simply does not know something. Slop Generators are often confidently incorrect as a result, and require brow-beating to admit a mistake. They are therefore highly inappropriate tools in contexts where truth and correctness are of utmost importance, and when the user is not already highly knowledgeable and confident in the problem area. This presents a bit of an issue for Slop Generators; if the user is already highly knowledgeable and confident in the problem area, then why ask the Slop Generator in the first place?
Anyhow, until next time. Maybe I'll be posting the next one of these on the new site. Ooh exciting.