Although not everyone knows it, ChromeOS is effectively a Linux distribution. That fact is effectively hidden and I can understand why: Linux can be a scary word to mainstream consumers. But there’s no denying the fact that ChromeOS is Linux. It uses a Linux kernel, hidden away by the graphical user interface, also known as a desktop environment. Between the new Material You design and move to break apart the Chrome browser from ChromeOS, now more than ever, ChromeOS is Linux with Google’s desktop environment.
What is a desktop environment?
To help illustrate the point about desktop environments, it’s worth explaining what one actually is. Particularly when it comes to Linux systems.
When you install Linux, you choose a distribution. It could be Arch, Fedora, Debian, Ubuntu, or in my case, Pop OS!. The distribution comes with a Linux kernel along with software and modifications for that particular distribution. Think of the kernel as the lowest level of software. It helps other software speak to the hardware to make a cohesive system. It’s what lets you browse your files through an application or the Terminal, for example.
But that’s only part of the system. The other part is how you interact with it. Some people prefer to simply use the Terminal and command line for everything. And there’s a relatively steep learning curve involved with that approach. So there are graphical desktop environments to help with that. These visually show clickable folders, for example, or have an application launcher menu, among other things.
And there’s no lack of standard desktop environments available to Linux users, all of which are customizable. Here’s a gallery of just a few of them, for illustration:
While most Linux distributions come with a default desktop environment, users can install and choose from many others. You can’t do that on ChromeOS, which is why I say ChromeOS uses Google’s desktop environment. Choice would be nice here but I really do like the new Material You interface.
ChromeOS runs on Linux
Going back to ChromeOS and the underlying system software for a second, it’s Linux. Google uses a customized version of Linux that you never see. Well, unless you turn on the Linux container, which gets you Debian Linux and a Terminal. Even though you can install Linux desktop applications for that container, you can’t use it to modify the Linux code that runs ChromeOS.
So it’s a bit locked down, particuarly compared to regular Linux. When I use Pop OS! for example, I have total control to change just about anything I want to.
Here’s a look at how I typically use that Linux machine on an ultra-wide monitor:
Note that when using applications, whether it’s just one or a dozen, all of the screen is being used. That’s because Pop OS! has a feature that automatically tiles my windows. When I open an application, the system reduces the size of another app and makes room for the new one.
I like this style of window management and although it’s not quite the same, ChromeOS does offer a bit of this. That’s the feature when you click and hover on a window’s maximize button to select a window placement and size.
It’s not quite the same thing, of course. It is an attempt to bring some of Linux’s productivity features to ChromeOS, however.
ChromeOS vs Linux
With Google’s desktop environment and a limited but effective Linux software platform, I’ve started to question my own use of ChromeOS a little. Don’t get me wrong: ChromeOS is great at what it does. Google has smartly used Linux without scaring everyday people from using Linux. That’s a good thing.
However, my needs are changing a bit. I spend far more time in desktop applications than I used to. Most of that time is for my coding education. Yes, I do use the Linux version of Microsoft Visual Code on my Chromebook. And it works just as well as the same app on a traditional Linux or Windows machine. So I’m not giving anything up there.
No, the fact that I can run Linux applications on a Chromebook is a bonus. And it keeps me productive, even if I run into the occasional challenge or limitation.
It’s mainly the desktop environment aspect that has me using Linux more than ChromeOS lately.
That tiling window manager I mentioned is a huge part of it. I prefer to use all of a screen regardless of my computing activities. Having that happen automatically by the desktop environment is one less thing I need to do or manage.
Then there’s the customization aspect. Yes, with the Material You design, ChromeOS now sets the interface colors to correspond with or complement the colors from my desktop wallpaper. That’s nice but… it’s really just the bare minimum of customization.
On my Linux machines, I’ve customized the fonts, both globally and for certain applications where I want something different than my global default. I’ve added useful widgets and Menubar applications for quick info at a glance. And I’ve created custom keyboard shortcuts for the tasks I do the most. Granted, that type of customiziation is coming to ChromeOS, which I appreciate.
Effectively, I have no limitations when I use Linux. When I use ChromeOS, I am limited. By Google.
That’s not a bad thing for most people. Heck, I’d say that Google has created one of the most popularly used Linux implementations and that’s no small feat. I’m saying that the more my computing activities and preferences change, the more attractive a traditional Linux distribution is to me.
ChromeOS should continue to embrace Linux
I’ve said this before, both on the site and to people at Google: ChromeOS should really have some type of Linux desktop application store. Or at least a repository of Linux applications easily available from the Linux container on ChromeOS.
I get why Google pushed Android applications to ChromeOS in lieu of this. Android has a massive user base that’s familiar with the applications that run on Android phones and tablets. But after seven years of Android apps on ChromeOS, I think the net effect is negligible.
Put another way: When people ask me which Chromebook to buy for running Android apps, I tell them to reconsider the question. If the primary purpose is to run those Android apps, you’re better off using an Android phone or tablet because the software is optimized for those titles. Occasionally Android app use on a Chromebook is fine for most people but I wouldn’t say it’s a core strength of ChromeOS. It’s a bonus feature if you want to use it.
Linux desktop apps, however, are built to run on a…well, a desktop computer. When I run them on a Chromebook, they run well, just like they do on my Pop OS! machines. I don’t have to worry about screen sizes, touchpoints, application resizing, etc…. it all just works.
It would take a fair amount of effort for Google to curate and maintain a Linux application store or repository. And other than potential customer satisfaction, there’s little in the effort for Google. Still, I think it would have more of a positive effect on ChromeOS than Android apps will. At least in the long run.
And it just might sway me to use ChromeOS more often than Linux these days. Particularly if the desktop environment were a little less locked down too.