Is Your Linux PC Truly Free and Open Source?
Whatsapp Pinterest
Advertisement

I love using Linux. I make a point out of using only free and open source applications. This is easier on a desktop than on a phone, yet at the end of the day, I have to admit that I still end up using quite a bit of proprietary software.

Chances are, even if you’re a free software-loving Linux user like myself, you are too.

This is something that became clear to me the longer I used Linux: It’s really hard to only use open source software. Even when you think you are, there’s often closed source code operating quietly in the background.

Turns out, the Linux desktop isn’t quite as free as it’s made out to be, and that’s only part of the story.

Let’s Start With the Linux Kernel

When you install a Linux distribution, what you see on screen isn’t Linux. The operating system known as Linux is technically just the kernel The Linux Kernel: An Explanation In Layman's Terms The Linux Kernel: An Explanation In Layman's Terms There is only one de facto thing that Linux distributions have in common: the Linux kernel. But while it's often talked about, a lot of people don't really know exactly what it does. Read More , the part that enables software to talk to your computer’s hardware. Most of what you see is free. It’s in the kernel where things get iffy.

The Linux kernel contains binary blobs. These are closed source bits of software that are packaged only as opaque binary files. That means not only are we not permitted to edit the code, we’re not even able to see it.

These binary blobs consist primarily of hardware drivers and firmware that make Linux work on more hardware. Ideally, companies give developers the technical documentation needed to make Linux run on their hardware. Many provide closed drivers instead.

Linux is able to run with these drivers, but it often doesn’t work as well as it otherwise might (that is, as if the coding were done by the same people that work on the kernel itself). These drivers also introduce security risks, since we don’t fully know what they do or what flaws may be present Is Security Through Obscurity Safer Than Open Source Software? Is Security Through Obscurity Safer Than Open Source Software? Open source software comes with clear security benefits. The opposite approach is security through obscurity. Is one approach actually safer than the other or is it possible that there's truth to both? Read More .

The Linux kernel hasn’t been entirely free and open source since 1996, the year it began accepting binary blobs. For over two decades, Linux has contained bits of closed, proprietary software.

If you find this troublesome, you can download Linux-libre, a version of the kernel with all the closed bits stripped out. Unfortunately, Linux-libre doesn’t support the hardware whose vendors don’t provide technical documentation.

This means you can expect to run into more issues with graphics cards and network cards. Your Wi-Fi may not work at all without buying a special USB dongle.

Then There Are the Drivers You Install Yourself

When I first switched to Linux, I needed to install a proprietary driver in order to get online wirelessly. My graphics card worked, but I needed a proprietary driver to get the smoothest experience and play games.

The situation has improved in the years since, but if you’re using an NVIDIA graphics card, you still need a proprietary driver to get the best gaming experience How to Install Proprietary Graphics Drivers in Ubuntu, Fedora, and Mint How to Install Proprietary Graphics Drivers in Ubuntu, Fedora, and Mint Most of the time, you'll be fine with open-source software on Linux. But if you want real gaming and graphical power, you'll need proprietary drivers. Here's how to get them. Read More .

Oftentimes, you install these drivers immediately after installation and forget about them. You don’t have to think about them again until it’s time to upgrade to the next version of your Linux distro. But all the while, proprietary software is running in the background. There’s a corner of your computer where the code is blocked off.

This isn’t merely a matter of security and privacy, which you may be concerned (or ambivalent) about. This is also a matter of Linux developers being less able to provide you with the best computing experience.

When they have access to the documentation, they can fix bugs and make sure all the parts fit together. As things are, you’re dependent on outside companies to provide well-developed drivers for a relatively small number of users.

Not All Software in Linux App Stores Are Free

In most Linux distros, the vast majority of the software you download doesn’t cost money. Most of it is also open source. But there is occasionally proprietary software tucked away as well, and unless you both care and know what to look for, you can very easily end up with more closed source code on your PC.

Examples include software like Steam, Skype, and Slack. This is often software you need in order to do your job or stay in touch with friends 4 Ways Open Source Software Is Not Good Enough 4 Ways Open Source Software Is Not Good Enough There remain corners the Linux ecosystem that aren't fully open source. Perhaps it's a hardware driver -- for some, a proprietary software application may be required. Here's where Linux is still playing catch-up. Read More .

