From 20b4bafa853238f5750d6e362c481c3c83e4afc7 Mon Sep 17 00:00:00 2001 From: kat witch Date: Wed, 3 Mar 2021 04:01:28 +0000 Subject: [PATCH] Work in progress further refactoring. --- README.md | 2 +- config/common/default.nix | 5 ++++- config/hosts/athame/configuration.nix | 4 ++-- config/hosts/boline/configuration.nix | 4 ++-- config/hosts/samhain/configuration.nix | 4 ++-- config/hosts/yule/configuration.nix | 4 ++-- config/users/default.nix | 4 +++- config/users/kat/default.nix | 11 +++++++---- config/users/kat/desktop.nix | 2 +- config/users/kat/fish.nix | 2 +- config/users/kat/gaming.nix | 2 +- config/users/kat/kitty.nix | 2 +- config/users/kat/modules/default.nix | 3 --- config/users/kat/network.nix | 2 +- config/users/kat/sound.nix | 2 +- config/users/kat/sway.nix | 2 +- config/users/kat/waybar/default.nix | 2 +- lib/hosts.nix | 6 ++---- modules/home/default.nix | 12 ++++++------ modules/nixos/deploy/default.nix | 6 +++--- 20 files changed, 42 insertions(+), 39 deletions(-) delete mode 100644 config/users/kat/modules/default.nix diff --git a/README.md b/README.md index 2c53a8db..0f441dcd 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ To provision a new host: * add that host to the SSH config in programs.ssh -* create a config for that host that contains a meta.deploy.ssh.host +* create a config for that host that contains a deploy.ssh.host * run `./nyx install `. To rebuild a host: diff --git a/config/common/default.nix b/config/common/default.nix index 8cdfa756..2f8ce0a6 100644 --- a/config/common/default.nix +++ b/config/common/default.nix @@ -1,7 +1,10 @@ { config, lib, pkgs, sources, ... }: { - imports = [../users (sources.home-manager + "/nixos") ]; + imports = [ + ../users + (sources.home-manager + "/nixos") + ]; boot.kernelPackages = lib.mkDefault pkgs.linuxPackages_latest; boot.loader.grub.configurationLimit = 8; diff --git a/config/hosts/athame/configuration.nix b/config/hosts/athame/configuration.nix index 9902f086..e052ad39 100644 --- a/config/hosts/athame/configuration.nix +++ b/config/hosts/athame/configuration.nix @@ -23,8 +23,8 @@ ./matrix.nix ]; - meta.deploy.profiles = [ ]; - meta.deploy.ssh.host = "athame.kittywit.ch"; + deploy.profiles = [ ]; + deploy.ssh.host = "athame.kittywit.ch"; boot.loader.grub.enable = true; boot.loader.grub.version = 2; diff --git a/config/hosts/boline/configuration.nix b/config/hosts/boline/configuration.nix index ce45a3c4..2a849bc6 100644 --- a/config/hosts/boline/configuration.nix +++ b/config/hosts/boline/configuration.nix @@ -6,8 +6,8 @@ #./wireguard.nix ]; - meta.deploy.profiles = [ ]; - meta.deploy.ssh.host = "boline.kittywit.ch"; + deploy.profiles = [ ]; + deploy.ssh.host = "boline.kittywit.ch"; boot.loader.grub.enable = true; boot.loader.grub.version = 2; diff --git a/config/hosts/samhain/configuration.nix b/config/hosts/samhain/configuration.nix index 94e43965..2a03870d 100644 --- a/config/hosts/samhain/configuration.nix +++ b/config/hosts/samhain/configuration.nix @@ -9,8 +9,8 @@ ./torrenting.nix ]; - meta.deploy.profiles = [ "desktop" "development" "sway" "gaming" "network" ]; - meta.deploy.ssh.host = "192.168.1.135"; + deploy.profiles = [ "desktop" "development" "sway" "gaming" "network" ]; + deploy.ssh.host = "192.168.1.135"; # libvirtd is used for our virtual machine virtualisation.libvirtd = { diff --git a/config/hosts/yule/configuration.nix b/config/hosts/yule/configuration.nix index 4e0f368c..cab5d24b 100644 --- a/config/hosts/yule/configuration.nix +++ b/config/hosts/yule/configuration.nix @@ -3,8 +3,8 @@ { imports = [ ./hardware.nix ../../services/zfs.nix ]; - meta.deploy.profiles = [ "desktop" "development" "sway" "gaming" "network" ]; - meta.deploy.ssh.host = "192.168.1.92"; + deploy.profiles = [ "desktop" "development" "sway" "gaming" "network" ]; + deploy.ssh.host = "192.168.1.92"; boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; diff --git a/config/users/default.nix b/config/users/default.nix index 66c099bb..b0c00c45 100644 --- a/config/users/default.nix +++ b/config/users/default.nix @@ -1,7 +1,9 @@ { pkgs, config, ... }: { - imports = [ ./kat ]; + imports = [ + ./kat + ]; users.users.root = { openssh.authorizedKeys.keys = with pkgs.lib; diff --git a/config/users/kat/default.nix b/config/users/kat/default.nix index 0a20cc9b..5bb8cb75 100644 --- a/config/users/kat/default.nix +++ b/config/users/kat/default.nix @@ -1,7 +1,8 @@ -{ config, pkgs, ... }: +{ config, pkgs, sources, ... }: { imports = [ + ../../../modules/home ./ssh.nix ./desktop.nix ./sound.nix @@ -26,11 +27,13 @@ home-manager.useGlobalPkgs = true; home-manager.users.kat = { - imports = [ ./modules ]; - programs.fish = { enable = true; - shellAliases = { nixdirfmt = "fd --color=never .nix | xargs nixfmt"; }; + shellAliases = { + nixdirfmt = "fd --color=never .nix | xargs nixfmt"; + tmne = "tmux new -s"; + tmat = "tmux attach -t"; + }; plugins = [{ name = "bass"; src = pkgs.fetchFromGitHub { diff --git a/config/users/kat/desktop.nix b/config/users/kat/desktop.nix index 23301b48..11865965 100644 --- a/config/users/kat/desktop.nix +++ b/config/users/kat/desktop.nix @@ -4,7 +4,7 @@ let sources = import ../../../nix/sources.nix; in { imports = [ ./firefox ]; - config = lib.mkIf (lib.elem "desktop" config.meta.deploy.profiles) { + config = lib.mkIf (lib.elem "desktop" config.deploy.profiles) { nixpkgs.config = { mumble.speechdSupport = true; pulseaudio = true; diff --git a/config/users/kat/fish.nix b/config/users/kat/fish.nix index 97d24047..063d9a59 100644 --- a/config/users/kat/fish.nix +++ b/config/users/kat/fish.nix @@ -5,7 +5,7 @@ programs.fish = { enable = true; interactiveShellInit = '' - ${if (lib.elem "desktop" config.meta.deploy.groups) then + ${if (lib.elem "desktop" config.deploy.groups) then "export SSH_AUTH_SOCK=(gpgconf --list-dirs agent-ssh-socket)" else ""} diff --git a/config/users/kat/gaming.nix b/config/users/kat/gaming.nix index 4e793fcc..af1298f8 100644 --- a/config/users/kat/gaming.nix +++ b/config/users/kat/gaming.nix @@ -1,7 +1,7 @@ { config, lib, pkgs, ... }: { - config = lib.mkIf (lib.elem "gaming" config.meta.deploy.profiles) { + config = lib.mkIf (lib.elem "gaming" config.deploy.profiles) { hardware.opengl.driSupport32Bit = true; hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [ libva ]; hardware.pulseaudio.support32Bit = true; diff --git a/config/users/kat/kitty.nix b/config/users/kat/kitty.nix index 5ee8b098..3b9b31ef 100644 --- a/config/users/kat/kitty.nix +++ b/config/users/kat/kitty.nix @@ -1,7 +1,7 @@ { config, lib, pkgs, witch, ... }: { - config = lib.mkIf (lib.elem "desktop" config.meta.deploy.profiles) { + config = lib.mkIf (lib.elem "desktop" config.deploy.profiles) { home-manager.users.kat = { programs.kitty = { diff --git a/config/users/kat/modules/default.nix b/config/users/kat/modules/default.nix deleted file mode 100644 index 08fe0c30..00000000 --- a/config/users/kat/modules/default.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ ... }: -let sources = import ../../../../nix/sources.nix; -in { imports = [ (sources.tf-nix + "/modules/home/secrets.nix") ]; } diff --git a/config/users/kat/network.nix b/config/users/kat/network.nix index 4cc1ac26..d7eec4c7 100644 --- a/config/users/kat/network.nix +++ b/config/users/kat/network.nix @@ -1,5 +1,5 @@ { config, lib, pkgs, ... }: { - config = lib.mkIf (lib.elem "network" config.meta.deploy.profiles) { + config = lib.mkIf (lib.elem "network" config.deploy.profiles) { networking = { networkmanager.enable = true; resolvconf.useLocalResolver = true; diff --git a/config/users/kat/sound.nix b/config/users/kat/sound.nix index ee612376..dc26745a 100644 --- a/config/users/kat/sound.nix +++ b/config/users/kat/sound.nix @@ -1,7 +1,7 @@ { config, lib, pkgs, ... }: { - config = lib.mkIf (lib.elem "desktop" config.meta.deploy.profiles) { + config = lib.mkIf (lib.elem "desktop" config.deploy.profiles) { sound.extraConfig = '' defaults.pcm.rate_converter "speexrate_best" ''; diff --git a/config/users/kat/sway.nix b/config/users/kat/sway.nix index 7fcc4026..671c58d0 100644 --- a/config/users/kat/sway.nix +++ b/config/users/kat/sway.nix @@ -3,7 +3,7 @@ let secrets = import ../../../secrets.nix; in { - config = lib.mkIf (lib.elem "sway" config.meta.deploy.profiles) { + config = lib.mkIf (lib.elem "sway" config.deploy.profiles) { fonts.fonts = with pkgs; [ font-awesome diff --git a/config/users/kat/waybar/default.nix b/config/users/kat/waybar/default.nix index e7d7ac56..bc902851 100644 --- a/config/users/kat/waybar/default.nix +++ b/config/users/kat/waybar/default.nix @@ -3,7 +3,7 @@ let secrets = import ../../../../secrets.nix; in { - config = lib.mkIf (lib.elem "sway" config.meta.deploy.profiles) { + config = lib.mkIf (lib.elem "sway" config.deploy.profiles) { home-manager.users.kat = { programs.waybar = { enable = true; diff --git a/lib/hosts.nix b/lib/hosts.nix index 9398bebf..cdd8cd78 100644 --- a/lib/hosts.nix +++ b/lib/hosts.nix @@ -21,8 +21,6 @@ rec { imports = [ (import (hostsDir + "/${hostName}/configuration.nix")) (import (privateHostsDir + "/${hostName}/configuration.nix")) - # urgh, yes, we still need to manually import the deploy module for now - # at least if i want to keep my thing reusable. ../modules/nixos/deploy ] ++ commonImports; networking = { @@ -47,10 +45,10 @@ rec { ); profileNames = unique (concatLists - (mapAttrsToList (name: host: host.config.meta.deploy.profiles) hosts)); + (mapAttrsToList (name: host: host.config.deploy.profiles) hosts)); profiles = listToAttrs (map (profileName: nameValuePair profileName - (filter (host: elem profileName host.config.meta.deploy.profiles) + (filter (host: elem profileName host.config.deploy.profiles) (attrValues hosts))) profileNames); } diff --git a/modules/home/default.nix b/modules/home/default.nix index 7dd1ee9f..1c743da3 100644 --- a/modules/home/default.nix +++ b/modules/home/default.nix @@ -1,9 +1,9 @@ { sources, ... }: -{ - home-manager.users = { - imports = [ - (sources.tf-nix + "/modules/home/secrets.nix") - ]; +{ + home-manager.users.kat = { + imports = [ + (sources.tf-nix + "/modules/home/secrets.nix") + ]; }; -} +} \ No newline at end of file diff --git a/modules/nixos/deploy/default.nix b/modules/nixos/deploy/default.nix index 7be89c03..51d587b6 100644 --- a/modules/nixos/deploy/default.nix +++ b/modules/nixos/deploy/default.nix @@ -3,7 +3,7 @@ with lib; let - cfg = config.meta.deploy; + cfg = config.deploy; secretsScript = concatMapStrings (file: '' ssh $NIX_SSHOPTS root@${cfg.ssh.host} "mkdir -p ${toString file.out.dir} cat > ${file.path} @@ -14,7 +14,7 @@ let '') (attrValues config.secrets.files); in { options = { - meta.deploy = { + deploy = { enable = mkOption { type = types.bool; default = true; @@ -39,7 +39,7 @@ in { }; config = mkIf cfg.enable { - meta.deploy.profiles = [ "all" ]; + deploy.profiles = [ "all" ]; system.build.deployScript = pkgs.writeScript "deploy-${config.networking.hostName}" ''