From 9995ba6aaa25d377a686753f0f92da35e7895fe5 Mon Sep 17 00:00:00 2001 From: Emile Date: Sun, 9 Jun 2024 00:29:00 +0200 Subject: playing around with building images for the pi1s --- nix/hosts/pi1/build.sh | 14 ++++++++++++ nix/hosts/pi1/configuration.nix | 50 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) create mode 100644 nix/hosts/pi1/build.sh create mode 100644 nix/hosts/pi1/configuration.nix (limited to 'nix') diff --git a/nix/hosts/pi1/build.sh b/nix/hosts/pi1/build.sh new file mode 100644 index 0000000..bb4fd1d --- /dev/null +++ b/nix/hosts/pi1/build.sh @@ -0,0 +1,14 @@ +# # export NIX_PATH=nixpkgs=/home/jane/local_nixpkgs_checkout +# nix-build --cores 0 '' \ +# -I nixos-config=configuration.nix \ +# -A config.system.build.sdImage \ +# -o result-cross \ +# --keep-going + +nix-build \ + --cores 0 \ + '' \ + -I nixos-config=configuration.nix \ + -A config.system.build.sdImage \ + -o result-cross \ + --show-trace diff --git a/nix/hosts/pi1/configuration.nix b/nix/hosts/pi1/configuration.nix new file mode 100644 index 0000000..9ee73e5 --- /dev/null +++ b/nix/hosts/pi1/configuration.nix @@ -0,0 +1,50 @@ +# Heavily based on https://gist.github.com/sorki/548de08f621b066c94f0c36a7a78cc41#file-configuration-nix-L9 +{ config, lib, ... }: + +{ + imports = [ + + # ./wireless.nix # Just contains the PSK config of my wifi + ]; + + # Keep it ready for `dd`ing it on the SD card + sdImage = { + compressImage = false; + }; + + nixpkgs = { + crossSystem = { + system = "armv6l-linux"; + platform = lib.systems.platforms.raspberrypi; + }; + + overlays = [ + (self: super: { + mailutils = null; # Does not cross-compile. Missing binary breaks sendmail functionality of smartd + }) + ]; + }; + + # closure minification + environment.noXlibs = true; + services.xserver.enable = false; + services.xserver.desktopManager.xterm.enable = lib.mkForce false; + + # this pulls too much graphical stuff + services.udisks2.enable = lib.mkForce false; + # this pulls spidermonkey and firefox + security.polkit.enable = false; + + boot.supportedFilesystems = lib.mkForce { "vfat" = true; }; + i18n.supportedLocales = lib.mkForce [ (config.i18n.defaultLocale + "/UTF-8") ]; + + documentation.enable = false; + documentation.man.enable = false; + documentation.nixos.enable = false; + + nixpkgs.config.allowUnsupportedSystem = true; + + ## Combats the default setting of wpa_supplicant not starting on installation devices + ## https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/profiles/installation-device.nix#L74 + # systemd.services.wpa_supplicant.wantedBy = lib.mkOverride 49 [ "multi-user.target" ]; +} -- cgit 1.4.1