Maybe you’ll install codecs to get music and video files to work Why Your Music & Video Files Don't Play on Linux, and How to Fix It Why Your Music & Video Files Don't Play on Linux, and How to Fix It You've switched to Linux, but your video or audio files file won't play! Simply, your Linux version didn't come with the necessary codecs, so let's find out how to install them. Read More , unaware that these are proprietary files. You think you’re using a completely free and open source computer, only to gradually realize that hasn’t been the case.

Now Let’s Talk About the Web

Even if you jump through any hoops necessary to run a completely free distro running the binary blob-free Linux-libre kernel, don’t install any additional hardware drivers, and block proprietary software from your Linux app store, you’re still likely relying on a large amount of proprietary software. It’s coming in through your browser.

Browsing through GNOME Software on Fedora the other day, I saw that Slack was available for download. Then I noticed that it was marked as proprietary.

Open Source

This put me off, so I didn’t download it. But then I thought about it. I use Slack in a browser tab, and it’s no less proprietary there than it is with a dedicated client. My browser may be open source, but much of the content coming through it isn’t.

The transition from using desktop apps to cloud software has been a mixed bag for Linux. On one hand, it’s easier to transition to Linux than ever Switch from Windows to Linux and Get Up and Running in Minutes Switch from Windows to Linux and Get Up and Running in Minutes Switching from Windows to Linux might seem complex, but it's easy! Here's how to your get important data and programs from one OS to the other. Read More since you can fallback to the web for many things you couldn’t do in the past. Microsoft Office 365 and Adobe Photoshop, for example, now offer a certain amount of functionality online. You can also stream movies on Netflix and listen to music on Spotify.

Desktop apps aren’t as necessary as they used to be. But on the other hand, all of these are proprietary services. If you try to use the web without touching closed source code, the way Richard Stallman does, you greatly reduce what you can do online.

Then There’s the BIOS

The BIOS, short for Basic Input/Output System, is the part of the computer you see for a brief moment before your operating system boots up. It comes pre-installed and is typically proprietary software.

Even compared to the web, this is the part of the computer you have the least control over. You can use a different kernel. You can avoid certain drivers and proprietary apps. You can even stay away from most of the web or reside offline entirely. But changing the BIOS?

You can replace the BIOS on your computer with an open alternative such as coreboot or Libreboot, but they support only a limited number of PCs. On most PCs, you’re simply out of luck.

So How Free Is Linux, Really?

At the end of the day, there remain many closed parts to your typical Linux computer. On the flip side, the experience is still much more open than Android.

If using free software matters to you, don’t lose heart. Your computer and the web may not be entirely open, but the fact that you care enough to make the effort matters. This influences people who design software, whether now or in the future.

Open source alternatives to cloud services appear all the time. Open source desktop software continues to improve. Twenty years ago, open source was still a novel idea, and we’ve come a long way since 7 Ways Open-Source Software Changed the World 7 Ways Open-Source Software Changed the World Here are some of the ways open-source software has unmistakably changed the world. Read More . But we can’t lie to ourselves: most computers running Linux are only partially free even to this day.

Explore more about: Linux, Open Source.

Enjoyed this article? Stay informed by joining our newsletter!

Enter your Email

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. Eddie G.
    March 26, 2018 at 4:02 am

    Well I don't use Slack......or Skype...or Steam on my PC's and I bootup with LibreBoot....and while I might listen to a streaming music service (through VLC). The parts of my system that aren't free are truly out of sight out of mind, and since I'm not one for gaming? I don't stress the NVidia issue too much. The ones that came integrated on my MoBo is fine enough. I dunno, I still consider my PC as running open source software.

  2. Shaun
    March 15, 2018 at 5:00 pm

    Slack is technically not closed source. It is built on a framework called electron, which uses asar archives for obscuration, which are basically just all of the files appended into one. Using the asar module from npm, you can extract it and see the source code running on your computer, but unfortunately the server code is still closed-source.