This project will no longer be maintained and will be turned into public archive as of 2024. Development of Chromium OS for VMware will continue on openFyde: https://github.com/openFyde/overlay-amd64-openfyde_vmware
If you aren't bothered with the detailed technicality and are only after the pre-built "click-to-play" image, check out the release tab.
This repository contains necessary files that work with the Chromium OS SDK (cros_sdk) to build Chromium OS image that works with VMWare virtual machine client.
VMWare virtual machine clients work on more OS platforms than kvm-qemu, which is the "official VM support for Chromium OS" shipped with cros-sdk. If you are interested in working / testing / tinkering Chromium OS on your favourite OS platform that does not support kvm-qemu natively, this may help. Otherwise, you don't need this.
The following is a quick overview guide to get you started. This guide assumes you are comfortable with operations under Linux shell environment and have basic familiarity with the bible.
0. Read the bible, if you have not yet done so.
It's best if could give the entire process a go and check if you could produce a working Chromium OS image.
This overlay was only tested under release-R75-12105.B branch of the Chromium OS manifest, per Get the source code in the bible, you would need to do the following to get the code:
(outside)
cd ${HOME}/chromiumos
repo init -u https://chromium.googlesource.com/chromiumos/manifest.git --repo-url https://chromium.googlesource.com/external/repo.git -b release-R75-12105.B
repo sync -j4
- At this point, you should be in your chroot.
- Clone this repository to
~/trunk/src/overlays
under your cros_sdk chroot.- Or you can clone to somewhere else and symlink to
~/trunk/src/overlays
for better management - This requires a
.local_mounts
file in your~/trunk/src/scripts
per here.
- Or you can clone to somewhere else and symlink to
- Edit
~/trunk/src/third_party/chromiumos-overlay/eclass/cros-board.eclass
and addamd64-generic_vmware
to the list. Pay attention to the dash and underscore in the board name, try not to mis-spell.
- Per the bible, now you can do:
(inside) export BOARD=amd64-generic_vmware (inside) setup_board --board=${BOARD} (inside) ./build_packages --board=${BOARD} --nousepkg (inside) ./build_image --board=${BOARD} --noenable_rootfs_verification test
- Note that the
--nousepkg
flag is required to combat./build_packages
being lazy to pull pre-built binaries and cause build error.
Assuming the build went well and now you have the chromiumos_test_image.bin
file. There is this convert_to_vmware.sh
script in this repository that does the conversion for you. Execute the script to see help.
- We have only tested VMWare Workstation 15 & Fusion 11, lower versions of VMWare clients may not work.
- You need to create a "Custom VM" and choose "Other Linux kernel 4.x (64 bits)", choose the VMDK file you've just built when prompted.
- In the Settings of this VM, under "Hard drive" you need to convert bus type from SCSI to either NVMe or SSD.
- In the Settings of this VM, under "Display", you need to turn on 3D acceleration and ideally allocate 768MB shared memory.
- This Chromium OS VM is only meant for development purposes.
- To get help, please report any issue in this repo or join our telegram group.