The Linux Alternative

Since 2005, I’ve been working almost exclusively on Apple products. My first was an iBook G4. My last is the Macbook Pro 2015 on which I am typing this post. This coming February, I’ll be taking delivery of my first new computer since 2015, and it will not be a Mac. I chose the Dell XPS 8940 for its excellent balance of price and performance. But the real reason, is because I know it will work with several of the more modern distributions of Linux, and it is engineered in a way that I can still do with it as I wish.

Sure, there are a number of pragmatic reasons I am extricating myself from the Apple ecosystem. Among them, include several of the technology design decisions Apple has made over the last five years. But, more significantly, the change in mindset that has accompanied those design decisions. Apple no longer sees itself as creating high quality technical tools for creative professionals (including software developers), but instead sees itself as producing boutique personal appliances, whose utility is secondary to its fashion status (in particular, the cleanliness of the political messaging implicit in the ownership and use of their devices). To be fair, there is an industry-wide tendancy toward “virtue-signaling” as corporate policy, and Apple is just jumping on the bandwagon. But they’re going above-and-beyond this in a number of ways. In the coming two years, owners of Mac computers won’t have any access anymore to the root user, they’re already losing access to the kernel, as the OS is slowly being tightened up around the new Apple M processors. We’re all already familiar with the walled-garden approach toward software applications they adopted some time ago. Now, they’re going to be closing all the remaining loopholes.

I grew up in a very different environment. Computers were a playground for hobbyists and engineers. They were grown-up Legos, which could be mixed-and-matched and tinkered with endlessly, often with incredibly fruitful results. But even if it came to nothing, the prevailing attitude was one deeply entrenched in the assumption of private property and the implicit ethics of free market transactions. This environment is partly what gave birth to reactionary notions like “open source” software, and the nostalgia for the understanding of ownership of that era is what is now driving the “right to repair” people. Having grown up swimming in that ethos, I have become increasingly frustrated and alarmed by the centralization of control of technology, and the gradual surrender of basic concepts like free exchange and private property. And Apple has played a significant role in that transition.

For a time, I was willing to consume the corporate commercial offering because I naively thought that “the free market” would “work itself out”. But the problem is, the system within which organizations like Apple participate is not a free market. Apple began its life as an independent operator, competing with the very system that it now largely represents (along with Google, Amazon, and Microsoft). These organizations (along with Facebook aka ‘Meta’) have been engaged in a decade-long exercise in collusion and subterfuge exploiting third-world markets, and undermining western political systems, making it harder and harder for the individual to free himself from the constraints of the globe-spanning corporate lobby that these companies are attempting to substitute for the nation-state. Apple’s design decisions are a direct result of that effort, and I no longer want to be a part of it.

But why Dell? Well, for the most part, Dell has tried it’s level best to remain an actual technology company, rather than entangle itself in the collusive FANG technocracy. Michael Dell even took the company off the public exchange for a time, while restructuring internally in an attempt to refocus on enterprise tech. As a result, the quality of the tower and desktop products has once again risen to what I remember of Dell from the 1990’s, and what’s more, the engineering remains as flexible as ever. So, unlike a hand-built machine (which I no longer have the chops for), or a cheap “linux ready” asian brand computer, I’m getting something rock-solid that I don’t have to worry about, but is still open to tinkering. This was one of the reasons I originally bought the iBook G4.

In any case, one thing I will be changing (as mentioned at the beginning), is stripping Windows 11 off the machine, and disabling the Windows-friendly features in the BIOS (like the machine identification firmware and the security tools). I haven’t yet decided which distribution of linux to go with, but it will have to be something that’s stable enough for audio and video editing and academic writing, but still ‘hackable’ enough for software development and hardware tinkering. The top 5 candidates right now, are:

  • Linux Mint (latest edition) – mainly for the availability of third-party codecs and drivers, and commercial software repositories.
  • Ubuntu 18 or 19 (prior to the garbage package management) – mainly for access to ubuntu repositories, and some of the nicer features of Ubuntu desktop, before the canonical foundation started fucking up the project.
  • Debian (latest edition) - hands down favorite for me; the most stable version of linux I’ve ever worked with, and my own skill with the kernel in a debian configuration means I can build whatever I need from scratch
  • Pop!_OS 21.04 - A good general purpose Ubuntu-fork distribution, that avoids all the fuckups of canonical, with enough flexibility to hack into what I want.
  • Manjaro - An Arch distribution that I can tolerate. Has good support for different graphics drivers.

