aboutsummaryrefslogtreecommitdiff
path: root/tarball.nix
diff options
context:
space:
mode:
Diffstat (limited to 'tarball.nix')
-rw-r--r--tarball.nix57
1 files changed, 57 insertions, 0 deletions
diff --git a/tarball.nix b/tarball.nix
new file mode 100644
index 0000000..9327762
--- /dev/null
+++ b/tarball.nix
@@ -0,0 +1,57 @@
+board: { config, lib, pkgs, modulesPath, ... }:
+
+with lib;
+
+{
+ imports = [
+ "${toString modulesPath}/installer/cd-dvd/system-tarball.nix"
+ ];
+
+ 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
+ tarball.contents = [
+ { source = pkgs.writeText "default-nixturris-flake" ''
+ {
+ 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 = "${board}";
+ modules = [({ config, lib, pkgs, ... }: {
+ # Optionally place your configuration here
+ })];
+ };
+ };
+ }
+ '';
+ target = "/etc/nixos/flake.nix";
+ }
+ { source = pkgs.writeText "medkit-extlinux" ''
+ DEFAULT nixos-default
+ TIMEOUT 0
+ LABEL nixos-default
+ MENU LABEL NixOS - Default
+ LINUX /run/current-system/kernel
+ FDTDIR /run/current-system/dtbs
+ INITRD /run/current-system/initrd
+ APPEND init=${config.system.build.toplevel}/init ${builtins.toString config.boot.kernelParams}
+ '';
+ target = "/boot/extlinux/extlinux.conf";
+ }
+ ];
+}