Building
This will build the default output for your Lenovo Chromebook Duet 3 (11”).
$ nix-build --argstr device lenovo-wormdingler -A outputs.default
The default output is a disk-image that can be written on a storage media that your device can boot from.
Installation
This one is annoying to get started currently. Without a full Mobile NixOS build, you will need to fill in some gaps manually.
The upstream documentation about the disk format may help shed some light in understanding how these devices boot.
One of the important thing to realise is that you will likely need to dd
the
image to a storage media, either external or internal.
The kpart
output can be used to build only the stage-1, which is helpful for
updating the kernel and the stage-1 boot program.
$ nix-build --argstr device lenovo-wormdingler -A outputs.kpart
This can be `dd’d over the first partition on an existing storage media containing a Mobile NixOS installation.
Device-specific notes
Developer mode
For more details the Firmware Menu Interface section from the upstream documentation can be read.
You will need to:
-
Boot in Recovery mode by powering on using
Power
+Volume-Up
+Volume-Down
-
Activate Developer mode by navigating the on-screen menu
Note that this is only to allow you to boot unverified images.
You may want to configure other options with GBB flags. This is left as an exercise to the reader.
Wi-Fi support
The Wi-Fi interface requires the modem to be initialized, even on non-LTE devices.
The modem requires currently unredistributable firmware. It has been overlaid
in the package set as chromeos-sc7180-unredistributable-firmware
.
For the time being, you will need to manually add this to your configuration for Wi-Fi.
{ /* configuration.nix */
hardware.firmware = [
pkgs.chromeos-sc7180-unredistributable-firmware
];
}
You will also need to connect with an alternative connection with the installer, or build it with the firmware yourself.