Skip to content

Instantly share code, notes, and snippets.

@joshleecreates
Last active March 4, 2026 23:40
Show Gist options
  • Select an option

  • Save joshleecreates/e6892ca21b0e6b7c24d96ca2a24bf23e to your computer and use it in GitHub Desktop.

Select an option

Save joshleecreates/e6892ca21b0e6b7c24d96ca2a24bf23e to your computer and use it in GitHub Desktop.

Revisions

  1. joshleecreates revised this gist Mar 16, 2025. 1 changed file with 2 additions and 1 deletion.
    3 changes: 2 additions & 1 deletion vm-profile.nix
    Original file line number Diff line number Diff line change
    @@ -8,7 +8,8 @@
    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;

  2. joshleecreates created this gist Sep 4, 2024.
    60 changes: 60 additions & 0 deletions vm-profile.nix
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,60 @@
    { 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";
    };
    }