[GUIDE][PROJECT CROISSANT] Installing official Chrome OS on any device (PC/PC-like)

Search This thread

alesimula

Senior Member
Apr 2, 2016
331
514
r2ZCej0.png
CHROME OS ON ANY DEVICE

About Project Croissant (formerly known as Ć̸h̷̢̡r̢͝o̡҉ḿ̴̢̧e̷͜҉f̡͝y͝͞͡͡)

This project is aimed at making Chrome OS (the official releases by google) available for any non-chromebook devices (ATM The device must be able to boot from live USB, this excludes most Android-only devices);
The steps can also be followed on a chromebook, to install an image with android and linux support.
The script uses an official Chrome OS image, while it uses the Kernel and GRUB bootloader from another Chromium OS distribution (EX: ArnoldTheBat builds).
This project has an official GitHub/Wiki page, a Telegram group, a Twitter page and is the result of many ideas and contributions.
Please fill this survey to let us know whether Chromefy works (or doesn't) on your device


Required files

  • An official Chrome OS recovery image (downloads on the right; RECOMMENDED: eve (best) or pyro are the most complete images [must be from the same chipset vendor (Ex: Intel, ARM or RockChip); If eve/pyro doesn't work, try an image from a device with a similiar chipset as your own]
  • Another Chrome OS recovery image from a TPM 1.2 device (EX: caroline or kip) or the swtpm.tar file (swtpm TPM2 emulator needs VTPM proxy support in kernel) (this step is only needed if using an image from TPM2 device to fix a login issue, which is most likely the case for newer ones)
  • An image from a Chromium OS distribution (EX: ArnoldTheBat builds).
  • The Chromefy installation script.


Installation guide (Partition method)

For method 1 (bootable USB image generation) check this video guide:


Method 2-B (chromium OS root partition conversion) described below:
Other methods described in the official GitHub/Wiki page.
This procedure will install Chrome OS on top of a Chromium OS kernel, you will thus need to install a Chromium OS distribution on your device first;
RECOMMENDED: ArnoldTheBat builds
NOTE: CloudReady builds are not yet supported due to a different partitioning scheme and incompatible kernel

If you consider this guide too generic, try reading a more comprehensive guide

  1. Flash the selected Chromium OS build on a live USB, boot into the live USB and install it on your HDD/SSD by typing the following command on the shell
    Code:
    sudo /usr/sbin/chromeos-install --dst [COLOR=Blue]YOURDRIVE[/COLOR] [COLOR=DeepSkyBlue](Ex: /dev/sda)[/COLOR]
    now make sure the your chromium HDD/SSD installation is working before proceeding.
  2. Resize the third partition of your sdX drive (EX: sda3 inside sda) from its current size to atleast 4GB; I suggest using Gparted live USB to resize it; you can either downsize sdX1 (data partition) or delete the sdX5 partition (we won't need it) to get more unallocated space.
  3. Boot from your live USB again, make sure you have your Chrome OS images available and run the installation script with the following command
    Code:
    sudo bash /path/to/chromefy.sh [COLOR="blue"]YOURSYSTEMPARTITION[/COLOR][COLOR="DeepSkyBlue"](EX: /dev/sda3)[/COLOR] /path/to/chosenchromeosbuild.bin /path/to/carolinebuild.bin_OR_swtpm.tar
  4. Don't leave live USB yet, make a powerwash (manually) by typing
    Code:
    sudo mkfs.ext4 [COLOR="Blue"]YOURDATAPARTITION[/COLOR][COLOR="DeepSkyBlue"](Ex: /dev/sda1)[/COLOR]

You can now reboot and enjoy your new "chromebook" :D


Images supporting swtpm TPM2 emulator

FAQ
  • Can I dualboot with Windows/Linux?
    Yes, but it's a little more complicated
  • Will this ever work on CloudReady?
    We don't know, nor we have any ETAs. There's currently a repartitioned image (still not working with chromefy)
  • My motion sensors do not work, how do I rotate the screen?
    Laptop mode/keyboard connected: press ctrl+shift+f3
    Tablet mode: use this app by Andrew Whaley (source) (check out his blog)
  • Linux apps (crostini) are not working at all, how do i fix it?
    Go check if you have enabled all virtualization related option in your BIOS (Ex: "Intel Virtualization", "VT-x", "VT-e" etc...) (you should)
  • Do automatic updates work? How to update?
    Not at the moment, and it's unlikely we find a workaround; you can update by ONLY repeating step 3 (without step 4).
  • ChromiumOS works on live USB but not HDD, what to do?
    Did you remove the USB before rebooting the fist time? If you did NOT, you might need to reinstall it. If you did, try using fix_grub.sh
  • Some apps (ex: Netflix) do not show up in the Play Store, how do I fix it?
    Read next answer
  • SafetyNet check fails, why?
    For SafetyNet not to break you need two things, leave selinux on enforcing when chromefying (only working on Pie, otherwise will break android container) and disable "cros_debug" in the grub launcher to boot without developer mode (Custom images [ex: CloudRadish] have custom boot entries for this)
  • ChromeOS flags are not showing up, why?
    Try opening the chrome://flags page in incognito mode.


Alternatives
FydeOS

Fyde OS is a Chromium OS based operating system that comes with Android apps; if you don't want to bother with the hassle of running the chromefy script and just want an OS that works out of the box, this might be for you.
...Also the developers are awesome :D

ArnoldTheBat

Does not come with Android apps (yet), but he's awesome too, so there's that


Credits
  • allanin for all of his ideas on Arnoldthebat discussion, most part of the code is from him
  • TCU14 for upgrading, and the MultiBoot guide
  • Dnim Ecaep from the Telegram Group for the shell command to change the SELINUX to permissive
  • Diogo from the Telegram Group for the corrections on the firmware migration
  • Danii from the Telegram Group for the work on the TPM bypass method and TPM2 emulation method
  • sublinhado for writing down the steps needed for the TPM bypass method
  • alesimula for the installation script
  • Giedrius Tamošiūnas (liolka) for the custom chromium kernels
  • ++ some poor unlisted guys
 
Last edited:

alesimula

Senior Member
Apr 2, 2016
331
514

coolloser

Senior Member
Sep 25, 2009
404
104
Calgary
Play Store (and crostini) works.

And yes, you can install it over FydeOS;
Some users report Arnold kernel working better for them, for others it's Fyde, so just test both to find the best one for your device

Tried it with Arnold special build on my AMD-450 with Radeon GPU and got a bootloop. I wasn't surprised because I don't think that there are any chromebooks with AMD chipset yet! The procedure was pretty painless though, thanks for all your hard work. :)
 

alesimula

Senior Member
Apr 2, 2016
331
514
Tried it with Arnold special build on my AMD-450 with Radeon GPU and got a bootloop. I wasn't surprised because I don't think that there are any chromebooks with AMD chipset yet! The procedure was pretty painless though, thanks for all your hard work. :)
Just make sure you didn't accidentally use the ARM build
 
Last edited:

DiogoSilva48

Senior Member
Feb 19, 2016
810
241
Oporto

zZSETHZz

Member
Feb 22, 2016
13
16
Tried that some time ago and never worked for me as well as this method, also this one let's you have Crostini with the new recovery images that have tpm protection.

That is simply a hardware based issue and not selecting the right build. I admit my project needs more work but even the github page tells you to use a build close to your own hardware. Also the TPM is bypassed and not a functioning part of the OS in this regard the same as mine, from a quick look anyway.

All this does is the exact same as my script but you have to download a lot of other crap too, my script does it all for you. This seems a rather long method to get the exact same thing.

Mine also doesn't require any messing with partitions, even between upgrading to newer versions.
 
Last edited:

DiogoSilva48

Senior Member
Feb 19, 2016
810
241
Oporto
That is simply a hardware based issue and not selecting the right build. I admit my project needs more work but even the github page tells you to use a build close to your own hardware. Also the TPM is bypassed and not a functioning part of the OS in this regard the same as mine, from a quick look anyway.

All this does is the exact same as my script but you have to download a lot of other crap too, my script does it all for you. This seems a rather long method to get the exact same thing.

Mine also doesn't require any messing with partitions, even between upgrading to newer versions.
Not build problem since I have an Ivy Bridge system and I'm using eve (pixelbook) recovery image and works perfectly, and maybe it's not your script fault, I don't remember it to be honest, I used it once 2 or more months ago. But another guy also has a script that downloads the image automatically. But I'm telling you to please join our telegram group, it's better if we work all together. I apologise if I somehow offended you.
 

zZSETHZz

Member
Feb 22, 2016
13
16
Not build problem since I have an Ivy Bridge system and I'm using eve (pixelbook) recovery image and works perfectly, and maybe it's not your script fault, I don't remember it to be honest, I used it once 2 or more months ago. But another guy also has a script that downloads the image automatically. But I'm telling you to please join our telegram group, it's better if we work all together. I apologise if I somehow offended you.

Oh no you haven't offended me at all! Don't want you to think you have lol, I'm just joining telegram now as I've not used it before however it won't send me a verification message which is rather annoying. I was intended on seeing if its something that could be worked on together.
 
  • Like
Reactions: DiogoSilva48

DiogoSilva48

Senior Member
Feb 19, 2016
810
241
Oporto
Oh no you haven't offended me at all! Don't want you to think you have lol, I'm just joining telegram now as I've not used it before however it won't send me a verification message which is rather annoying. I was intended on seeing if its something that could be worked on together.
Alright, thanks, I will be waiting for you there ? good luck, if you need anything related to telegram or anything pm me.
 

alesimula

Senior Member
Apr 2, 2016
331
514
That is simply a hardware based issue and not selecting the right build. I admit my project needs more work but even the github page tells you to use a build close to your own hardware. Also the TPM is bypassed and not a functioning part of the OS in this regard the same as mine, from a quick look anyway.

All this does is the exact same as my script but you have to download a lot of other crap too, my script does it all for you. This seems a rather long method to get the exact same thing.

Mine also doesn't require any messing with partitions, even between upgrading to newer versions.

Your script, if I recall, uses the kernel from the downloaded chrome OS build, that's why you had to pick a version from a device with a similiar processor.

This not only limits the number of builds you can install, but, by extension, the features you can have, and the conpatible devices, and many drivers (bluetooth and stuff) may not work

This method copies the kernel from chromiumOS (as well as kernel modules and certificates)
 
Last edited:
  • Like
Reactions: Natatud

alesimula

Senior Member
Apr 2, 2016
331
514
Will this method give Android and Linux app support to devices that Google hasn't enabled that for? I have an Acer C720p that's been an awesome Chromebook, and I use Ubuntu on it as well using crouton. I suspect it would run Android just as well, but so far the ability hasn't been unlocked officially.

Yes (but in case you have a BayTrail device, still no linux)
 

Top Liked Posts

  • There are no posts matching your filters.
  • 117
    r2ZCej0.png
    CHROME OS ON ANY DEVICE

    About Project Croissant (formerly known as Ć̸h̷̢̡r̢͝o̡҉ḿ̴̢̧e̷͜҉f̡͝y͝͞͡͡)

    This project is aimed at making Chrome OS (the official releases by google) available for any non-chromebook devices (ATM The device must be able to boot from live USB, this excludes most Android-only devices);
    The steps can also be followed on a chromebook, to install an image with android and linux support.
    The script uses an official Chrome OS image, while it uses the Kernel and GRUB bootloader from another Chromium OS distribution (EX: ArnoldTheBat builds).
    This project has an official GitHub/Wiki page, a Telegram group, a Twitter page and is the result of many ideas and contributions.
    Please fill this survey to let us know whether Chromefy works (or doesn't) on your device


    Required files

    • An official Chrome OS recovery image (downloads on the right; RECOMMENDED: eve (best) or pyro are the most complete images [must be from the same chipset vendor (Ex: Intel, ARM or RockChip); If eve/pyro doesn't work, try an image from a device with a similiar chipset as your own]
    • Another Chrome OS recovery image from a TPM 1.2 device (EX: caroline or kip) or the swtpm.tar file (swtpm TPM2 emulator needs VTPM proxy support in kernel) (this step is only needed if using an image from TPM2 device to fix a login issue, which is most likely the case for newer ones)
    • An image from a Chromium OS distribution (EX: ArnoldTheBat builds).
    • The Chromefy installation script.


    Installation guide (Partition method)

    For method 1 (bootable USB image generation) check this video guide:


    Method 2-B (chromium OS root partition conversion) described below:
    Other methods described in the official GitHub/Wiki page.
    This procedure will install Chrome OS on top of a Chromium OS kernel, you will thus need to install a Chromium OS distribution on your device first;
    RECOMMENDED: ArnoldTheBat builds
    NOTE: CloudReady builds are not yet supported due to a different partitioning scheme and incompatible kernel

    If you consider this guide too generic, try reading a more comprehensive guide

    1. Flash the selected Chromium OS build on a live USB, boot into the live USB and install it on your HDD/SSD by typing the following command on the shell
      Code:
      sudo /usr/sbin/chromeos-install --dst [COLOR=Blue]YOURDRIVE[/COLOR] [COLOR=DeepSkyBlue](Ex: /dev/sda)[/COLOR]
      now make sure the your chromium HDD/SSD installation is working before proceeding.
    2. Resize the third partition of your sdX drive (EX: sda3 inside sda) from its current size to atleast 4GB; I suggest using Gparted live USB to resize it; you can either downsize sdX1 (data partition) or delete the sdX5 partition (we won't need it) to get more unallocated space.
    3. Boot from your live USB again, make sure you have your Chrome OS images available and run the installation script with the following command
      Code:
      sudo bash /path/to/chromefy.sh [COLOR="blue"]YOURSYSTEMPARTITION[/COLOR][COLOR="DeepSkyBlue"](EX: /dev/sda3)[/COLOR] /path/to/chosenchromeosbuild.bin /path/to/carolinebuild.bin_OR_swtpm.tar
    4. Don't leave live USB yet, make a powerwash (manually) by typing
      Code:
      sudo mkfs.ext4 [COLOR="Blue"]YOURDATAPARTITION[/COLOR][COLOR="DeepSkyBlue"](Ex: /dev/sda1)[/COLOR]

    You can now reboot and enjoy your new "chromebook" :D


    Images supporting swtpm TPM2 emulator

    FAQ
    • Can I dualboot with Windows/Linux?
      Yes, but it's a little more complicated
    • Will this ever work on CloudReady?
      We don't know, nor we have any ETAs. There's currently a repartitioned image (still not working with chromefy)
    • My motion sensors do not work, how do I rotate the screen?
      Laptop mode/keyboard connected: press ctrl+shift+f3
      Tablet mode: use this app by Andrew Whaley (source) (check out his blog)
    • Linux apps (crostini) are not working at all, how do i fix it?
      Go check if you have enabled all virtualization related option in your BIOS (Ex: "Intel Virtualization", "VT-x", "VT-e" etc...) (you should)
    • Do automatic updates work? How to update?
      Not at the moment, and it's unlikely we find a workaround; you can update by ONLY repeating step 3 (without step 4).
    • ChromiumOS works on live USB but not HDD, what to do?
      Did you remove the USB before rebooting the fist time? If you did NOT, you might need to reinstall it. If you did, try using fix_grub.sh
    • Some apps (ex: Netflix) do not show up in the Play Store, how do I fix it?
      Read next answer
    • SafetyNet check fails, why?
      For SafetyNet not to break you need two things, leave selinux on enforcing when chromefying (only working on Pie, otherwise will break android container) and disable "cros_debug" in the grub launcher to boot without developer mode (Custom images [ex: CloudRadish] have custom boot entries for this)
    • ChromeOS flags are not showing up, why?
      Try opening the chrome://flags page in incognito mode.


    Alternatives
    FydeOS

    Fyde OS is a Chromium OS based operating system that comes with Android apps; if you don't want to bother with the hassle of running the chromefy script and just want an OS that works out of the box, this might be for you.
    ...Also the developers are awesome :D

    ArnoldTheBat

    Does not come with Android apps (yet), but he's awesome too, so there's that


    Credits
    • allanin for all of his ideas on Arnoldthebat discussion, most part of the code is from him
    • TCU14 for upgrading, and the MultiBoot guide
    • Dnim Ecaep from the Telegram Group for the shell command to change the SELINUX to permissive
    • Diogo from the Telegram Group for the corrections on the firmware migration
    • Danii from the Telegram Group for the work on the TPM bypass method and TPM2 emulation method
    • sublinhado for writing down the steps needed for the TPM bypass method
    • alesimula for the installation script
    • Giedrius Tamošiūnas (liolka) for the custom chromium kernels
    • ++ some poor unlisted guys
    4
    Tried that some time ago and never worked for me as well as this method, also this one let's you have Crostini with the new recovery images that have tpm protection.

    That is simply a hardware based issue and not selecting the right build. I admit my project needs more work but even the github page tells you to use a build close to your own hardware. Also the TPM is bypassed and not a functioning part of the OS in this regard the same as mine, from a quick look anyway.

    All this does is the exact same as my script but you have to download a lot of other crap too, my script does it all for you. This seems a rather long method to get the exact same thing.

    Mine also doesn't require any messing with partitions, even between upgrading to newer versions.
    4
    Amazing. Just confirming whether Google play store work in this?

    Awesome work!
    Does it work with FydeOS builds?

    Play Store (and crostini) works.

    And yes, you can install it over FydeOS;
    Some users report Arnold kernel working better for them, for others it's Fyde, so just test both to find the best one for your device
    4
    I'm using ArnoldTheBat's Chromium OS from a USB drive on Lenovo Yoga 2 Pro, I wonder if I can install Chrome OS on top of it to the same USB drive? I want to keep my Windows 10 on the SSD intact and don't want to install Chromium on the different partition of the same SSD, because Windows update will inevitably mess up Chromium sooner or later. The laptop has 2 USB ports, so I would be able to use another USB drive if needed. I think many people would be grateful if someone wrote instructions on how to do it on a USB drive instead of a multiboot on one SSD/HDD. Thanks!