aboutsummaryrefslogtreecommitdiff
path: root/infra/hosts/plato/plato.nix
diff options
context:
space:
mode:
Diffstat (limited to 'infra/hosts/plato/plato.nix')
-rw-r--r--infra/hosts/plato/plato.nix70
1 files changed, 70 insertions, 0 deletions
diff --git a/infra/hosts/plato/plato.nix b/infra/hosts/plato/plato.nix
new file mode 100644
index 0000000..e78466f
--- /dev/null
+++ b/infra/hosts/plato/plato.nix
@@ -0,0 +1,70 @@
+{ config, ... }:
+let
+ flakeConfig = config;
+in
+{
+ flake.modules.nixos.plato =
+ { config, ... }:
+ {
+ imports = map (m: flakeConfig.flake.modules.nixos."${m}") [
+ # keep-sorted start
+ "base"
+ "deploy"
+ # keep-sorted end
+ ];
+
+ infra = {
+ tailscale = {
+ authenticate = true;
+ ssh = true;
+ };
+
+ zfs.pool = "zroot";
+ };
+
+ networking = {
+ hostName = "plato";
+ hostId = "56d7f0f2";
+ };
+
+ hardware.facter.reportPath = ./facter.json;
+ system.stateVersion = "26.11";
+
+ boot.loader = {
+ efi.canTouchEfiVariables = true;
+ systemd-boot = {
+ enable = true;
+ configurationLimit = 100;
+ editor = false;
+ };
+ };
+
+ disko.devices.disk.main = {
+ type = "disk";
+ imageSize = "100G";
+ device = "/dev/disk/by-id/ata-CONSISTENT_SSD_S7_512GB_09092225J0987";
+ content = {
+ type = "gpt";
+ partitions = {
+ boot = {
+ size = "1G";
+ type = "EF00";
+ content = {
+ type = "filesystem";
+ format = "vfat";
+ mountpoint = "/boot";
+ mountOptions = [ "umask=0077" ];
+ };
+ };
+ zfs = {
+ size = "100%";
+ content = {
+ type = "zfs";
+ pool = config.infra.zfs.pool;
+ };
+ };
+ };
+ };
+ };
+ };
+}