diff options
| author | seth <[email protected]> | 2023-11-02 08:15:15 -0400 |
|---|---|---|
| committer | seth <[email protected]> | 2023-11-02 08:19:27 -0400 |
| commit | 7ded7c99e0e77e1aaf46802c42625b267ddc8a69 (patch) | |
| tree | 8b827fc22cad1e2fe40a23b97fd7728fa1d29c84 /modules | |
| parent | 4fffa9ece74302f5cc34ab5bf7548d378ba4d277 (diff) | |
modules+systems+seth: use homebrew over nix on darwin & make features module
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/darwin/desktop.nix | 1 | ||||
| -rw-r--r-- | modules/nixos/default.nix | 1 | ||||
| -rw-r--r-- | modules/nixos/features/default.nix | 6 | ||||
| -rw-r--r-- | modules/nixos/features/tailscale.nix | 22 | ||||
| -rw-r--r-- | modules/nixos/features/virtualisation.nix | 10 |
5 files changed, 23 insertions, 17 deletions
diff --git a/modules/darwin/desktop.nix b/modules/darwin/desktop.nix index 23664f9..7b439a9 100644 --- a/modules/darwin/desktop.nix +++ b/modules/darwin/desktop.nix @@ -23,6 +23,7 @@ casks = [ "chromium" + "iterm2" ]; }; diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index f43e8ae..aadc5bd 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -2,6 +2,7 @@ flake.nixosModules = { default = ./base.nix; desktop = ./desktop; + features = ./features; gnome = ./desktop/gnome; plasma = ./desktop/plasma; budgie = ./desktop/budgie; diff --git a/modules/nixos/features/default.nix b/modules/nixos/features/default.nix new file mode 100644 index 0000000..ade778e --- /dev/null +++ b/modules/nixos/features/default.nix @@ -0,0 +1,6 @@ +{ + imports = [ + ./tailscale.nix + ./virtualisation.nix + ]; +} diff --git a/modules/nixos/features/tailscale.nix b/modules/nixos/features/tailscale.nix index d015437..ecb793a 100644 --- a/modules/nixos/features/tailscale.nix +++ b/modules/nixos/features/tailscale.nix @@ -5,18 +5,16 @@ ... }: let cfg = config.features.tailscale; - inherit (lib) mkDefault mkEnableOption mkIf optionalAttrs; - - baseDir = ../../../secrets/systems/${config.networking.hostName}; + secretsDir = ../../../secrets/systems/${config.networking.hostName}; in { options.features.tailscale = { - enable = mkEnableOption "enable support for tailscale"; - ssh.enable = mkEnableOption "enable support for tailscale ssh"; + enable = lib.mkEnableOption "enable support for tailscale"; + ssh.enable = lib.mkEnableOption "enable support for tailscale ssh"; }; - config = mkIf cfg.enable { - age.secrets = mkIf cfg.ssh.enable { - tailscaleAuthKey.file = "${baseDir}/tailscaleAuthKey.age"; + config = lib.mkIf cfg.enable { + age.secrets = lib.mkIf cfg.ssh.enable { + tailscaleAuthKey.file = "${secretsDir}/tailscaleAuthKey.age"; }; networking.firewall = @@ -24,16 +22,14 @@ in { allowedUDPPorts = [config.services.tailscale.port]; trustedInterfaces = ["tailscale0"]; } - // optionalAttrs cfg.ssh.enable { + // lib.optionalAttrs cfg.ssh.enable { allowedTCPPorts = [22]; }; - services = { - tailscale.enable = mkDefault true; - }; + services.tailscale.enable = true; # https://tailscale.com/kb/1096/nixos-minecraft/ - systemd.services = mkIf cfg.ssh.enable { + systemd.services = lib.mkIf cfg.ssh.enable { tailscale-autoconnect = { description = "Automatic connection to Tailscale"; diff --git a/modules/nixos/features/virtualisation.nix b/modules/nixos/features/virtualisation.nix index 206a98e..2c9c527 100644 --- a/modules/nixos/features/virtualisation.nix +++ b/modules/nixos/features/virtualisation.nix @@ -5,17 +5,19 @@ ... }: let cfg = config.features.virtualisation; - inherit (lib) mkEnableOption mkIf; in { - options.features.virtualisation.enable = mkEnableOption "enable podman"; + options.features.virtualisation = { + enable = lib.mkEnableOption "enable podman"; + }; - config.virtualisation = mkIf cfg.enable { + config.virtualisation = lib.mkIf cfg.enable { podman = { enable = true; - enableNvidia = true; + enableNvidia = lib.mkDefault (config.hardware.nvidia.enable or false); extraPackages = with pkgs; [podman-compose]; autoPrune.enable = true; }; + oci-containers.backend = "podman"; }; } |
