Created
September 4, 2024 03:33
-
-
Save joshleecreates/e6892ca21b0e6b7c24d96ca2a24bf23e to your computer and use it in GitHub Desktop.
NixOS VM Profile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ config, pkgs, modulesPath, lib, system, ... }: | |
{ | |
imports = [ | |
(modulesPath + "/profiles/qemu-guest.nix") | |
]; | |
config = { | |
#Provide a default hostname | |
networking.hostName = lib.mkDefault "base"; | |
# 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" ]; | |
# Enable mDNS for `hostname.local` addresses | |
services.avahi.enable = true; | |
services.avahi.nssmdns = true; | |
services.avahi.publish = { | |
enable = true; | |
addresses = true; | |
}; | |
# 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; | |
# Default filesystem | |
fileSystems."/" = lib.mkDefault { | |
device = "/dev/disk/by-label/nixos"; | |
autoResize = true; | |
fsType = "ext4"; | |
}; | |
system.stateVersion = lib.mkDefault "24.05"; | |
}; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment