Add wezterm binds

This commit is contained in:
muon 2026-03-08 11:39:06 +00:00
parent 86c3dbfa88
commit 3a4353b990
3 changed files with 310 additions and 153 deletions

View file

@ -46,48 +46,31 @@
};
utils = import ./utils.nix {inherit inputs system sources;};
# Discover hosts: all subdirectories of hosts/
hosts = builtins.attrNames (nixpkgs.lib.filterAttrs
(_: type: type == "directory")
(builtins.readDir ./hosts));
nixosConfigs = builtins.listToAttrs (map (host: {
name = host;
value = utils.mkHost ./hosts/${host}/configuration.nix;
}) hosts);
in {
nixosConfigurations = {
# desktop
muon = utils.mkHost ./hosts/muon/configuration.nix;
# laptop
muop = utils.mkHost ./hosts/muop/configuration.nix;
# server
muho = utils.mkHost ./hosts/muho/configuration.nix;
# vps
mups = utils.mkHost ./hosts/mups/configuration.nix;
# vm
muvm = utils.mkHost ./hosts/muvm/configuration.nix;
# work
murk = utils.mkHost ./hosts/murk/configuration.nix;
# work desktop
musk = utils.mkHost ./hosts/musk/configuration.nix;
# lenovo
muvo = utils.mkHost ./hosts/muvo/configuration.nix;
# installer
muin = utils.mkHost ./hosts/muin/configuration.nix;
};
nixosConfigurations = nixosConfigs;
homeManagerModules.default = ./modules/home;
# Expose each host's HM activation package so `home-manager switch --flake .#muon@<host>`
# works without a full NixOS rebuild. Extracted from the already-evaluated
# nixosConfiguration, so osConfig remains fully populated.
homeConfigurations = nixpkgs.lib.mapAttrs' (host: nixos:
nixpkgs.lib.nameValuePair "muon@${host}" {
activationPackage = nixos.config.home-manager.users.muon.home.activationPackage;
}
) (nixpkgs.lib.filterAttrs
(_: nixos: nixos.config.home-manager.users ? muon)
inputs.self.outputs.nixosConfigurations);
# Standalone HM configurations — one per host.
# osConfig is injected so all modules using it continue to work.
# Use: home-manager switch --flake '.#muon@<host>'
homeConfigurations = builtins.listToAttrs (map (host: {
name = "muon@${host}";
value = utils.mkHome {
hostConfig = nixosConfigs.${host};
homeFile = ./hosts/${host}/home.nix;
};
}) hosts);
colmena = {
meta = {