Chromebooks are lightweight fast booting computers with all-day battery life. They have grown popular in the Education sector and even among professionals. I have a $299 Samsung Galaxy Chromebook Go which I use as my daily driver. While you can install Apps from the Google Play store and Chrome Webstore on Chromebooks, you can’t install full-desktop Apps unless you enable and install Linux on Chromebooks.
To swap my Asus Vivobook laptop for a lightweight Chromebook, I needed to be able to run some full desktop apps on my new Chromebook, specifically a music player, text editor and a photo editor. My traditional desktop apps include GIMP for photo editing, Sublime Text and VLC for offline music playback. These can be installed on Chromebook after you install Linux.
Chromebooks run on Chrome OS which itself is based on the Linux kernel. However, it’s heavily tweaked by Google that you can’t access the full Linux raw power that you do when you install a full Linux distribution such as Ubuntu or Linux Mint on a PC. So to compromise, Google introduced Linux on Chromebooks through Linux Containers.
You can think of Linux containers exactly as standardized shipping containers that carry cargo on ships. Linux containers create isolated self-contained environments for installing full desktop applications on top of an existing operating system. Most of these Linux containers are based on existing popular Linux distributions such as Ubuntu or Debian. The default container that installs on your Chromebook when you enable Linux is called Penguin which is based on Debian.
You can also install Linux on your Chromebook if you wish to do some software development. The Linux environment enables you to install development tools such as An integrated development environment (IDE) that professional software developers use to write code. My favorite is Sublime Text which is a lightweight text editor which supports numerous programming languages. But you can also install Android studio for creating Android Apps and Visual Studio for general purpose coding.
When you install Linux on a Chromebook, be ready to interact with the terminal or the command line similar to DOS on Windows. Through the terminal you issue commands for installing applications, managing files and folders, executing scripts and administrative tasks. Using the terminal can be a little intimidating if your primary means of interfacing with computers has been through Graphical User Interfaces(GUI) like Chrome browser, MS Office etc.
Installing Linux on Chromebook
To install Linux on your Chromebook, go to Settings > Advanced > Developers. Under Linux development Environment(LDE), click on Turn on. This should bring a dialog box which starts to install the Linux development environment which will download about 450 MB of data.
Next, choose a username. Keep it as short and memorable as possible. Then select the Disk size. Chrome OS recommends 10GB but I found this awfully a lot for my 32GB Chromebook. So I selected Custom and chose 6GB. Still depending on how much you’ll do with the Linux Development Environment, this can be quite small or a lot.
In a few minutes, Chrome OS will finish installation of a Linux container or Virtual machine on your Chromebook.
When the installation is done, you’ll see a terminal window with command prompt pops up. This is primarily how you’ll start or shutdown the Linux virtual machine. You also install full Linux desktop apps through this terminal. To find out about the Linux container or virtual machine installed on your Chromebook, run the following commands;
- uname -r → outputs Linux kernel version . From my Chromebook, you can see that the Linux kernel is version 5.10.XX which is the latest.
- cat /etc/os-release → shows the Linux distribution the Linux container is based on Debian GNU/Linux 11 (bullseye).
- hostnamectl → Shows the container hostname (penguin), Virtualization technology, operating system, kernel version and system architecture.
You can uninstall Linux at time. To turn off Linux, go to Settings > Advanced > Developers > Linux development environment and select Remove. Here’s a video walkthrough on how to install Linux on your Chromebook.
Installing Linux apps on Chromebook
With your Linux development environment fully installed, you can now install a number of compatible Linux-based Apps on your Chromebook. Like Windows’ .exe or .msi or Mac OS’ .dmg, Linux applications have their own application package file extension. This is, however, dependent on the Linux distribution. Debian-based Linux distros use .deb while Redhat and Fedora Linux distros use .rpm. However, newer more universal application package formats have arisen.
Flatpaks (backed by Linux Mint) and snaps(backed by Ubuntu) are the newer, modern ways of packaging and distributing Linux applications. You can browse through and search for flatpak apps from the flatpakhub.org website and snaps from snapcraft.io site. Whatever option you choose will most likely depend on the file format that the application you wish to install supports.
I have personally installed Gimp, Sublime Text, Spotify, VLC through flatpaks. I am going to reserve the process of installing Flatpak and Snap applications on Chromebooks in a follow-up post. So keep tabs on my subsequent posts.
Otherwise, that’s all for now. Let me know in the comments below if you succeeded in installing Linux on your Chromebook and perhaps anything you want to cover in subsequent articles.