diff --git a/devices/srv2/default.nix b/devices/srv2/default.nix index be629214..27a4db4b 100644 --- a/devices/srv2/default.nix +++ b/devices/srv2/default.nix @@ -19,6 +19,8 @@ inputs: "6.1" # 2080 Ti "7.5" + # A30 + "8.0" # 3090 "8.6" # 4090 diff --git a/devices/srv2/node0/default.nix b/devices/srv2/node0/default.nix index 5159b2d0..9f2846f3 100644 --- a/devices/srv2/node0/default.nix +++ b/devices/srv2/node0/default.nix @@ -7,7 +7,7 @@ inputs: model.cluster.nodeType = "master"; system = { - nixpkgs.march = "skylake"; + nixpkgs.march = "icelake-server"; network = { static.eno2 = { ip = "192.168.178.1"; mask = 24; }; diff --git a/devices/srv2/node2/default.nix b/devices/srv2/node2/default.nix new file mode 100644 index 00000000..0864bb1e --- /dev/null +++ b/devices/srv2/node2/default.nix @@ -0,0 +1,43 @@ +inputs: +{ + config = + { + nixos = + { + model.cluster.nodeType = "master"; + system = + { + nixpkgs.march = "skylake"; + network = + { + static.eno2 = { ip = "192.168.178.1"; mask = 24; }; + masquerade = [ "eno2" ]; + trust = [ "eno2" ]; + }; + nix.remote.slave = {}; + fileSystems = + { + swap = [ "/dev/disk/by-partlabel/srv2-node2-swap" ]; + mount.btrfs."/dev/disk/by-partlabel/srv2-node2-root1" = + { + "/nix/remote/jykang.xmuhpc" = "/data/gpfs01/jykang/.nix"; + "/nix/remote/xmuhk" = "/public/home/xmuhk/.nix"; + }; + }; + }; + services = + { + xray.client.dnsmasq = { extraInterfaces = [ "eno1" "eno2" ]; hosts."hpc.xmu.edu.cn" = "121.192.191.11"; }; + beesd."/" = { hashTableSizeMB = 16 * 128; loadAverage = 8; }; + xrdp = { enable = true; hostname = [ "srv2.chn.moe" ]; }; + samba = { hostsAllowed = ""; shares = { home.path = "/home"; root.path = "/"; }; }; + groupshare = {}; + hpcstat = {}; + ollama = {}; + sshd = { groupBanner = true; motd = true; }; + speedtest = {}; + lumericalLicenseManager.macAddress = "70:20:84:09:a3:52"; + }; + }; + }; +} diff --git a/devices/srv2/node2/secrets.yaml b/devices/srv2/node2/secrets.yaml new file mode 100644 index 00000000..bd81a5b9 --- /dev/null +++ b/devices/srv2/node2/secrets.yaml @@ -0,0 +1,34 @@ +xray-client: + uuid: ENC[AES256_GCM,data:j2R0UtfS/es2A+Ic+Kq6FZJSqXlA/Q8tGkuAIX0ZdTsV4hGk,iv:Ovpr49isIJRdUyM3jxgiT+9Sc+qTF6ZnkKUwxIq6KUs=,tag:2VRSkiPNWaOmCqLJti8Bzw==,type:str] +wireguard: ENC[AES256_GCM,data:TEi3LAZA0BaPxeXA1yFMD6fQPRKSndVyAzNycCD/5CYXmNVyO7zv4o23ahg=,iv:tEKFPyuqmpsWf0vDoSaw4Ai6S5DzacZFA4otNgnknxY=,tag:qZJzr/Yyoex2hDfVtT6nYA==,type:str] +mariadb: + slurm: ENC[AES256_GCM,data:9wLQ1zF/kDaiw0s3UaRpiHgmngU7u6hwyqpddSjev0+Z0v58Q2oiJtK8vn+2VlSxx5ACfqEFbzp0PZYAxd575w==,iv:q9JTkgDymOwkbZ/PaxRAAQrtO96QmGgZcQuLTFCMoS4=,tag:dwOHlOTgZqT/1jQ+oGf7UQ==,type:str] +hpcstat: + key: ENC[AES256_GCM,data:+Z7MRDkLLdUqDwMrkafFKkBjeCkw+zgRoAoiVEwrr+LY0uMeW8nNYoaYrfz6Ig8CMCDgX3n/DMb0ibUeN32j3HShQIStbtUxRPGpQMyH+ealbvgskGriTFpST4VPyQxNACkUpq/e+sh2CmLbKkSxhamkjKOXwsfqrBlgVbEkp7u7HkWGuAaYL1oPGt0Q94fWXwH0UVhRYZYQ2iFA/S6SEZY8gxaTIGDKUdWU9+fOHzPQ5WfhxtKYU4p4ydyfYsAt6ffqnPSx/SI72GsUCOJ4981JX8TuvnEzx3gQLVFYheK6NibTWCy6eODbvguieVOTHSvCPTrHmoP12lHVWU2kKzLwv70Jl7sXyzKHYROG0D+/z/4DKlNeotKM/IA0q2cST08/lwSKN7WDDmrt+O6xXhvwby28ZYKEsSvvrfV+VIKzHPl84ZKbUEX5xv/GHc3THfznUvKKz5PzDiqrkjCkEt5PRMsVW9A6MU1+QEUr+sXLLtcUd2CCL87c8CpwNHJx1us6vJ4ji1gu0PGoT+60,iv:yU6j9W2Hs2D34uHMJqqPFbNy2pNEZY2kzXoNdhPMSmA=,tag:TNvEfMVrhu7HrNxY8qe5mg==,type:str] +wireless: + #ENC[AES256_GCM,data:n9OPSJsB7yNk,iv:xQzKJxqPB7uT83m/B4UoOje6NQbPLhuHR7Hp93oNz8A=,tag:gtsTx6ALnS/7fIDd7VimOg==,type:comment] + 409的5G: ENC[AES256_GCM,data:K9wm3zedoil7jHgTcb+VmbdbkG2dgrMdr3BmDRUHDVADqLANMvnUMSecggYTO4HaiI9q6uv2/BSkluanD5K4Dw==,iv:7dGET3ULKlnaDMVmkuXDek+hQPLZ2VUbPqvEOX+5jlQ=,tag:MBGmQ0NNNqX+T9EsBiWCaw==,type:str] +sops: + age: + - recipient: age19ax6vm3pv8rph5tq3mmehd9sy9jk823tw8svsd790r0lkslycquqvlwz9m + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA0Rmc2Ull1WFB4Smh3c0Zl + emlTNGJKZkpIK2JFeUNVeUcrR2FzRXRQZHlvCkhzMHpzYmZRZ0M0cXdRVi8wZmp6 + ZDRZQ2FkOWt6M0lrdjBHa3VTWXBDKzgKLS0tIGtJbTRRelg1VVk2QStwdzlFM1g4 + M1JOd1g3cVdjUFRhZ0FxcWphZXZJbkkKFXDtJVoi+qIrXp6cznevuZ+peBiRRITP + rrplqLiYsNIGKmKYtRIUu8WXDZ2q2CJ8Z+pka3W3H/U+m957hBDWyw== + -----END AGE ENCRYPTED FILE----- + - recipient: age1l4stuz0vr7gs7pqwjrmezam44702jp2vmqaqyxw0l0r42kf9updq4dfhrw + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBsSHdka3FPQUYrcXQzcTFo + a000TUllT0MvUzk5ZzVFbXZheG9ZVTM2S253CkE5VW9tQktvL2pMWFoxcnFjTGpr + Z0p1RjZWRGpSZ01TdTZRcEJXM2NOUkUKLS0tIC9rNmNzWitMdEd5dXQvdWlELzhM + M0xoL1dQR0kvMWpzN0RMNWVCTFQxNFUKj9LPjBo5NGOrGYNvu8qZ13PLYjLEWllU + LARzEn4XgkeHckouwvxZYMCx7WxmAruRWaOvnxTIczzSNP7wIrqnkA== + -----END AGE ENCRYPTED FILE----- + lastmodified: "2025-07-12T04:13:47Z" + mac: ENC[AES256_GCM,data:W+e5d1scvV24AdVdl7Pisp9HxsXQ/tPjN2NV/Bd0RXZNBRB7LNQrSfk1GadboBnihW0ctAQOFk66PZsxwE2czfFL2/yzFxm9Cf11Mc822ZL3BwjnQBK4uR9LJrbjL7x1lFUk9v0AIPhjrir8F6dcX8mq6++hHNN0wjGaH3J9E0Y=,iv:RK7e4Dxog+Qsgk6gxK0f8PN8oF9bjWIrTyYK67Cdras=,tag:QSKsETYXbhnvhhjavP4UiA==,type:str] + unencrypted_suffix: _unencrypted + version: 3.10.2 diff --git a/flake.lock b/flake.lock index e329d838..d783c556 100644 --- a/flake.lock +++ b/flake.lock @@ -851,11 +851,11 @@ }, "nixpkgs-2311": { "locked": { - "lastModified": 1735377590, - "narHash": "sha256-U9W9H/HYoaKa5wzSL2IBmnFDhxlesuKAcKi/hl5xPvE=", + "lastModified": 1760234929, + "narHash": "sha256-4W0o4O8ANykPCOQD2Jb6pdGerDSLNzIVNF7AoVNMZvM=", "owner": "CHN-beta", "repo": "nixpkgs", - "rev": "0c3e74a65634ae3f43be7d0f6c3b5156ac54747b", + "rev": "66170f3c82eecdee7dcd29a7e72ed87965bde4fc", "type": "github" }, "original": { diff --git a/flake/nixos.nix b/flake/nixos.nix index b0303b02..f7c926ef 100644 --- a/flake/nixos.nix +++ b/flake/nixos.nix @@ -1,7 +1,7 @@ { inputs, localLib }: let singles = [ "nas" "pc" "vps4" "vps6" "r2s" ]; - cluster = { srv1 = 3; srv2 = 2; }; + cluster = { srv1 = 3; srv2 = 3; }; deviceModules = builtins.listToAttrs ( (builtins.map diff --git a/modules/hardware/cpu.nix b/modules/hardware/cpu.nix index 79027f82..bf32b36c 100644 --- a/modules/hardware/cpu.nix +++ b/modules/hardware/cpu.nix @@ -5,8 +5,8 @@ inputs: type = types.nullOr (types.enum [ "intel" "amd" ]); default = let inherit (inputs.config.nixos.system.nixpkgs) march; in if march == null then null - else if inputs.lib.hasPrefix "znver" march then "amd" - else if (inputs.lib.hasSuffix "lake" march) + else if inputs.lib.hasInfix "znver" march then "amd" + else if (inputs.lib.hasInfix "lake" march) || (builtins.elem march [ "sandybridge" "silvermont" "haswell" "broadwell" ]) then "intel" else null;