Giving my old Chromebook a second life with Fedora
Tags: chromebook, linux, fedora, sustainability
Published: 2024-03-05 14:15:42

In 2017 I got my brother a Chromebook as a lightweight computer for traveling. I chose the Acer CB5-132T, a machine with 4GB of RAM and a Quad Core Intel Celeron processor - relatively powerful for a Chromebook at the time. When he returned from traveling he gave it back to me and since then I've been using it on and off as an internet machine.

I never used it as my primary device, that has always been a regular tower PC or a powerful notebook from work, but for casual browsing and YouTube videos the Chromebook was far superior to whichever tablet I had lying around at the time. It does the basics well with great battery life as well as a decent keyboard + trackpad.

Five years after I got it, Google stopped providing new OS-updates at some point in 2022, which meant I was stuck with a device that's basically an unpatched Chrome Browser with a keyboard. At the time I had a few travel-related things going on myself and had to reduce the amount of devices I rely on, so it ended up on a shelf.

Last year I dug it up again when I visited my parents for Christmas and took it with me. Since then I've been using it a fair bit for casual browsing, since I'm not a huge fan of the mobile-device optimized web experience and wanted all the ad- and tracking-blockers that I could run on ChromeOS. The completely outdated ChromeOS version stopped me from using it for anything serious, though.

Last weekend, I had some time on my hands and decided to do something about that. I set out to install Linux on my Chromebook and did some research about that. I found [this](https://medium.com/@simstems/how-i-got-the-acer-chromebook-r11-cb5-132t-to-run-parrot-security-os-without-crouton-d282a110060a) nice article outlining the basic steps, which was very useful. I should note though, that it's a bit outdated.

The first step was backing up all the data and firmware, which I did by following the article mentioned above. After I activated developer mode, I was ready for the next step. I shut down the notebook down and opened it by unscrewing the 11 screws that attach the bottom to the device (super-easy, but it seems like half the amount of screws would have also done the trick). I located the big black screw, removed it and closed it down again. Why would I remove a random screw from the notebook? Well, this screw basically makes the firmware read-only and we need to flash a custom firmware to be able to install an alternative OS.

![Magic Screw](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mvbcil2nlmgefpujwk74.jpg)
  
I followed the blog post and flashed the `FW_LEGACY` Firmware - you shouldn't though. The script in the blog post is a bit outdated as I learned later, but it didn't break anything. Now I thought that I was ready to run Linux and tried to find a way to create a bootable USB drive from the Chromebook. I had already downloaded a ISO for Linux and learned that you can use the Chromebook Recovery Utility Chrome extension to do that.

There was just one problem - it wasn't available for my EOL-version of ChromeOS. I had to track down an older version of the extension on the interwebs, which I downloaded and extracted. Chrome's crx-extension format is basically a ZIP file. Then I activated the developer mode in Chromes extension settings and chose to load an unpacked extension, selected the extracted directory and boom, the extension was loaded.

Why didn't I just create the bootable USB drive from a _real_ OS? Sometimes, I like to make life difficult for myself and this way I learned a bit more about Chrome extensions.  
  
After solving the problem I had created, I was able to create a bootable USB-drive with Fedora 39 and the Xfce desktop environment. I proceeded to shut down ChromeOS for what I thought was the list time and tried booting from USB. Frustratingly it didn't work. At first I suspected, the USB-drive but I was able to boot into Fedora on another Notebook so that couldn't be it.

Next, I researched more about Coreboot, which is basically the open source firmware that I supposedly flashed. I checked the compatibility list on [MrChromebox's](https://mrchromebox.tech/#devices) super helpful website and saw that my device is compatible. I then read a bit more about the difference between `RW_LEGACY`and `Full ROM` firmwares and learned, that the former is commonly used if you want to dual boot ChromeOS, which didn't make a lot of sense for me, since that's EOL for my device, so I chose to flash the full ROM.
  
Using the [Firmware Utility](https://mrchromebox.tech/#fwscript) was a breeze and I was able to flash the full ROM in a few minutes. I anxiously rebooted the Chromebook to figure out if I had bricked it, but after a little bit it asked me if I wanted to boot into the Fedora live system. I was super happy and did exactly that. I hadn't used Fedora before and only played with Xfce on a very old notebook many moons ago, but both felt familiar immediately.

There are [some recommendations](https://docs.chrultrabook.com/docs/installing/installing-linux.html) for distributions that work well on Chromebooks by the Chrultrabook community and after checking out their websites, I settled on [Fedora with Xfce](https://fedoraproject.org/spins/xfce/) because it's lightweight without reminding me of Windows 95 while being customizable and coming with the bare minimum pre-installed. Chromebooks tend to have little local storage so I was looking for a basic distribution.  
  
After test-driving my choice in the live mode and seeing how responsive it was while having a relatively low memory footprint I decided to commit to it and installed it. The installation took 20 to 30 minutes and then I was able to use it. Next, I installed a few additional tools that I use, like Keepass, and removed other stuff that I don't need and spent some time customizing the interface a bit until it reminded me a bit more of my daily-driver - MacOS. I was very pleased with all the customization options that Xfce offers.  
  
I was a bit worried in the beginning that there would be sound issues or some parts of the device wouldn't work as expected, but those concerns turned out to be unfounded. Everything I tried so far is working flawlessly, even the touch screen. It seems like driver support and coreboot have come a long way in recent years.  
  
There are some things that I have yet to re-create from the Chromebook:  
  
- Ability to run Android apps from the Play store (although I don't need that, now that I can run Keepass natively)
- Smooth integration of Google Drive
- Media Keys on the Keyboard are now F-Keys and I have to set up bindings some day
- Helping big brother by having them collect a bunch of data without me being able to turn that off
  
These are no big losses in my book and are easily balanced by:  
  
- Firefox instead of Chrome
- Security/software updates (again)
- Full linux customizability
- Avoiding E-Waste (for now) by being able to continue using this machine

The only thing that would be nice would be a bigger built-in screen with a higher resolution, but this one is still fine for my purposes.  

I should note that it has only been a few days of me using this machine in its new configuration so there's still a chance I may end up hating it down the road, but with Linux as a solid base I think that's not very likely.  

I'm not entirely sure why I wrote this, but I had fun and maybe you learned something as well.

&mdash; Maurice