Update a lot of options, simplify variables, replace options with tags

This commit is contained in:
Bun 2025-06-04 16:12:08 -04:00
parent dbc0ab6dd3
commit 7667ef9a1b
147 changed files with 663 additions and 928 deletions

View file

@ -1,7 +0,0 @@
{ config, ... }:
{
deployment = {
tags = [ "server" ];
targetHost = "538:e163:87ba:f847:3646:18b6:6b01:d8f8";
};
}

View file

@ -2,7 +2,6 @@
{
imports = [
./boot
./colmena
./disko
./filesystems
./hardware
@ -12,10 +11,10 @@
../../modules/system
];
networking.hostId = "38ba3f57";
system = {
server.enable = true;
nixos.tags = [ "server" ];
stateVersion = "24.11";
};
deployment.targetHost = "538:e163:87ba:f847:3646:18b6:6b01:d8f8";
}

View file

@ -1,6 +1,6 @@
{ config, nodes, ... }:
{ ... }:
{
fileSystems = with config.sysusers; with nodes; {
fileSystems = {
"/persist" = {
device = "/dev/disk/by-uuid/acf95700-8669-45c7-9a72-bf3215b3c325";
fsType = "btrfs";
@ -10,14 +10,9 @@
"subvol=persist"
];
};
"/kitty" = {
device = "[${kitty.config.deployment.targetHost}]:/storage/${main}";
fsType = "nfs4";
options = [
"noauto"
"soft"
"x-systemd.automount"
];
};
# Network mounts
"kitty".enable = true;
"prophet".enable = true;
};
}

View file

@ -1,4 +1,4 @@
{ config, lib, ... }:
{ ... }:
{
boot.initrd = {
availableKernelModules = [
@ -10,6 +10,7 @@
kernelModules = [ "dm-snapshot" ];
};
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
hardware.cpu.intel.updateMicrocode = true;
nixpkgs.hostPlatform = "x86_64-linux";
}

View file

@ -9,5 +9,6 @@
address = "10.1.0.1";
interface = "enp0s31f6";
};
hostId = "38ba3f57";
};
}

View file

@ -1,21 +1,20 @@
{ ... }:
{
imports = [ ./nginx ];
services = {
cloudflare-dyndns.enable = true;
forgejo.enable = true;
icecast.enable = true;
jellyfin.enable = true;
lemmy.enable = true;
mastodon.enable = true;
matrix-synapse.enable = true;
mysql.enable = true;
nextcloud.enable = true;
nfs.server.enable = true;
nginx.enable = true;
owncast.enable = true;
transmission.enable = true;
vaultwarden.enable = true;
webserver.enable = true;
minecraft-servers = {
enable = true;

View file

@ -0,0 +1,6 @@
{ ... }:
{
imports = [ ./nixfox ];
services.nginx.enable = true;
}

View file

@ -0,0 +1,29 @@
{ config, lib, ... }:
{
services.nginx.virtualHosts = {
"www.nixfox.ca" = {
enableACME = true;
addSSL = true;
default = true;
root = "/var/www/landing-page";
};
"nixfox.ca" = {
enableACME = true;
addSSL = true;
globalRedirect = "www.nixfox.ca";
locations = {
"/.well-known/matrix/client".extraConfig = ''
default_type application/json;
return 200 '{
"m.homeserver": { "base_url": "https://matrix.nixfox.ca" },
"m.identity_server": { "base_url": "https://matrix.org" }
}';
'';
"/.well-known/matrix/server".extraConfig = ''
default_type application/json;
return 200 '{ "m.server": "matrix.nixfox.ca:443" }';
'';
};
};
};
}

View file

@ -1,6 +1,6 @@
{ config, lib, ... }:
{
home-manager.users."${config.sysusers.main}".home = {
home-manager.users."${config.vars.mainUser}".home = {
stateVersion = lib.mkForce config.system.stateVersion;
};
}