Jack Wallen considers what running Linux apps on Chrome OS means for users and the open source community.
I own a Pixel 2 laptop. Right now, it's collecting dust, which is a shame, as it's some of the best hardware I've ever used. And don't get me wrong, for the longest time I used that Pixel proudly. But eventually I needed more like when edits came back for a book and Google Docs didn't handle MS Office Track Changes, which it can now do, or when I needed to work with an image editor and Pixlr simply wouldn't cut it. In all honesty, there were more moments like that than not.
But I don't consider myself an average user (for which the Chromebook is perfectly suited). So eventually I put the Pixel on a shelf, in favor of a MacBook Pro. Although that particular hardware isn't quite as nice as the Pixel (battery life, keyboard, and screen layout pale in comparison), it allowed me to get my work done without much of a struggle.
Fast forward a year and Google announces Linux apps will be usable from within Chrome OS. Let's make one thing perfectly clear, this isn't running a full-blown Linux OS, via Crouton, on Chrome OS. This is Chrome OS including support for installing and running native Linux apps. That's right, native. At the moment, Crouton does allow you to run Linux apps on Chrome OS, but that is by way of switching between Chrome OS and Linux. With the new project, named Crostini, Linux apps will be run in an isolated container. If you own a Pixelbook, you can test it out by switching to the Dev channel and then following these steps:
- Launch crosh (ctrl-alt-t)
- Create a crostini virtual machine with the command vmc start dev.
- Launch a container with the command run_container.sh --container_name=stretch --user=<USERNAME> --shell (Where USERNAME is the name of your Chrome OS user.
The above will launch a Linux terminal window, as a containerized app, thanks to Crostini. The goal of the developers is to make the process of launching an app easy, by including the ability to pin Linux app icons to the shelf. Why is that important? Because it means starting a containerized Linux app will be as simple as starting any "app" on Chrome OS.
Notice I quoted app. As you may know, as it stands, the available apps for Chrome OS aren't exactly a means to a productive end. And Android apps on Chrome OS has simply failed to gain any real traction. With the help of Crostini, those quotes can be officially removed from the word apps. That's huge for Chrome OS.
But what does it mean for Linux and open source apps?
In a word: Audience.
A wider audience
The biggest upside for open source is that it means many of those outstanding tools will finally land in the hands of a much wider audience. There are some open source software titles that are true gems, applications like GIMP, Inkscape, Clementine, Scribus, and LibreOffice, all of which do not have nearly the user-base they deserve. Why? With many of those tools, it's simply because they are limited to the Linux market share. However, with the ability to add those software titles to Chromebooks, that audience grows exponentially. That is big news to open source developers. All of those apps that have struggled to gain any semblance of traction will now enjoy a massive user base.
How can that be anything but a huge win? Do a search on Amazon for "laptop" and you'll see the top two results are chromebooks. Those low-cost alternatives are still selling like crazy. And with the continued adoption of chromebooks in schools, that audience grows exponentially. Imagine education systems having cheap hardware that can finally perform all of the tasks their students need. That's a no-brainer if there ever was one.
This could also be a win for Linux as well. Why? Getting users familiar with all those software titles would go a long way to showing them that there is, in fact, enough software on the Linux platform to get the job done. That's a win-win for both sides of the fence.
However, there's a caveat.
There always is.
The "how to"
At the moment, the one solid thing we know about installing Linux apps on Chrome OS (as reported by OMG! Ubuntu!) is that it will support apt-get install. I cannot imagine that Google will limit the installation of Linux apps to the command line. Doing that would completely defeat the purpose. Why? Because the average Chromebook user is simply not going to open up a terminal window and issue the command apt-get install gimp. It's just not going to happen. To that end, Google must either include a special app store for Linux apps or integrate Linux apps into the Play Store. If they fail at that, the whole of Crostini will be pointless.
The view from Windows
Let's not forget one thing: The ability to install Linux software means the ability to install Wine. With Wine installed, even Windows apps could be installed. Of course, there is one drawback to this, the same drawback that might haunt running Linux apps on Chrome OS. Because these apps will be run within a container, it means the draw on resources will be considerably higher than simply running the Chrome browser. Many Chromebook specs lean toward the low-end. Because of that, they'll struggle to run apps like Gimp and LibreOffice. Imagine, then, running a containerized version of Wine, and then attempting to run MS Office on top of that. Chrome OS will come to a slow, chugging halt.
However, owners of Pixelbooks, Pixels, and other higher-end chromebooks shouldn't have any problem running any Linux app on their devices.
There will be room for improvement
Once Chrome OS manages to get containerized Linux apps to the masses, there's one thing that will need to drastically improve. Multi-touch. At the moment, the multi-touch experience on Chrome OS is not good. When users finally have the ability to include full-blown apps on their Chromebooks, they'll want a full-blown multi-touch experience to enhance those apps. If you've used Chrome OS enough, you know multi-touch is almost laughable, especially when compared to the likes of macOS.
That's going to be a tall order. Why? Multi-touch on Linux is almost nonexistent. Sure, with plenty of work, you can almost get multi-touch to work (almost being the key word).
A long way off
At the moment, Crostini is very much in the early stages. In fact, there's no guarantee it will be officially rolled out. With developers having only minimal success at the moment, it is possible the idea of containerized Linux apps on Chrome OS might have been nothing more than a pipe dream. However, if Google really wants to take Chrome OS to the next level, they need this win. Couple that with the huge win this could mean for open source applications, and the necessity of this happening becomes even more important. Although the average user can make do with Chrome OS, it's still a limiting platform for many users. The addition of Linux apps would go a very, very long way to making the Chromebook a Microsoft Surface killer. I could only imagine this goal is very much in the forefront of Google's collective mind.
- Developers can now code on Chromebooks thanks to Linux support on ChromeOS (TechRepublic)
- A mysterious Chrome OS commit could hint at a Chromebook that dual boots Windows (TechRepublic)
- How to run Firefox Quantum on a Chromebook (TechRepublic)
- How to prevent a Chromebook from running out of memory (TechRepublic)
- How to change channels on your Chromebook (TechRepublic)
- Chrome 66 rolls out: Autoplay video silenced by default plus 62 bugs fixed (ZDNet)