dotfiles/hosts/swan/default.nix

56 lines
1.4 KiB
Nix
Raw Normal View History

2023-02-18 15:24:54 +00:00
# The Swan
# System configuration for my home NAS server
{ inputs, globals, overlays, ... }:
with inputs;
nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { };
modules = [
./hardware-configuration.nix
../../modules/common
../../modules/nixos
(removeAttrs globals [ "mail.server" ])
2023-02-18 15:24:54 +00:00
wsl.nixosModules.wsl
home-manager.nixosModules.home-manager
disko.nixosModules.disko
2023-02-18 15:24:54 +00:00
{
server = true;
2023-02-27 02:50:24 +00:00
networking.hostName = "swan";
# head -c 8 /etc/machine-id
networking.hostId = "600279f4"; # Random ID required for ZFS
2023-02-26 13:23:31 +00:00
2023-02-27 02:50:24 +00:00
zfs.enable = true;
disko = {
enableConfig = true;
2023-02-27 01:49:46 +00:00
devices = (import ../../disks/root.nix { disk = "/dev/nvme0n1"; });
# // (import ../../disks/zfs.nix {
# pool = "tank";
# disks = [ "/dev/sda" "/dev/sdb" "/dev/sdc" ];
# });
};
2023-02-27 02:50:24 +00:00
boot.zfs.extraPools = [ "tank" ];
2023-02-26 13:23:31 +00:00
2023-02-18 15:24:54 +00:00
gui.enable = false;
theme = { colors = (import ../../colorscheme/gruvbox).dark; };
nixpkgs.overlays = overlays;
2023-02-27 02:50:24 +00:00
neovim.enable = true;
2023-02-18 15:24:54 +00:00
wsl.enable = false;
caddy.enable = true;
# Disable passwords, only use SSH key
publicKey =
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s";
# Clone dotfiles
dotfiles.enable = true;
# services.nfs.server.enable = true;
2023-02-18 15:24:54 +00:00
}
];
}