From 482566b84fc9b30538ae4dd090e77a0979aa1a3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Sun, 17 Jul 2022 19:35:04 +0200 Subject: nixos: allow tarball build and cross-build directly --- nixos/modules/turris-tarball.nix | 78 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 nixos/modules/turris-tarball.nix (limited to 'nixos/modules/turris-tarball.nix') diff --git a/nixos/modules/turris-tarball.nix b/nixos/modules/turris-tarball.nix new file mode 100644 index 0000000..5a1f672 --- /dev/null +++ b/nixos/modules/turris-tarball.nix @@ -0,0 +1,78 @@ +{ config, lib, pkgs, modulesPath, extendModules, ... }: + +with lib; + +let + + tarballVariant = extendModules { + modules = [{ + boot.consoleLogLevel = lib.mkDefault 7; + + # Allow access to the root account right after installation + users = { + mutableUsers = false; + users.root.password = mkDefault "nixturris"; + }; + + # Allow root access over SSH + services.openssh = { + enable = true; + passwordAuthentication = true; + permitRootLogin = "yes"; + }; + + # TODO we have to generate the hardware specific configuration on first boot + boot.postBootCommands = '' + ''; + + environment.etc."nixos/flake.nix" = { + mode = "0600"; + text = '' + { + inputs.nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-21.11"; + inputs.nixturris.url = "git+https://git.cynerd.cz/nixturris"; + outputs = { self, nixpkgs-stable, nixturris }: { + nixosConfigurations.nixturris = nixturris.lib.nixturrisSystem { + nixpkgs = nixpkgs-stable; + board = "${config.turris.board}"; + modules = [({ config, lib, pkgs, ... }: { + # Optionally place your configuration here + })]; + }; + }; + } + ''; + }; + system.extraSystemBuilderCmds = '' + mkdir -p $out/boot/extlinux + cat >$out/boot/extlinux/extlinux.conf <