diff options
Diffstat (limited to 'nix/per-host/base/configuration.nix')
| -rw-r--r-- | nix/per-host/base/configuration.nix | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/nix/per-host/base/configuration.nix b/nix/per-host/base/configuration.nix new file mode 100644 index 0000000..8b34249 --- /dev/null +++ b/nix/per-host/base/configuration.nix @@ -0,0 +1,67 @@ +{ config, pkgs, modulesPath, lib, system, ... }: + +{ + imports = [ + (modulesPath + "/profiles/qemu-guest.nix") + ]; + + config = { + #Provide a default hostname + networking.hostName = lib.mkDefault "base"; + networking.useDHCP = lib.mkDefault true; + + # Enable QEMU Guest for Proxmox + services.qemuGuest.enable = lib.mkDefault true; + + # Use the boot drive for grub + boot.loader.grub.enable = lib.mkDefault true; + boot.loader.grub.devices = [ "nodev" ]; + + boot.growPartition = lib.mkDefault true; + + # Allow remote updates with flakes and non-root users + nix.settings.trusted-users = [ "root" "@wheel" ]; + nix.settings.experimental-features = [ "nix-command" "flakes" ]; + + # Some sane packages we need on every system + environment.systemPackages = with pkgs; [ + vim # for emergencies + git # for pulling nix flakes + python3 # for ansible + ]; + + # Don't ask for passwords + security.sudo.wheelNeedsPassword = false; + + # Enable ssh + services.openssh = { + enable = true; + settings.PasswordAuthentication = false; + settings.KbdInteractiveAuthentication = false; + }; + programs.ssh.startAgent = true; + + # Add an admin user + users.users.jefe = { + isNormalUser = true; + description = "el jefe"; + extraGroups = [ "networkmanager" "wheel" ]; + }; + users.users.jefe.openssh.authorizedKeys.keys = [ + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAYYjB+fK4JFlJSY6Ax48p38eSuDG12VQVqP+WSrWGuO" + ]; + + users.users.root.openssh.authorizedKeys.keys = [ + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAYYjB+fK4JFlJSY6Ax48p38eSuDG12VQVqP+WSrWGuO" + ]; + + # Default filesystem + fileSystems."/" = lib.mkDefault { + device = "/dev/disk/by-label/nixos"; + autoResize = true; + fsType = "ext4"; + }; + + system.stateVersion = lib.mkDefault "25.11"; + }; +} |