But the final destination for this post isn’t to evaluate these distros. Rather, it is to provide a relatively comprehensive list of software application alternatives to what one would normally find on MacOS or Windows. To be clear, this isn’t a list of all software one might want. It’s a list of all the software I regularly use on the MacBook, and need to make sure I have working alternatives or ports in Linux. What you’re going to find, is that for nearly all of the everyday tasks, even for a typical power user, linux has either a port of a popular product, or a high quality alternative that makes transition fairly simple. But there are still a few stubborn hold-outs that can make things a bit uncomfortable. So, for what it’s worth, here is my list.

Use Case MacOS Windows Linux
Web Browser Safari or Chrome Edge or Chrome Brave or Chromium
Office productivity MS Office MS Office LibreOffice (or MS Office Web)
Cloud Drive Private Nextcloud Private Nextcloud Private Nextcloud
Email Protonmail Web* Protonmail Web* Protonmail Web*
Calendar ProtonCalendar Web ProtonCalendar Web ProtonCalendar Web
General Video Conferencing ZOOM Client ZOOM Client ZOOM Client (or Jitsi)
Work Video Conferencing MS Teams MS Teams MS Teams Web (or MS Teams Beta)
Development IDE Intellij Ultimate Intellij Ultimate Intellij Ultimate
Programmers Editor VS Code or Sublime VS Code or Sublime VS Code or Sublime
SQL Shell Beekeeper Studio Beekeeper Studio Beekeeper Studio
REST Client Shell Insomnia Core Insomnia Core Insomnia Core
Terminal / Shell iTerm2 / zsh GnuWin / bash (or a debian docker) Gnome Terminal / zsh
Virtual Machines Parallels VirtualBox VirtualBox
Blog / Article Editing Typora Typora Typora
Video Player VLC VLC VLC / MPV
Audio Player Apple Music Windows Media Player VLC / MPV
Streaming Music Player IDAGIO Player IDAGIO Player IDAGIO Web
Podcast catcher/player Poddr ? Vocal / CPod / Cantata
Image Editing Preview / Pixelmator Photoshop GIMP
Audio Editing Audacity / ocenaudio Audacity / ocenaudio Audacity / ocenaudio
Video Editing iMovie / Davinci Resolve Windows Movie Maker / Davinci Resolve KDenLive / Davinci Resolve
Video Management LBRY LBRY LBRY
Video Streaming OBS Studio OBS Studio OBS Studio
Messaging WhatsApp WhatsApp WhatsDesk / Franz
Work Messaging Slack Slack Slack (snap/rpm)
eBooks Kindle App Kindle App Kindle Cloud Reader
Youtube Downloads MediaHuman / youtube-dl MediaHuman / youtube-dl MediaHuman / youtube-dl
video / audio transcoding ffmpeg ffmpeg ffmpeg

[note: you can also run a bridge that will allow you to use protonmail with any desktop client ]

That is about as comprehensive a list of software as I need to make a one-for-one swap from MacOS to Linux. There are probably a few things I’ll need to keep the old laptop around for. Driving iOS simulators with Xcode, for example (though, I mainly do that on my work laptop, which is a MacBook). It’s also true that some apps are now snap bundles, or electron based (react web in a gui wrapper). But those are getting more and more rare.

Thus, it seems to me that for the individual who is modestly competent with computers, there’s really no reason not to go with Linux anymore, for both general purpose and purpose-driven work, because even if you’re engaged in some niche creative field like photography or music Linux has plenty to offer.

I never really thought it would ever get to this level of sophistication, to be honest. I started out trying to do slackware installs from floppy disks, on old Zenith laptops, and discarded IBM PCs. It was pure engineering wonkery back then. Getting successful compiles from source was the easy way out. Now, Linux is just as easy to use as a Mac for most things, and just as annoying as Mac, for things that don’t work out of the box. When I get the new machine, I’ll do a complete write-up here, on how it went, and what I think of it.