mirror of
https://github.com/EdenQwQ/nixos.git
synced 2026-07-16 22:16:51 +08:00
optimise hosts configuration
This commit is contained in:
parent
952e438d45
commit
1c10471218
3 changed files with 57 additions and 44 deletions
|
|
@ -24,13 +24,17 @@ let
|
|||
../secrets/age.nix
|
||||
inputs.maomaowm.hmModules.maomaowm
|
||||
] ++ (builtins.attrValues self.homeManagerModules);
|
||||
in
|
||||
{
|
||||
flake =
|
||||
let
|
||||
host = "eden-inspiron";
|
||||
user = "eden";
|
||||
in
|
||||
|
||||
mkHost =
|
||||
{
|
||||
host,
|
||||
user,
|
||||
extraOSModules ? [ ],
|
||||
extraOSArgs ? { },
|
||||
extraHomeModules ? [ ],
|
||||
extraHomeArgs ? { },
|
||||
...
|
||||
}:
|
||||
{
|
||||
nixosConfigurations.${host} = nixpkgs.lib.nixosSystem {
|
||||
specialArgs = {
|
||||
|
|
@ -41,10 +45,8 @@ in
|
|||
host
|
||||
user
|
||||
;
|
||||
};
|
||||
modules = [
|
||||
./inspiron/os.nix
|
||||
] ++ sharedOSModules;
|
||||
} // extraOSArgs;
|
||||
modules = extraOSModules ++ sharedOSModules;
|
||||
};
|
||||
|
||||
homeConfigurations."${user}@${host}" = inputs.home-manager.lib.homeManagerConfiguration {
|
||||
|
|
@ -56,12 +58,22 @@ in
|
|||
host
|
||||
user
|
||||
;
|
||||
nixosVersion = "unstable";
|
||||
homeManagerVersion = "master";
|
||||
};
|
||||
modules = [
|
||||
./inspiron/home.nix
|
||||
] ++ sharedHomeModules;
|
||||
} // extraHomeArgs;
|
||||
modules = extraHomeModules ++ sharedHomeModules;
|
||||
};
|
||||
};
|
||||
|
||||
in
|
||||
{
|
||||
flake = import ./hosts.nix |> map mkHost |> builtins.foldl' (x: y: x // y) { };
|
||||
# flake = mkHost {
|
||||
# host = "eden-inspiron";
|
||||
# user = "eden";
|
||||
# extraOSModules = [ ./inspiron/os.nix ];
|
||||
# extraHomeModules = [ ./inspiron/home.nix ];
|
||||
# extraHomeArgs = {
|
||||
# nixosVersion = "unstable";
|
||||
# homeManagerVersion = "master";
|
||||
# };
|
||||
# };
|
||||
}
|
||||
|
|
|
|||
13
hosts/hosts.nix
Normal file
13
hosts/hosts.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
[
|
||||
{
|
||||
host = "eden-inspiron";
|
||||
user = "eden";
|
||||
extraOSModules = [ ./inspiron/os.nix ];
|
||||
extraHomeModules = [ ./inspiron/home.nix ];
|
||||
extraHomeArgs = {
|
||||
nixosVersion = "unstable";
|
||||
homeManagerVersion = "master";
|
||||
};
|
||||
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKqbqHz5O4f6nBoki57c6hekVqUiO4hvSb9k771i61YS";
|
||||
}
|
||||
]
|
||||
|
|
@ -1,30 +1,18 @@
|
|||
let
|
||||
eden = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGXeMZ+CkyITSuDSbt4T9uglVJvt+c75X4QPiX8iCFbx";
|
||||
eden-inspiron = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKqbqHz5O4f6nBoki57c6hekVqUiO4hvSb9k771i61YS";
|
||||
publicKeys = [ eden ] ++ (map (host: host.publicKey) (import ../hosts/hosts.nix));
|
||||
secrets = [
|
||||
"siliconflow_token"
|
||||
"gemini_token"
|
||||
"deepseek_token"
|
||||
"zjuchat_token"
|
||||
"tavily_token"
|
||||
"zjuconnect_password"
|
||||
];
|
||||
in
|
||||
{
|
||||
"siliconflow_token.age".publicKeys = [
|
||||
eden
|
||||
eden-inspiron
|
||||
];
|
||||
"gemini_token.age".publicKeys = [
|
||||
eden
|
||||
eden-inspiron
|
||||
];
|
||||
"deepseek_token.age".publicKeys = [
|
||||
eden
|
||||
eden-inspiron
|
||||
];
|
||||
"zjuchat_token.age".publicKeys = [
|
||||
eden
|
||||
eden-inspiron
|
||||
];
|
||||
"tavily_token.age".publicKeys = [
|
||||
eden
|
||||
eden-inspiron
|
||||
];
|
||||
"zjuconnect_password.age".publicKeys = [
|
||||
eden
|
||||
eden-inspiron
|
||||
];
|
||||
}
|
||||
builtins.listToAttrs (
|
||||
map (secret: {
|
||||
name = "${secret}.age";
|
||||
value = { inherit publicKeys; };
|
||||
}) secrets
|
||||
)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue