While I'm currently not a huge fan of Chrome OS or Chromebooks in general since they are rather limited in their functionality, I still wanted to give it a try. Maybe it proves me wrong and became very good? So here's a short guide on how I built a bootable Chromium OS USB-Stick. A lot of this is mentioned on the official chromium os page.
I'm using an ubuntu 16.04 to build it which is also the recommended version from the chromium project. Note that I installed this machine just for this purpose.
First, you'll need to install some basic stuff:
[archy@buildbot ~]$ sudo apt-get -y install git-core gitk git-gui subversion curl lvm2 thin-provisioning-tools python-pkg-resources python-virtualenv python-oauth2client vim
Next up, Google has written some wrappers for git which, they say, is required to build it. So you'll need to git clone them locally and set the path variable to include them.
[archy@buildbot ~]$ git clone https://chromium.googlesource.com/chromium/tools/depot_tools
[archy@buildbot ~]$ echo PATH=$PATH:/home/archy/depot_tools
It's also recommended make your sudo a little bit more permissive.
[archy@buildbot ~]$ vim sudo_editor
#!/bin/sh
echo Defaults \!tty_tickets > \$1 # entering your password in one shell will affect other shells
echo Defautls timestamp_timeout=180 >> \$1 # set the time between re-entering your password in minutes
[archy@buildbot ~]$ chmod +x sudo_editor
[archy@buildbot ~]$ sudo EDITOR=./sudo_editor visudo -f /etc/sudoers.d/relax_requirements
With some prerequisites done, let's pull the sources. Start by creating a directory where your sources will live. For me, it's $HOME/chromiumos.
[archy@buildbot ~]$ mkdir chromiumos && cd chromiumos
[archy@buildbot ~]$ repo init -u https://chromium.googlesource.com/chromiumos/manifest.git --repo-url https://chromium.googlesource.com/external/repo.git
[archy@buildbot ~]$ repo sync -j6 # this is the number of workers (cores) to the sync job.
The sync might take a while depending on your connection speed. For me, it took close to 1 Hour.
If the sync is done, we can continue to build chromium-os. Export the architecture your're running, if it's on a pc (like in my case), plain 'amd64-generic' should do.
[archy@buildbot ~]$ export BOARD=amd64-generic
[archy@buildbot ~]$ cros_sdk -- ./build_packages --board=${BOARD}
When the packages are built, you can continue with the image which will then be written to a flash drive in a later step.
[archy@buildbot ~]$ cros_sdk -- ./build_image --board=${BOARD}
If that's done, you've built yourself an image of chromium-os. The last step is to write it to a thumb drive and this can be easily achieved by cros_sdk again.
[archy@buildbot ~]$ cros_sdk -- cros flash --board=${BOARD} usb://
After it's finished its operation you'll have a bootable chromium-os usb stick.
Personal Conclusion about chromium os:
Now I've tried it one a spare drive on my laptop and for me personally, I'm not very fond of it.
For me personally, it's too limited in its capabilities. While I can run a lot of stuff in the browser through extensions (ssh for example) I still miss some control over the system. I will definitely continue to use chromium and chromium-based browsers as my main choice but as an os it's not something I want.
Feel free to comment and / or suggest a topic.
Comments
Post a Comment