Chromebooks with the right stuff inside are now able to install and run a complete Linux experience with the KDE desktop without giving up the Chrome OS on the same device. It is not yet flawless, but it does create a hybrid computing platform that lets Linux and Android apps coexist on top of the Chrome OS.
I do not mean flashing the Galium OS distribution as a replacement for Chrome OS. I have done that on an end-of-life early Chromebook with usable results. However, I mean running a complete Linux graphical environment with the KDE desktop. This adds to the existing use of Android apps all in separate containers on top of Chrome OS on a single Chromebook.
Related: How To Run a Full Linux Desktop on a Chromebook. This alteration will give you access to both complete operating systems running simultaneously so you can move between them with a keyboard shortcut.
Since Google first released a Chrome OS version with the Linux apps feature a few years ago, I have been using the Crostini project to run Linux apps on a Chromebook. “Crostini” is Google’s umbrella term for making Linux application support easy to use for integrating Linux with Chrome OS. That method installs a command line version of the Linux OS to run Debian Linux apps on supported Chromebooks.
Since then, I have been sharing my Chromebook as a platform to run the Chrome OS with Android apps and a limited number of my daily Linux tools. I have been waiting impatiently for Google to advance the Chrome OS to run a fully functional Linux OS complete with a graphical desktop in a container, much like Virtualbox now runs other OSes within a host OS.
That functionality is now baked into Chrome OS. It works — not perfectly yet, but it does let me have a reasonably good user experience running a Linux graphical environment and Linux apps.
That process will soon upgrade to accessing Debian “Buster” repositories instead of Stretch. All of this works with the KDE desktop, along with Android apps and the Chrome OS, within a collection of four virtual workspaces.
Why Do It?
The ability to run numerous components on a Chromebook is a handy benefit. It does not completely replace my large-screen desktop computer. Nor does this Chromebook feature expansion make my collection of Linux-powered laptops useless.
Running a full Linux desktop on Chrome OS is something I have wanted since the Linux Beta feature was first introduced to Chrome OS. The latest development of Linux support via Crostini on Chrome OS is indeed somewhat magical.
This next point is critically important. Chromebooks do not yet run an actual full Linux distribution within Chrome OS. The Crostini technology is a container-like space that accommodates running Linux apps and now a graphical user interface (GUI). Having KDE’s pretty face added to the mix brings us one step closer to installing an actual Linux distribution.
How It Works – Overview
The experience so far is reminiscent of the clunky performance with Android apps first appearing within Chrome OS. Some stuff fails to work well if at all. Google has a ways to go before it becomes a liquid-smooth operation running on top of Chrome OS.
Chromebooks run Linux just as they run Android apps — in a container treated like isolated windows. The KDE desktop functions much like an app in a Chrome window. At this point, the experience is not quite like running Linux in a virtual box.
I can alt-tab from a window running the Chrome browser to windows running a variety of Android apps, Linux applications, and separate Chrome tabs displaying as standalone Web apps. Any combination of these works in tablet mode.
In that mode, however, a Linux “window” does not open the virtual keyboard when I try typing an entry in a dialogue box. The attached keyboard works fine in clamshell mode.
I can keep each module — Chrome browser tabs, Android apps, and Linux apps — in its own virtual desktop. Or I can ignore the virtual desktop feature and cycle through all windows on one workspace by repeatedly alt-tabbing. Navigating among them is cool whether I alt-tab, swipe gestures on the touchpad, or use keyboard shortcuts.
The Installation Process, Part 1 – Basic Linux
First, check to see if Linux is enabled on your Chrome device. If it is, you will see an entry for Linux Files in the Chromebook File app.
If Linux Beta is already enabled, you can skip this section and advance to Part II of the Linux installation process. Part II covers how to install the KDE Plasma desktop and its collection of applications.
If you do not see the Linux-enabled indicator, click here to check Google’s list of all Chromebooks that support running Linux.
If the Linux feature is not enabled on your Chromebook, and you have checked the link above to make sure your model is capable of running Linux, follow these steps to turn on the Linux support feature on your laptop.
- At the bottom right of the App Shelf on the bottom of the Chromebook screen, click on the time portion at the right end of the shelf.
- Then select the gear wheel to access Settings.
- Under Linux (Beta), select Turn On. If you do not see this entry, go to the magnifying glass icon at the top of the settings panel to search for Linux.
- Follow the steps on the screen. Setup can take 10 minutes or more.
When the process is finished, a terminal window opens. You can run Linux commands, install more tools using the APT package manager, and customize the Linux shell.
Get Ready for Plasma
This part of the process is not difficult, but it does take at least 45 minutes for the Chromebook to complete the process. Once you enter a few commands in the terminal, sit back and wait for the installation to complete. It could take considerably longer for the process to complete — in my case, it took close to two hours.
If something goes wrong, do not panic. Just turn off Linux Apps in the Chrome OS Settings menu and start over.
Part 2 – Adding the GUI
To get started, you can close the Chrome browser window or go to another virtual workspace. Either way, open the Chrome OS Files app and click on the Linux label to run Crostini. Then open the Linux terminal.
If you are familiar with running Linux apps from the terminal on a Chromebook, you know that even with sudo (superuser do) commands, the system does not ask you for a password. That might change for some commands once you install a desktop environment.
To prevent any issues over finding what the default KDE password is, let’s create one now. Create a Linux password by entering the command in the terminal. This will not wipe out or override the existing Google account password you use to log onto your Chromebook when you power it on.
Security is less of a concern here, so keep it short and simple. To forgo having to remember another password, I used the same one that I use on one of my Linux rigs.
- Enter this command in the Linux Terminal: sudo passwd root
- Enter the same password when prompted to confirm it.
You will see a notification in the terminal window that you have succeeded. Proceed with the next step to begin installing the desktop.
- Enter this command into the terminal: sudo apt-get install task-kde-desktop
- Hit enter, and when prompted, select Y to confirm the installation.
Fix One Potential Glitch
That is all there is to it. Restart the Chromebook. When Chrome OS reloads, open the Files app and click on Linux in the files list.
- Open a Linux Terminal and enter this command: startkde
- Hit Enter
Some Chromebook configurations may balk at starting the X server on the first run. If that happens, do the following:
- Enter this code into the Terminal for a one-time quick fix:cp /etc/X11/xinit/xinitrc ~/.xinitrc
- Hit the Enter key and then restart the Chromebook.
Once your desktop is up and running, you can right-click anywhere to customize it by adding widgets, new backgrounds and themes, and shortcuts. Any applications you previously installed from the terminal will show up in KDE’s application menu, as will any future installs.
Pushing RAM Limits
This computing experience is a wild feat considering the 4GB of RAM and ultra-limited internal storage in most Chromebook hardware configurations. I have a large SD card on board, but Chrome OS does not let you store and run system files and apps on the SD card the way Android does. That serious weakness can put limits on how much-added software you install on your Chromebook.
When you think about it, Chrome OS was built to run lean and mean. Chromebook hardware is built with 2 to 4 gigabytes of RAM in mind for typical users.
In the same vein, many Linux distributions are notable for their lightweight designs. Some Linux OSes provide lightning-fast performance on hardware powered by really old processors and 1GB RAM.
Still, having a mix of Chrome OS, Android apps, and a Linux desktop with more apps can become a performance challenge. This expanded use for Chromebooks makes a good selling point for getting a new higher-end Chromebook loaded with RAM and storage. The newer, faster processors will improve overall performance as well.
For example, my 4-GB Asus C213S Chromebook with 25 GB internal storage is extremely close to maxing out. Aside from an occasional lag in swiping around virtual screens and waiting for an app to load, though, the overall performance is very workable. Performance is even better if I do not need to keep every app and window running all the time.
One way to work around this issue is to uninstall unneeded Android apps and Linux applications. The KDE desktop installs dozens of default programs on the Chromebook. Go through the assortment and remove the ones you do not need. Numerous applications are duplicates for doing the same tasks, such as audio players, video editors, and text and spreadsheet tools.
New Meaning to Multipurpose Computing
Running a fully functional Linux desktop could be the perfect solution for lightweight mobile computing. In many cases, Linux apps are more functional than Android apps on the Chromebook.
Chrome OS concentrates on a browser interface with no actual desktop interface. Chrome OS also lacks added functionality provided by widgets and applets. Running a Linux desktop on a Chromebook fills that void. The KDE desktop lets you have widgets, notes, app shortcuts, and more.
The Chromebook is simply more useful and convenient. I have a three-in-one model that serves me well, with a foldaway keyboard to convert the clamshell laptop design into a tablet device with the same Android and Linux functionality.
Remember to Update
The Chrome OS will tell you periodically when a new version of the browser operating system is ready for you to install. That does not affect the Linux files. Just like you have to update any Android apps installed on your Chromebook manually, you also must update the Linux installation.
You can continue to update the Linux system and software files from the Linux Terminal outside of the desktop shell. Use this command:
- sudo apt-get update && sudo apt-get upgrade
Or you can use the Software Update tool in the Software Management tab of the Systems panel in the KDE main menu.
Thanks for your note about trouble running the full KDE GUI in the Chromebook Linux partition. This disclaimer of sorts from early in my article is significant:
===> Chromebooks do not yet run an actual full Linux distribution within Chrome OS. The Crostini technology is a container-like space that accommodates running Linux apps, and now a graphical user interface (GUI). <===
Truth be told, running Linux apps has been far more successful than running the apps through a full graphical user interface (GUI). Also, consider that those directions surfaced some two years ago. Much as happened within the ChromeOS and Crostini updates for Linux in the interim. I suspect that much of the problem you are having results from the vast differences in Chromebook hardware and configurations from manufacturer to manufacturer.
I had partial success as the included photos show on that one Chromebook. On other models, the GUI was less successful. I have not tried installing the KDE desktop on newer Chromebooks mostly because running Linux apps without the desktop interface on Chromebooks is much more reliable. Other solutions might create workarounds to get KDE to load on your Chromebook. I AM not aware of any, however.
I use Linux apps on a variety of Chromebooks, some several years old and others the latest models. Once you get comfortable installing each Linux app you want to use via the terminal, the icon becomes part of the integrated ChromeOS application menu. I put all the Linux apps that I use in a Linux folder within the menu so all I have to do is click on the icon just like launching Android apps downloaded from the Play Store on Chromebooks.
You do not need a full desktop interface for Linux on Chromebooks, although when and if it works that makes a nice feature within ChromeOS. I hope this smooths out your frustration. Between using PWAs within the Chrome browser, Android apps, and Linux apps, Chromebooks can provide a productive hybrid computing platform.
Had Linux loaded already. Followed instructions for KDE – have quite a few new apps in the Linux folder.
KDE refuses to start:
-bash startkde unknown
Tried the initrc fix; restarted etc; no help. Tried some of the apps in the Linux folder – most worked, some odly: knotes seemed to work but cannot find the folder it had me create! Ksudoku works better than before – can save with ctrl S now.
How do I get the desktop to work? Acer Spin 13 8gb ram; i5 proccesor.
Chromebooks are to Notebook computers, as Android are to Nokia Symbian smartphones. Both Chromebooks & Android are new, and both threaten the majority holders in their market sectors.
Had some trouble understanding your writings, many months after you had written them. The hardware & software is obviously dated, but not enough detail was presented to understand how relevant the writing is to today’s situation.
Here in Australia, we have so much home-schooling, remote working, etc. The internet has arrived, so physical transport (shopping, educations, meetings, exhibitions, etc) has almost ended. Covid-19 has made "THE FUTURE" arrive earlier than most had ever expected.
Not yet dead myself (frail, very old), so decided to see if the old systems can fit today’s students. Not notebooks, not smartphones & not iPads. They are costly, limited & difficult for beginners. So we need CHROMEBOOKS.
Trouble is Chrome OS is the commercial version of Chromium OS (open source). Android at the beginning had this same beginning. Hopefully we might see Chromium Books one day, without the USA-government approved spyware from Google?
Luckily Google has dropped the impossible goal of "DO NO HARM". However if the USA government says "don’t trust Huawei!", then Google obediently follows.
Back to Chromebooks: we need them for our non-profit, non-commercial agencies: education, lobby groups, special interest groups, etc. Lobby groups, like Donald Trump’s Anti-Abortion groups" and Pro-Guns lobby? Yes. The USA government approves, so Google’s Chromebooks allows this.
The other advantage of Chromebook is being able to run both Android & Linux applications. However the hardware is important. More memory, better CPU & GPU, makes everything work, if it works OK at all.
When recommending any hardware, we need to know the test hardware being used. Generally the latest hardware is lower priced, better featured than ancient hardware. Perhaps you might mention hardware features in later publications? It would save us need to web search whether your writings are still useful for us.