From a3dcca556f8d612ac57a7a0ebdb33b4e7e244b10 Mon Sep 17 00:00:00 2001 From: Noah Masur <7386960+nmasur@users.noreply.github.com> Date: Sat, 8 Mar 2025 19:29:13 -0500 Subject: [PATCH] add vmvariant as preset --- hosts-by-platform/x86_64-linux/staff.nix | 11 ------- .../modules/nmasur/profiles/power-user.nix | 1 + platforms/nixos/modules/nmasur/presets/vm.nix | 31 +++++++++++++++++++ .../nixos/modules/nmasur/profiles/base.nix | 16 ++++++---- 4 files changed, 42 insertions(+), 17 deletions(-) create mode 100644 platforms/nixos/modules/nmasur/presets/vm.nix diff --git a/hosts-by-platform/x86_64-linux/staff.nix b/hosts-by-platform/x86_64-linux/staff.nix index f33d822..aebaf64 100644 --- a/hosts-by-platform/x86_64-linux/staff.nix +++ b/hosts-by-platform/x86_64-linux/staff.nix @@ -19,17 +19,6 @@ rec { nmasur.presets.services.kanata.enable = false; nmasur.presets.services.openssh.enable = true; - virtualisation.vmVariant = { - home-manager.users."noah".nmasur.presets.programs.nix-index.enable = false; - virtualisation.forwardPorts = [ - { - from = "host"; - host.port = 2222; - guest.port = 22; - } - ]; - }; - home-manager.users."noah" = { nmasur.settings = { username = nmasur.settings.username; diff --git a/platforms/home-manager/modules/nmasur/profiles/power-user.nix b/platforms/home-manager/modules/nmasur/profiles/power-user.nix index 49552bd..8c9e8a6 100644 --- a/platforms/home-manager/modules/nmasur/profiles/power-user.nix +++ b/platforms/home-manager/modules/nmasur/profiles/power-user.nix @@ -57,6 +57,7 @@ in fish.enable = lib.mkDefault true; fzf.enable = lib.mkDefault true; git.enable = lib.mkDefault true; + neovim.enable = lib.mkDefault true; nix-index.enable = lib.mkDefault true; nixpkgs.enable = lib.mkDefault true; prettyping.enable = lib.mkDefault true; diff --git a/platforms/nixos/modules/nmasur/presets/vm.nix b/platforms/nixos/modules/nmasur/presets/vm.nix new file mode 100644 index 0000000..0aabc32 --- /dev/null +++ b/platforms/nixos/modules/nmasur/presets/vm.nix @@ -0,0 +1,31 @@ +{ + config, + lib, + ... +}: + +let + cfg = config.nmasur.presets.vm; +in + +{ + + options.nmasur.presets.vm.enable = lib.mkEnableOption "VM-specific settings for testing"; + + config = lib.mkIf cfg.enable { + + # Settings for testing in a VM + virtualisation.vmVariant = { + home-manager.users."noah".programs.nix-index.enable = false; + nmasur.presets.services.openssh.enable = true; + virtualisation.forwardPorts = [ + { + from = "host"; + host.port = 2222; + guest.port = 22; + } + ]; + }; + + }; +} diff --git a/platforms/nixos/modules/nmasur/profiles/base.nix b/platforms/nixos/modules/nmasur/profiles/base.nix index 10981f3..3324592 100644 --- a/platforms/nixos/modules/nmasur/profiles/base.nix +++ b/platforms/nixos/modules/nmasur/profiles/base.nix @@ -16,14 +16,18 @@ in config = lib.mkIf cfg.enable { - nmasur.presets.services = { - # Allow tunneling into the machine - cloudflared.enable = lib.mkDefault true; - openssh.enable = lib.mkDefault true; + nmasur.presets = { + vm.enable = lib.mkDefault true; + services = { + # Allow tunneling into the machine + cloudflared.enable = lib.mkDefault true; + openssh.enable = lib.mkDefault true; + }; + programs = { + doas.enable = lib.mkDefault true; + }; }; - nmasur.presets.programs.doas.enable = lib.mkDefault true; - # Allows us to declaritively set password users.mutableUsers = lib.mkDefault false;