Update a lot of options, simplify variables, replace options with tags
This commit is contained in:
parent
dbc0ab6dd3
commit
7667ef9a1b
147 changed files with 663 additions and 928 deletions
|
@ -1,10 +0,0 @@
|
|||
{ config, ... }:
|
||||
{
|
||||
deployment = {
|
||||
tags = [
|
||||
"latptop"
|
||||
"pc"
|
||||
];
|
||||
targetHost = "";
|
||||
};
|
||||
}
|
|
@ -2,7 +2,6 @@
|
|||
{
|
||||
imports = [
|
||||
./boot
|
||||
./colmena
|
||||
./disko
|
||||
./filesystems
|
||||
./hardware
|
||||
|
@ -11,7 +10,9 @@
|
|||
];
|
||||
|
||||
system = {
|
||||
desktop.enable = true;
|
||||
nixos.tags = [ "pc" ];
|
||||
stateVersion = "25.05";
|
||||
};
|
||||
|
||||
deployment.targetHost = "";
|
||||
}
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
{ config, nodes, ... }:
|
||||
{ ... }:
|
||||
{
|
||||
fileSystems = with config.sysusers; with nodes; {
|
||||
# Local mounts
|
||||
fileSystems = {
|
||||
"/persist/storage" = {
|
||||
device = "/dev/disk/by-uuid/d0d6783f-ad51-4d85-b8a9-3374f6460ef6";
|
||||
fsType = "btrfs";
|
||||
|
@ -11,43 +10,10 @@
|
|||
"subvol=storage"
|
||||
];
|
||||
};
|
||||
"/persist/home/${main}/games" = {
|
||||
device = "/dev/disk/by-uuid/d0d6783f-ad51-4d85-b8a9-3374f6460ef6";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"nofail"
|
||||
"nosuid"
|
||||
"subvol=games"
|
||||
];
|
||||
};
|
||||
|
||||
# Network mounts
|
||||
"/home/${main}/Network/Midas" = {
|
||||
device = "[${midas.config.deployment.targetHost}]:/storage";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"/home/${main}/Network/Kitty" = {
|
||||
device = "[${kitty.config.deployment.targetHost}]:/storage/bun";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"/home/${main}/Network/Prophet" = {
|
||||
device = "[${prophet.config.deployment.targetHost}]:/storage";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"kitty".enable = true;
|
||||
"midas".enable = true;
|
||||
"prophet".enable = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, modulesPath, ... }:
|
||||
{ modulesPath, ... }:
|
||||
{
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
|
@ -17,6 +17,7 @@
|
|||
kernelModules = [ "kvm-intel" ];
|
||||
};
|
||||
|
||||
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";
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
home-manager.users."${config.sysusers.main}" = {
|
||||
home-manager.users."${config.vars.mainUser}" = {
|
||||
home = {
|
||||
desktop.enable = true;
|
||||
gaming.enable = true;
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
{ config, ... }:
|
||||
{
|
||||
deployment = {
|
||||
tags = [
|
||||
"misc"
|
||||
"pc"
|
||||
];
|
||||
targetHost = "4ec:1001:ca5a:ae79:40e2:cb4c:e3c9:f401";
|
||||
};
|
||||
}
|
|
@ -1,8 +1,7 @@
|
|||
{ lib, ... }:
|
||||
{ ... }:
|
||||
{
|
||||
imports = [
|
||||
./boot
|
||||
./colmena
|
||||
./disko
|
||||
./hardware
|
||||
./services
|
||||
|
@ -11,7 +10,9 @@
|
|||
];
|
||||
|
||||
system = {
|
||||
desktop.enable = true;
|
||||
nixos.tags = [ "pc" ];
|
||||
stateVersion = "24.11";
|
||||
};
|
||||
|
||||
deployment.targetHost = "4ec:1001:ca5a:ae79:40e2:cb4c:e3c9:f401";
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, modulesPath, ... }:
|
||||
{ modulesPath, ... }:
|
||||
{
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
|
@ -18,6 +18,10 @@
|
|||
kernelModules = [ "kvm-intel" ];
|
||||
};
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu = {
|
||||
amd.updateMicrocode = true;
|
||||
intel.updateMicrocode = true;
|
||||
};
|
||||
|
||||
nixpkgs.hostPlatform = "x86_64-linux";
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, lib, ... }:
|
||||
{
|
||||
home-manager.users."${config.sysusers.main}".home = {
|
||||
home-manager.users."${config.vars.mainUser}".home = {
|
||||
desktop.enable = true;
|
||||
school.enable = true;
|
||||
stateVersion = lib.mkForce config.system.stateVersion;
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
{ config, ... }:
|
||||
{
|
||||
deployment = {
|
||||
tags = [
|
||||
"latptop"
|
||||
"pc"
|
||||
];
|
||||
targetHost = "40e:404:a427:da33:163e:97b3:a2a3:9ed4";
|
||||
};
|
||||
}
|
|
@ -2,7 +2,6 @@
|
|||
{
|
||||
imports = [
|
||||
./boot
|
||||
./colmena
|
||||
./disko
|
||||
./filesystems
|
||||
./hardware
|
||||
|
@ -11,7 +10,9 @@
|
|||
];
|
||||
|
||||
system = {
|
||||
desktop.enable = true;
|
||||
nixos.tags = [ "pc" ];
|
||||
stateVersion = "24.11";
|
||||
};
|
||||
|
||||
deployment.targetHost = "40e:404:a427:da33:163e:97b3:a2a3:9ed4";
|
||||
}
|
||||
|
|
|
@ -1,33 +1,9 @@
|
|||
{ config, nodes, ... }:
|
||||
{ ... }:
|
||||
{
|
||||
fileSystems = with config.sysusers; with nodes; {
|
||||
fileSystems = {
|
||||
# Network mounts
|
||||
"/home/${main}/Network/Midas" = {
|
||||
device = "[${midas.config.deployment.targetHost}]:/storage";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"/home/${main}/Network/Kitty" = {
|
||||
device = "[${kitty.config.deployment.targetHost}]:/storage/bun";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"/home/${main}/Network/Prophet" = {
|
||||
device = "[${prophet.config.deployment.targetHost}]:/storage";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"kitty".enable = true;
|
||||
"midas".enable = true;
|
||||
"prophet".enable = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, modulesPath, ... }:
|
||||
{ modulesPath, ... }:
|
||||
{
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
|
@ -16,6 +16,7 @@
|
|||
kernelModules = [ "kvm-intel" ];
|
||||
};
|
||||
|
||||
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";
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, lib, ... }:
|
||||
{
|
||||
home-manager.users."${config.sysusers.main}".home = {
|
||||
home-manager.users."${config.vars.mainUser}".home = {
|
||||
desktop.enable = true;
|
||||
production.enable = true;
|
||||
stateVersion = lib.mkForce config.system.stateVersion;
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
{ config, ... }:
|
||||
{
|
||||
deployment = {
|
||||
tags = [
|
||||
"latptop"
|
||||
"pc"
|
||||
];
|
||||
targetHost = "5ce:969c:40d1:9575:f5e:591d:c377:a20b";
|
||||
};
|
||||
}
|
|
@ -2,7 +2,6 @@
|
|||
{
|
||||
imports = [
|
||||
./boot
|
||||
./colmena
|
||||
./disko
|
||||
./filesystems
|
||||
./hardware
|
||||
|
@ -13,8 +12,10 @@
|
|||
];
|
||||
|
||||
system = {
|
||||
desktop.enable = true;
|
||||
nixos.tags = [ "pc" ];
|
||||
steamdeck.enable = true;
|
||||
stateVersion = "24.11";
|
||||
};
|
||||
|
||||
deployment.targetHost = "5ce:969c:40d1:9575:f5e:591d:c377:a20b";
|
||||
}
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
{ config, nodes, ... }:
|
||||
{ config, ... }:
|
||||
{
|
||||
fileSystems = with config.sysusers; with nodes; {
|
||||
# Local mounts
|
||||
fileSystems = {
|
||||
"/mnt/Games" = {
|
||||
device = "/dev/disk/by-uuid/cb109a85-846d-4417-9c50-a2279bd20803";
|
||||
fsType = "btrfs";
|
||||
|
@ -12,32 +11,8 @@
|
|||
};
|
||||
|
||||
# Network mounts
|
||||
"/home/${main}/Network/Midas" = {
|
||||
device = "[${midas.config.deployment.targetHost}]:/storage";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"/home/${main}/Network/Kitty" = {
|
||||
device = "[${kitty.config.deployment.targetHost}]:/storage/bun";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"/home/${main}/Network/Prophet" = {
|
||||
device = "[${prophet.config.deployment.targetHost}]:/storage";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"kitty".enable = !config.system.steamdeck.enable;
|
||||
"midas".enable = !config.system.steamdeck.enable;
|
||||
"prophet".enable = !config.system.steamdeck.enable;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, modulesPath, ... }:
|
||||
{ modulesPath, ... }:
|
||||
{
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
|
@ -15,6 +15,7 @@
|
|||
kernelModules = [ "kvm-amd" ];
|
||||
};
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.amd.updateMicrocode = true;
|
||||
|
||||
nixpkgs.hostPlatform = "x86_64-linux";
|
||||
}
|
||||
|
|
|
@ -30,9 +30,9 @@
|
|||
programs.steam.extest.enable = true;
|
||||
|
||||
services = {
|
||||
desktopManager.gnome.enable = true;
|
||||
keyd.enable = lib.mkForce false;
|
||||
tlp.enable = lib.mkForce false;
|
||||
desktopManager.gnome.enable = true;
|
||||
};
|
||||
|
||||
hardware.xone.enable = true;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, lib, ... }:
|
||||
{
|
||||
home-manager.users."${config.sysusers.main}".home = {
|
||||
home-manager.users."${config.vars.mainUser}".home = {
|
||||
guifull.enable = true;
|
||||
school.enable = true;
|
||||
enableNixpkgsReleaseCheck = false;
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
{ config, ... }:
|
||||
{
|
||||
deployment = {
|
||||
tags = [ "server" ];
|
||||
targetHost = "53f:dc2d:80c9:3ca2:4b15:ef4d:38a0:c868";
|
||||
};
|
||||
}
|
|
@ -2,7 +2,6 @@
|
|||
{
|
||||
imports = [
|
||||
./boot
|
||||
./colmena
|
||||
./disko
|
||||
./filesystems
|
||||
./hardware
|
||||
|
@ -10,13 +9,17 @@
|
|||
../../modules/system
|
||||
];
|
||||
|
||||
networking.hostId = "8745e22e";
|
||||
|
||||
system = {
|
||||
server.enable = true;
|
||||
extraUsers.enable = true;
|
||||
nixos.tags = [
|
||||
"extra-users"
|
||||
"server"
|
||||
];
|
||||
stateVersion = "24.11";
|
||||
};
|
||||
|
||||
deployment.targetHost = "53f:dc2d:80c9:3ca2:4b15:ef4d:38a0:c868";
|
||||
|
||||
networking.hostId = "8745e22e";
|
||||
|
||||
services.nfs.server.enable = true;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, nodes, ... }:
|
||||
{ ... }:
|
||||
{
|
||||
fileSystems = with config.sysusers; with nodes; {
|
||||
fileSystems = {
|
||||
"/persist/storage" = {
|
||||
device = "/dev/disk/by-uuid/edd3e293-1aff-4fc0-96fa-4e17d6cccfca";
|
||||
fsType = "btrfs";
|
||||
|
@ -11,23 +11,7 @@
|
|||
};
|
||||
|
||||
# Network mounts
|
||||
"/home/${main}/Network/Midas" = {
|
||||
device = "[${midas.config.deployment.targetHost}]:/storage";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"/home/${main}/Network/Prophet" = {
|
||||
device = "[${prophet.config.deployment.targetHost}]:/storage";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"midas".enable = true;
|
||||
"prophet".enable = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, ... }:
|
||||
{ ... }:
|
||||
{
|
||||
boot.initrd = {
|
||||
availableKernelModules = [
|
||||
|
@ -9,6 +9,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";
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
{ config, ... }:
|
||||
{
|
||||
deployment = {
|
||||
tags = [ "server" ];
|
||||
targetHost = "538:e163:87ba:f847:3646:18b6:6b01:d8f8";
|
||||
};
|
||||
}
|
|
@ -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";
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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";
|
||||
}
|
||||
|
|
|
@ -9,5 +9,6 @@
|
|||
address = "10.1.0.1";
|
||||
interface = "enp0s31f6";
|
||||
};
|
||||
hostId = "38ba3f57";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
|
|
6
hosts/midas/services/nginx/default.nix
Normal file
6
hosts/midas/services/nginx/default.nix
Normal file
|
@ -0,0 +1,6 @@
|
|||
{ ... }:
|
||||
{
|
||||
imports = [ ./nixfox ];
|
||||
|
||||
services.nginx.enable = true;
|
||||
}
|
29
hosts/midas/services/nginx/nixfox/default.nix
Normal file
29
hosts/midas/services/nginx/nixfox/default.nix
Normal 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" }';
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
{ config, ... }:
|
||||
{
|
||||
deployment = {
|
||||
buildOnTarget = true;
|
||||
tags = [ "server" ];
|
||||
targetHost = "42f:2737:2aed:4dee:cbe4:3c73:1918:ad9b";
|
||||
};
|
||||
}
|
|
@ -2,7 +2,6 @@
|
|||
{
|
||||
imports = [
|
||||
./boot
|
||||
./colmena
|
||||
./disko
|
||||
./filesystems
|
||||
./hardware
|
||||
|
@ -12,10 +11,15 @@
|
|||
(modulesPath + "/profiles/headless.nix")
|
||||
];
|
||||
|
||||
networking.hostId = "97a21a38";
|
||||
|
||||
system = {
|
||||
server.enable = true;
|
||||
nixos.tags = [ "server" ];
|
||||
stateVersion = "24.05";
|
||||
};
|
||||
|
||||
deployment = {
|
||||
buildOnTarget = true;
|
||||
targetHost = "42f:2737:2aed:4dee:cbe4:3c73:1918:ad9b";
|
||||
};
|
||||
|
||||
networking.hostId = "97a21a38";
|
||||
}
|
||||
|
|
|
@ -1,11 +1,17 @@
|
|||
{ ... }:
|
||||
{
|
||||
fileSystems."/persist/storage" = {
|
||||
device = "/dev/disk/by-uuid/ef465845-cc56-4db5-9260-8ae515eb025e";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"nofail"
|
||||
"nosuid"
|
||||
];
|
||||
fileSystems = {
|
||||
"/persist/storage" = {
|
||||
device = "/dev/disk/by-uuid/ef465845-cc56-4db5-9260-8ae515eb025e";
|
||||
fsType = "btrfs";
|
||||
options = [
|
||||
"nofail"
|
||||
"nosuid"
|
||||
];
|
||||
};
|
||||
|
||||
# Network mounts
|
||||
"kitty".enable = true;
|
||||
"midas".enable = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, ... }:
|
||||
{ ... }:
|
||||
{
|
||||
boot.initrd = {
|
||||
availableKernelModules = [
|
||||
|
@ -8,5 +8,5 @@
|
|||
kernelModules = [ "dm-snapshot" ];
|
||||
};
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux";
|
||||
nixpkgs.hostPlatform = "aarch64-linux";
|
||||
}
|
||||
|
|
|
@ -2,9 +2,10 @@
|
|||
{
|
||||
services = {
|
||||
cloudflare-dyndns.enable = true;
|
||||
mailserver.enable = true;
|
||||
mysql.enable = true;
|
||||
nfs.server.enable = true;
|
||||
nginx.enable = true;
|
||||
};
|
||||
|
||||
mailserver.enable = true;
|
||||
}
|
||||
|
|
6
hosts/prophet/user/@!
Normal file
6
hosts/prophet/user/@!
Normal file
|
@ -0,0 +1,6 @@
|
|||
{ config, lib, ... }:
|
||||
{
|
||||
home-manager.users."${config.vars.mainUser}".home = {
|
||||
stateVersion = lib.mkForce config.system.stateVersion;
|
||||
};
|
||||
}
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,17 +1,11 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
commonKernelParams = [
|
||||
# VM/GPU passthrough
|
||||
"amd_iommu=on"
|
||||
"iommu=pt"
|
||||
|
||||
# Isolate devices into IOMMU groups
|
||||
"pcie_acs_override=downstream,multifunction"
|
||||
"pci=routeirq"
|
||||
];
|
||||
in {
|
||||
boot = {
|
||||
# Latest kernel and IOMMU isolation
|
||||
kernelPackages = pkgs.linuxPackages_6_14;
|
||||
kernelParams = commonKernelParams ++ [ "vfio-pci.ids=10de:1f82,10de:10fa" ];
|
||||
|
||||
|
@ -30,8 +24,5 @@ in {
|
|||
};
|
||||
|
||||
# Use second GPU on boot
|
||||
specialisation.gputwo.configuration = {
|
||||
boot.kernelParams = commonKernelParams ++ [ "vfio-pci.ids=10de:2504,10de:228e" ];
|
||||
environment.sessionVariables.WLR_RENDERER = lib.mkForce "gles2";
|
||||
};
|
||||
specialisation.gputwo.configuration.boot.kernelParams = commonKernelParams ++ [ "vfio-pci.ids=10de:2504,10de:228e" ];
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, ... }:
|
||||
{ ... }:
|
||||
{
|
||||
deployment = {
|
||||
tags = [
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
{
|
||||
imports = [
|
||||
./boot
|
||||
./colmena
|
||||
./disko
|
||||
./filesystems
|
||||
./hardware
|
||||
|
@ -11,10 +10,13 @@
|
|||
];
|
||||
|
||||
system = {
|
||||
desktop.enable = true;
|
||||
nvidia.enable = true;
|
||||
nixos.tags = [ "pc" ];
|
||||
stateVersion = "24.05";
|
||||
};
|
||||
|
||||
deployment.targetHost = "4e4:535:9d47:f367:becd:6557:458d:5b1b";
|
||||
|
||||
services.xserver.videoDrivers = [ "nvidia" ];
|
||||
|
||||
virtualisation.libvirtd.enable = true;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, nodes, ... }:
|
||||
{ ... }:
|
||||
{
|
||||
fileSystems = with config.sysusers; with nodes; {
|
||||
fileSystems = {
|
||||
# Games and such
|
||||
"/mnt/Linux1" = {
|
||||
device = "/dev/disk/by-uuid/b2901f8c-ffda-4b88-bb63-a9ea0c96ccb4";
|
||||
|
@ -39,32 +39,8 @@
|
|||
};
|
||||
|
||||
# Network mounts
|
||||
"/home/${main}/Network/Midas" = {
|
||||
device = "[${midas.config.deployment.targetHost}]:/storage";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"/home/${main}/Network/Kitty" = {
|
||||
device = "[${kitty.config.deployment.targetHost}]:/storage/${main}";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"/home/${main}/Network/Prophet" = {
|
||||
device = "[${prophet.config.deployment.targetHost}]:/storage";
|
||||
fsType = "nfs4";
|
||||
options = [
|
||||
"noauto"
|
||||
"soft"
|
||||
"x-systemd.automount"
|
||||
];
|
||||
};
|
||||
"kitty".enable = true;
|
||||
"midas".enable = true;
|
||||
"prophet".enable = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, modulesPath, ... }:
|
||||
{ modulesPath, ... }:
|
||||
{
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
|
@ -16,6 +16,7 @@
|
|||
kernelModules = [ "kvm-amd" ];
|
||||
};
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.amd.updateMicrocode = true;
|
||||
|
||||
nixpkgs.hostPlatform = "x86_64-linux";
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, lib, ... }:
|
||||
{
|
||||
home-manager.users."${config.sysusers.main}" = {
|
||||
home-manager.users."${config.vars.mainUser}" = {
|
||||
home = {
|
||||
guifull.enable = true;
|
||||
stateVersion = lib.mkForce config.system.stateVersion;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue