diff --git a/cells/nixos/colmenaConfigurations.nix b/cells/nixos/colmenaConfigurations.nix new file mode 100644 index 0000000..5e6d2ab --- /dev/null +++ b/cells/nixos/colmenaConfigurations.nix @@ -0,0 +1,22 @@ +{ + inputs, + cell, +}: let + l = inputs.nixpkgs.lib // builtins; + + hostConfigurations = + l.mapAttrs + ( + name: value: { + imports = [value]; + + deployment = { + targetHost = name; + targetPort = 22; + targetUser = "yousiki"; + }; + } + ) + cell.nixosConfigurations; +in + hostConfigurations diff --git a/cells/nixos/hosts/hakase/configuration.nix b/cells/nixos/hosts/hakase/configuration.nix index e62af40..d659fad 100644 --- a/cells/nixos/hosts/hakase/configuration.nix +++ b/cells/nixos/hosts/hakase/configuration.nix @@ -14,19 +14,6 @@ networking.hostName = "hakase"; - time.timeZone = "Asia/Shanghai"; - networking.proxy.default = "http://yousiki:yangsiqi@satoshi.mck.cn.yousiki.top:7890"; networking.proxy.noProxy = "127.0.0.1,localhost,cn.yousiki.top,edu.cn"; - - users.users.yousiki = { - isNormalUser = true; - extraGroups = ["wheel" "docker"]; - shell = pkgs.zsh; - }; - - programs.zsh.enable = true; - - services.openssh.enable = true; - services.openssh.openFirewall = true; } diff --git a/cells/nixos/profiles/core.nix b/cells/nixos/profiles/core.nix index 2402901..6c2ede6 100644 --- a/cells/nixos/profiles/core.nix +++ b/cells/nixos/profiles/core.nix @@ -1,12 +1,26 @@ { inputs, cell, -}: {...}: { +}: {pkgs, ...}: { imports = [ inputs.cells.common.commonProfiles.core ]; - # Enable podman. + time.timeZone = "Asia/Shanghai"; + + users.users.yousiki = { + isNormalUser = true; + extraGroups = ["wheel" "docker"]; + shell = pkgs.zsh; + }; + + programs.zsh.enable = true; + + services.openssh.enable = true; + services.openssh.openFirewall = true; + + security.sudo.wheelNeedsPassword = false; + virtualisation.podman = { enable = true; autoPrune.enable = true; diff --git a/flake.nix b/flake.nix index 1bfc60a..5dfe048 100644 --- a/flake.nix +++ b/flake.nix @@ -36,6 +36,7 @@ (std.blockTypes.functions "nixosModules") (std.blockTypes.functions "nixosProfiles") + hive.blockTypes.colmenaConfigurations hive.blockTypes.darwinConfigurations hive.blockTypes.nixosConfigurations ]; @@ -47,6 +48,10 @@ nixosModules = hive.pick self [["nixos" "nixosModules"]]; } { + colmenaHive = + nixpkgs.lib.recursiveUpdate + (collect self "colmenaConfigurations") + {metaConfig.allowApplyAll = true;}; darwinConfigurations = collect self "darwinConfigurations"; nixosConfigurations = collect self "nixosConfigurations"; };