Skip to content

Carpenters on a Chromebook #746

Open
@MiddelkoopT

Description

Developer mode (Linux) on the Chromebook is leaving beta and has become a stable Linux environment and now should be usable in a Carpentries class.

I have been using this as my daily driver for Linux at home now for a couple of years and have had minimal issues with it, less than I have had in the past using WSL, WSL2, MobaXterm, cygwin, and Brew on OSX. Others have also been using it for carpentries as well:

This should not be confused with "Developer mode," which is very evasive as described in issue #164, this is a built-in VM inside a chromebook commonly known as crostini.

There are a number of features that makes it transparent such as built-in proxy for localhost so users can easily view web servers bound to localhost, IPv6 support, built-in X11 support, Docker, etc. Even Microsoft Visual Code Studio works without issue like a native application. The only compatibility issues I have had is when trying to run alternative container systems (singularity - it might be able to run but the default install fails, minikube etc) and most of these would have issues on a MacOS or campus cluster HPC system (VM in a VM is not supported).

Setup is simple. Just go to the launcher -> setting (gear) -> advanced -> developers -> and in "Linux development environment" click "Turn On". Optionally uses can change their username and increase the allocated size.

After that participants are in a very clean Debian 10 environment that "just works".

For example, for Jupyter you can simply run

sudo apt-get update
sudo apt-get install -y python3-pip
python3 -m pip install jupyterlab
source ~/.profile # a new system does not have ~/.local/bin and not on the path
jupyter-lab

This will automatically connect the chromebook browser to localhost and show the Jupyterlab notebook. This all worked well on a $150 machine with 4GB of ram in under 5 min.

And if anything goes wrong user can simply turn disable (delete) Linux and enable it again for a clean environment.

I have taught computing classes for a number years, and recently have had students use them with success.

I would be willing to author a PR if this is agreeable to remove the "not allowed" status of the Chromebook and author any instructions/documentation that may needed.

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions