From 62e8ebd47488b2afe87c3ec573610307137d4b9c Mon Sep 17 00:00:00 2001 From: Gabe Venberg Date: Thu, 1 Aug 2024 17:29:25 -0500 Subject: [PATCH] starting cirrostratus config. --- hosts/cirrostratus/default.nix | 85 ++++++++++++++++++++++++++++++ hosts/cirrostratus/disk-config.nix | 78 +++++++++++++++++++++++++++ hosts/remotepi-karp/default.nix | 2 +- 3 files changed, 164 insertions(+), 1 deletion(-) create mode 100644 hosts/cirrostratus/default.nix create mode 100644 hosts/cirrostratus/disk-config.nix diff --git a/hosts/cirrostratus/default.nix b/hosts/cirrostratus/default.nix new file mode 100644 index 0000000..96f6912 --- /dev/null +++ b/hosts/cirrostratus/default.nix @@ -0,0 +1,85 @@ +{ + inputs, + configLib, + ... +}: +# Kapr site server. +inputs.nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + specialArgs = {inherit inputs configLib;}; + # > Our main nixos configuration file < + modules = [ + inputs.home-manager.nixosModules.home-manager + inputs.disko.nixosModules.disko + ./disk-config.nix + ./nginx.nix + ../../configs/nixos/common.nix + ../../configs/nixos/tailscale.nix + ../../configs/nixos/sshd.nix + # ../../configs/nixos/secrets.nix + ({ + config, + pkgs, + configLib, + ... + }: { + host = { + user = "gabe"; + fullName = "Gabe Venberg"; + gui.enable = false; + }; + networking.hostName = "cirrostratus"; # Define your hostname. + networking.hostId = "1b9da0b9"; + networking.useNetworkd = true; + systemd.network = { + enable = true; + networks."eth0" = { + name = "eth0"; + address = ["10.10.10.31/TODO"]; + gateway = ["TODO"]; + dns = ["1.1.1.1"]; + }; + }; + + home-manager.users.${config.host.user} = { + inputs, + osConfig, + lib, + ... + }: { + host = osConfig.host; + user = { + git = { + profile = { + name = config.host.fullName; + email = "gabevenberg@gmail.com"; + }; + workProfile.enable = false; + }; + }; + imports = [ + ../../roles/home-manager/minimal-terminal.nix + ../../configs/home-manager/common.nix + inputs.nixvim.homeManagerModules.nixvim + ]; + }; + + # Bootloader. + boot.loader.systemd-boot.enable = true; + + # Open ports in the firewall. + # networking.firewall.allowedTCPPorts = [ ... ]; + # networking.firewall.allowedUDPPorts = [ ... ]; + # Or disable the firewall altogether. + # networking.firewall.enable = false; + + # This value determines the NixOS release from which the default + # settings for stateful data, like file locations and database versions + # on your system were taken. It‘s perfectly fine and recommended to leave + # this value at the release version of the first install of this system. + # Before changing this value read the documentation for this option + # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). + system.stateVersion = "24.05"; # Did you read the comment? + }) + ]; +} diff --git a/hosts/cirrostratus/disk-config.nix b/hosts/cirrostratus/disk-config.nix new file mode 100644 index 0000000..3668834 --- /dev/null +++ b/hosts/cirrostratus/disk-config.nix @@ -0,0 +1,78 @@ +{ + disko.devices = { + disk = { + ssd = { + type = "disk"; + device = "/dev/TODO"; + content = { + type = "gpt"; + partitions = { + ESP = { + size = "64M"; + type = "EF00"; + content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot"; + }; + }; + root = { + size = "100%"; + content = { + type = "filesystem"; + format = "ext4"; + mountpoint = "/"; + }; + }; + }; + }; + }; + zfsa = { + type = "disk"; + device = "/dev/TODO"; + content = { + type = "gpt"; + partitions = { + zfs = { + size = "100%"; + content = { + type = "zfs"; + pool = "storage"; + }; + }; + }; + }; + }; + zfsb = { + type = "disk"; + device = "/dev/TODO"; + content = { + type = "gpt"; + partitions = { + zfs = { + size = "100%"; + content = { + type = "zfs"; + pool = "storage"; + }; + }; + }; + }; + }; + }; + zpool = { + storage = { + type = "zpool"; + mode = "mirror"; + mountpoint = "/storage"; + + datasets = { + dataset = { + type = "zfs_fs"; + mountpoint = "/storage/dataset"; + }; + }; + }; + }; + }; +} diff --git a/hosts/remotepi-karp/default.nix b/hosts/remotepi-karp/default.nix index 878a702..7dc7d77 100644 --- a/hosts/remotepi-karp/default.nix +++ b/hosts/remotepi-karp/default.nix @@ -35,7 +35,7 @@ inputs.nixpkgs.lib.nixosSystem { enable = true; networks."eth0" = { name = "eth0"; - address = ["TODO"]; + address = ["10.10.10.30/TODO"]; gateway = ["TODO"]; dns = ["1.1.1.1"]; };