Coder Social home page Coder Social logo

nikolas-n / gnu-linux-on-asus-c201-chromebook Goto Github PK

View Code? Open in Web Editor NEW
46.0 8.0 6.0 49 KB

Links and guides about GNU/Linux on Asus C201 (C201P and C201PA) chromebook (veyron_speedy)

gnu-linux linux linux-kernel c201 asus chromebook veyron-speedy

gnu-linux-on-asus-c201-chromebook's Introduction

GNU/Linux and Asus C201 Chromebook

Here you can find links and guides about installing and configuring GNU/Linux on the Asus C201 (C201P or C201PA) Chromebook (veryon speedy). I do not guarantee that any of them really works. I have noted down what I have tried and what it worked for me. The experience is absolutely personal and I do not (and cannot) claim that any image/distro does not work for another person.

I am trying to gather as much information as possible, so I will also post stuff not necessarily complete like forum posts, because they might be of use for other people.

NOTE: Don't forget that the wifi chipset (BRCM4354) on the C201 needs proprietary drivers, so it's certain that installing a totally libre distribution will not get it working. Either you buy a wifi dongle which works with free drivers (such as the ones with the Atheros AR9271 chipset) or you use the proprietary drivers which can be found in the Chrome OS that the chromebook ships with.

Libreboot

The installation was very straightforward. Disassembling the chromebook was a bit hard, but all in all everything went ok (thanks @paulkocialkowski!).

Installing GNU/Linux distros on the Asus C201 Chromebook (tested and not)

If you want a plug and play image, you can take that from the torrent I'm seeding (you can find the torrent in this repo: ArchLinuxARM-veyron-latest_with-x11-lightdm-mate.tar.bz2.torrent. It's the latest (as of Nov-08-2019) Arch Linux ARM distro where I've installed X11, lightdm and mate. It hasn't been tested yet, so I'm not sure it is working. In any case, you'll still need to have a boot partition, so you should (partly) follow this guide. Good luck!

Good news! You can always boot the chromebook from a USB!

For anybody else having this problem booting from USB on a C201, I was having the same problem. I tried installing debian jessie, debian stretch and arch and wasn't able to boot any of them. Then I realized that if I took out the USB drive and then put it back in and waited about 4-5 seconds, I could Ctrl-U and it would boot. (first I have to Ctrl-H to hold the libreboot screen.)

link to original (Arch Linux ARM forum)

Devsus is a project for installing Libre Devuan (a fork of Debian without the evil systemd) on the machine.

To successfully compile the image, you need to run it on a Devuan machine. I failed to produce the image on my Debian Stretch. Nonetheless, I downloaded the image and dd-ed it to an SD card and this distro works far better than the Arch Linux one; I highly recommend it!

This image (with installation guide) is the Devuan distribution but with a non-free kernel, i.e. the internal Broadcom wifi chip works.

Arch Linux ARM [It works!] [Well... With some modifications now... Details below!]

This guide of installing Arch Linux ARM is for another chromebook, C100P, but it's the only one that worked straight away without absolutely any problem. I installed X, lightdm and MATE and it just works. I haven't yet tested the webcam and the HDMI but will do soon.

Following the same guide now with the latest version of the OS, at the time of writing that is 04-Oct-2019, the boot will hang on Network Services and Create Volatile Files and Directories. To fix that, I just deleted a couple of files and made some other changes... The following:

  • Delete /usr/lib/systemd/system/systemd-networkd.service
  • Delete /etc/resolv.conf
  • Delete /etc/resolvconf.conf
  • Create /etc/resolv.conf and add nameserver 8.8.8.8
  • Delete /usr/lib/systemd/system/systemd-timesyncd.service
  • Change the following line of /usr/lib/systemd/system/systemd-tmpfiles-setup.service :

ExecStart=/usr/bin/systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev

to

ExecStart=echo "whatever"

Then you'll be able to boot. To install any package from pacman, you'll need to run

pacman-key --init

pacman-key --populate

