NixOS kexec leona
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
Please register or sign in to comment