Skip to content
Snippets Groups Projects

NixOS kexec leona

  • Clone with SSH
  • Clone with HTTPS
  • Embed
  • Share
    The snippet can be accessed without any authentication.
    Authored by Leona
    Edited
    nixos_kexec.sh 2.30 KiB
    sed -i "s/DNS=.*/DNS=2a01:4f9:c010:3f02::1/g" /etc/systemd/resolved.conf.d/hetzner.conf
    systemctl restart systemd-resolved
    # The installer needs sudo
    apt install -y sudo
    
    # Let root run the nix installer
    mkdir -p /etc/nix
    echo "build-users-group =" > /etc/nix/nix.conf
    
    # Install Nix in single-user mode
    curl -L https://nixos.org/nix/install | sh
    . $HOME/.nix-profile/etc/profile.d/nix.sh
    
    nix-env -f https://github.com/nix-community/nixos-generators/archive/master.tar.gz -i -v
    
    cat <<EOF > /root/config.nix
    {
      security.sudo.wheelNeedsPassword = false;
      services.openssh.enable = true;
      nix.trustedUsers = [ "root" "@wheel" "leona" ];
      networking.hostName = "iso";
      users.users.root.openssh.authorizedKeys.keys = [
          "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILN9nTU+lsrfp+uLo1IvMEIi64m6ke0FmfZ6FxBgmKXp leona@leona.is"
          "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOkvy9P1Qweq1kykgn3IWIBWe/v/dTNAx+hd9i2aKe1O openpgp:0xCACA6CB6"
          "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDR9Kp84lHQRnaWU6gd8MHppZD3pQCI2TCeGF/kHm/A/kqADWqtTWjnD5ad1ZhOTSThCF35VGH3ICdnSCHh0uAHV7eK3GDjhxdrIJHY/WiubEpQJcS5OX/qTEn6QrPDIAZy2ykdHX7XrNWDGOlxpTjkPpHJmmDIQTZn/mMADuhVhIm03aFyVbUxpHSU+v7N8yxV5RehIw0RTy+qSjWcthDgTGPjPk1a2sElNVbsgF4VhqpdUfzG0BQCqr+zPDbeH66+gumDPXC5Pw4NQB596UWPDKaQv7juzveiPTpIjhTfpoWBjCmexGPbSYecXNee61NXe6HsGrGLtw/pRLEYVYH0ecU/b0A7TGd2gznKBgvk8xXoxkqHbDPoCPqC3moPD3BwCXTGNi6DBDAquC/Ho266AgZ+z83mP7TuDJmZ/F4f/glbb2hdZ6ITDS7Dvd+jGlw6UXlKeZThHOy+B1c9at4FeyQs6JBd4P5RwekUCF45gk0RfRu1+HE3YOXbN1s1DRXJs689DaBzTbD9rhROEjZgNT/m0VxC6w2i6WRvxcEvy+wL4HyJxdSK0MMVhZJza4MOB7qLvIq8z3L9kLDrKh6R49m+LsH7NCS9gh0wAH17E2cImSoX4IiRemn39oKZTplAwvvaGNXOmH/SqeZlGpYOL9Yn9nE5mC10/5In/KIZMQ== openpgp:0xF5B75815"
      ];
      networking.useNetworkd = true;
      networking.useDHCP = false;
      systemd.network = {
        links."10-eth0" = {
          matchConfig.MACAddress = "a8:a1:59:8b:34:ee";
          linkConfig.Name = "eth0";
        };
        networks."10-eth0" = {
          DHCP = "yes";
          address = [ "2a01:4f9:6a:13c6::1/64" ];
          routes = [
            {
              routeConfig = {
                Destination = "::/0";
                Gateway = "fe80::1";
                GatewayOnLink = true;
              };
            }
          ];
          dns = [ "2a01:4f9:c010:3f02::1" ];
          matchConfig = {
            Name = "eth0";
          };
        };
      };
    }
    EOF
    
    nixos-generate -o /root/result  -f kexec-bundle -c /root/config.nix
    0% Loading or .
    You are about to add 0 people to the discussion. Proceed with caution.
    Finish editing this message first!
    Please register or to comment