Then, you'll have to restore the /usr/lib/systemd/system/systemd-tmpfiles-setup.service to what it was. Before rebooting, also delete the contents of /tmp/*

It will work.

PrawnOS [It Works!] [Compiled images available under "releases"]

Build Debian filesystem with:

  • No blobs, anywhere.
  • Sources from only main, not contrib or non-free which keeps Debian libre.
  • Currently PrawnOS supports xfce and lxqt as choices for desktop enviroment.

Build a deblobbed mainline kernel with:

  • Patches for reliable usb.
  • Patches to support the custom GPT partition table required to boot.
  • Support for Atheros AR9271 and AR7010 WiFi dongles
  • Support for CSR8150 bluetooth dongles

This is a guide to migrate the Arch Linux installation to a Parabola one. Parabola is one of the few FSF endorsed GNU/Linux distributions.

From the Introduction of the page:

While there's a fair bit of documentation on how others have installed Devuan/Arch on this computer, there's very little information in the Gentoo realm on the Asus C201/C100P, other devices with an RK3288 SoC, or ARM Chromebooks in general. This is how I managed to get Gentoo working on the C201. I went the Libreboot route, but that's up to you.

Install Debian Stretch with the debian mainline kernel (not the Chrome OS one), more specifically the kernel 4.9.0-3-armmp-lpae.

I followed the guide with altering just the distro from Jessie to Stretch. Couldn't boot it. I eventually managed to make it work with the kernel from the Arch Linux ARM distro but haven't managed to get wifi to work too yet. Here you can find a discussion related to installing Debian on the machine. This blog of Greg Alexander and in particular this post are also very helpful.

That's just a very interesting forum topic on linuxquestions.org where some people claim that they managed to install Slackware (version 14.1) on the machine. I haven't tried that yet.

From the README.md of the repo:

This repo is a guide on how to install Dragora version 3 on the C201 Chromebook. Some of the things require some GNU/Linux know-how but I will attempt to make it easy to understand. This will not only help you install Dragora but should also help you boot your own modified version of Linux/Linux-libre or any ARM-supported GNU/Linux distributions on the C201.

I haven't tried it but the script provided for the C201 (here) is very helpful in understanding the whole procedure of making an SD work for the chromebook.

You can give it a try. There are instructions only for the ChromeOS kernel, the respective instructions for the mainline one are not yet present.

The Ubuntu MATE team have made an Ubuntu MATE 15.04 root file system image for ARMv7 devices. This root file system is intended for ARMv7 enthusiasts and board manufacturers who'd like to make an Ubuntu MATE image for their device.

(from the repository)

Setting up Linux Distributions

Alsa configuration

Jan Prunk has written a guide on how to setup ALSA on a C201 running Debian (originally Jessie and then update to Stretch) in this blog post. Try also this link, if the previous is unavailable.

gnu-linux-on-asus-c201-chromebook's People

Contributors

nikolas-n avatar solidhal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gnu-linux-on-asus-c201-chromebook's Issues

ArchLinux Torrent Image

Can anyone suggest a method to unpack this image (on the C201 - I'm working from a crouton chroot) onto a micro SD card (or usb)?

I've tried the following, which is unpacking ok, but it's generating lots of 'Can't create symlink' errors...
From a terminal session, cd into the location where the image is stored, then:
sudo tar -xvf ArchLinuxARM-veyron-latest_with-x11-lightdm-mate.tar.bz2 -C /media/removable/'USB Drive'

I suspect I need to somehow mount my target media in a chroot as /, and then write to it. Just not sure how I can do that on the C201.

GuixSD?

Any plans on testing a GuixSD ?

About Devuan with non-deblocked kernel

Installing OS was pretty easy but I cannot expand the image size after installation. System is installed on 1.8 GB partition and cannot be expanded. The wiki says that

The images use recent kernels (4.10, 4.6, and such) which causes a specific
issue when you try to resize or fsck ext{2,3,4}: they use some ext4 features
not yet available in the standard Devuan Jessie e2fsprogs. Because of this, you
are advised to install e2fsprogs from jessie-backports if you are in need of
using these tools on these images.

I could not install e2fsprogs from jessie-backports. I wonder if you had luck with this OS for Asus c201xx

Libreboot image

I can't find a Libreboot image for the C201. The Libreboot pages you've linked to don't have it either.

Do I have to compile my own image or does someone out there have a working image I can use? @nikolas-n?

Teamwork With The C100P (Asus Flip)?

I just spent some time this weekend getting my C100 running linux and I wonder if an image created for the C100 would run on the C201. I gave up trying to make the Arch linux work but I found that the veyron image produced by Kali works fairly well and seems to be updating after some tweaks. As of this moment they have pulled their current veyron link but I found the 2020.1 edition and it shows a lot of promise. KDE desktop seems to be working well but for some reason my XFCE is freezing. Here are some notes I made along the way:

Source for 2020.1 Kali Image (as of 1/3/21 - as of this date Kali has removed the link from its page, but I saw a note at Kali that they hoped to update the veyron image after they worked out a problem):

https://linuxtracker.org/index.php?page=torrent-details&id=20a3d183df46f06fe989ed234c0e2ddd32d4fd30

https://www.kali.org/docs/arm/kali-linux-asus-chromebook-flip/

Info on getting past error in apt-get-upgrade due to libgcc-9 problem: -- https://crazytechgo.com/libgcc-9-dev-install-kali-linux/


Info on expanding the image to a usable size after installing the image (which is only 7 gb or so) to an SD Card:

https://forums.kali.org/showthread.php?27350-Chromebook-expand-resize-grow-partition-rootfs Increase the size to full capacity (from these notes, just install the cloud-guest-utils package and then run growpart and resize2fs using /dev/sda2 as target :

apt download cloud-guest-utils

growpart /dev/sda 2

resize2fs /dev/sda2

Note that the first has the 2 out with a space; the second command references sda2

if use the microsd card then need to use the instructions mmcblk0

Good news everyone! I've figured out a way to do it reliably. The following steps are expected to be taken from a Chromebook that is booted from an sdcard. Modify the device name if you're using USB.

Code:
mkdir growpart
cd growpart
apt download cloud-guest-utils
dpkg-deb -x cloud-guest.utils . #Note: The period at the end is not a typo and is required. It's saying to extract into the current directory.
cd usr/bin
./growpart /dev/mmcblk1 2 # You will need to make sure your sdcard is mmcblk1 - it'll typically be the only one in the output of ls /dev/mmcblk* that has 2 partitions.
resize2fs /dev/mmcblk1p2 # Again, make sure you're using the correct partition. Also note that while the command may seem to be "frozen" - it's working and may take a while.
cgpt repair /dev/mmcblk1


The stock image comes with XFCE. I installed KDE alongside and it seems to work well, but now(?) my XFCE seems to be freezing. KDE had a problem with no network manager showing. I installed plasma-nm and rebooted and the network manager icon appear in the panel. I installed synaptic too and that seems to load, but trying to install something freezes the machine.

Not sure if I should uninstall XFCE or try to get it to stop freezing.


I am toying with the idea of getting a C201 for the bigger screen and I wonder if my image for the C100 would work as is on the C201. Any idea what likelihood of success might be? If anyone has time to test it ought to be as easy as downloading and burning an sd card or usb with the kali image linked above.

These are really nice machines and it would be great to have a community somewhere to support them - maybe here? If the images are interchangeable we might be able to save people a lot of time on some very nice machines.

Cannot boot Acer IMG

I can't boot the unblobbed Devuan Acer IMG. I followed instructions carefully, but the system simply displays a blank, lit black screen. I had accidentally deviated from instructions prior and flashed the Veyron IMG to the SD card I'm using, and after booting with Ctrl+U it flashed white, then black, then an unlit black screen.

I don't get any output with the Acer image, but at least the screen is lit when blank now? That's something.

Outdated distros

Some of the distros are outdated and don't have ARM support anymore: Kali, Fedora, Ubuntu, but also Libreboot. It might be worth keeping a reference to them but they should at least show a warning.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.