|
1 year ago | |
---|---|---|
.github/workflows | 2 years ago | |
modules | 1 year ago | |
overlays | 2 years ago | |
.gitignore | 2 years ago | |
LICENSE.md | 2 years ago | |
README.md | 2 years ago | |
default.nix | 1 year ago | |
flake.lock | 1 year ago | |
flake.nix | 1 year ago |
README.md
Hardkernel NixOS for ODROID HC4
This is an unofficial installation configuration of NixOS 21.05 for the Hardkernel ODROID HC4 microcomputer.
To build an image that can be flashed to an SD card, run:
$ nix-build
However, you might want to add your own SSH keys to the configuration before doing so.
To flash the created image run
$ nix-shell -p etcher
# If you have polkit enabled
$ etcher
# If you don't have polkit
$ sudo etcher --no-sandbox
Select the SD card image from result/sd-image/nixos-sd-image-21.05pre-git-aarch64-linux.img
and the SD card device and
flash the image onto the device.
Boot the device
Insert the flashed SD card into your HC4 device and let it boot.
Control your device over SSH
Log in to your booted device over SSH and run an initial nixos-rebuild switch
to get the non-cross compiled versions
of all packages. This will also update the u-boot bootloader to load the recently built version of NixOS.
NixOS generations and limitations of the current configuration
The bootloader is set up using the boot.ini
script to enable ease of use with the pre-flashed Petitboot that is
installed in the HC4 SPI flash memory. I have yet to find out how to allow this Petitboot setup to support multiple
generations of NixOS so that you can choose a previous version of the operating system when booting the device. However,
by running the /nix/var/nix/profiles/system-GENERATION-link/bin/switch-to-configuration switch
command you can revert
to a previous generation if you are able to boot the device on the most recent one.