Benutzer-Werkzeuge

Webseiten-Werkzeuge


notiz:nixos-tarball

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
notiz:nixos-tarball [2021/01/14 18:02] – angelegt clerienotiz:nixos-tarball [2021/01/14 19:51] (aktuell) clerie
Zeile 10: Zeile 10:
   imports = [   imports = [
     (modulesPath + "/installer/cd-dvd/system-tarball.nix")     (modulesPath + "/installer/cd-dvd/system-tarball.nix")
-    (modulesPath + "/virtualisation/xen-domU.nix") 
     # (modulesPath + "/profiles/base.nix")     # (modulesPath + "/profiles/base.nix")
   ];   ];
Zeile 35: Zeile 34:
   };   };
 } }
 +</code>
 +<code bash>
 +nix-build "<nixpkgs/nixos>" -A config.system.build.tarball -I nixos-config=tarball.nix
 +</code>
 +
 +
 +<code>
 +{ hostName }:
 +
 +let
 +  # format target device with `mkfs.ext4 -L NIXOS_ROOT`
 +  rootfsLabel = "NIXOS_ROOT";
 +
 +  configuration =
 +    { config, pkgs, lib, modulesPath, ... }:
 +
 +    {
 +      imports = [
 +        (modulesPath + "/installer/cd-dvd/system-tarball.nix")
 +        (./configuration/hosts + "/${hostName}/configuration.nix")
 +      ];
 +    
 +      tarball.contents = [
 +        {
 +          source = pkgs.writeText "grub.cfg" ''
 +            insmod gfxterm
 +            insmod png
 +            set gfxpayload=keep
 +            menuentry "NixOS" {
 +              search --set=drive1 --label ${rootfsLabel}
 +              linux ($drive1)${config.boot.kernelPackages.kernel}/${config.system.boot.loader.kernelFile} init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams}
 +              initrd ($drive1)${config.system.build.initialRamdisk}/${config.system.boot.loader.initrdFile}
 +            }
 +          '';
 +          target = "/boot/grub.cfg";
 +        }
 +      ];
 +
 +      fileSystems."/" = lib.mkForce {
 +        device = "/dev/disk/by-label/${rootfsLabel}";
 +        fsType = "ext4";
 +      };
 +    };
 +
 +  evaluatedHost = import <nixpkgs/nixos> {
 +    inherit configuration;
 +  };
 +in
 +  evaluatedHost.config.system.build.tarball
 +</code>
 +
 +<code>
 +nix-build tarball.nix --argstr hostName myhost
 </code> </code>
notiz/nixos-tarball.txt · Zuletzt geändert: 2021/01/14 19:51 von clerie

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki