feat: full nix-topology

This commit is contained in:
Leon Schwarzäugl 2025-06-16 00:21:41 +02:00
parent ed15ef02bb
commit c7132d2d85
Signed by: swarsel
GPG key ID: 26A54C31F2A4FD84
38 changed files with 2464 additions and 807 deletions

View file

@ -45,9 +45,9 @@ in
firewall.enable = true;
};
swarselsystems = lib.recursiveUpdate
{
info = "~SwarselSystems~ demo host";
wallpaper = self + /wallpaper/lenovowp.png;
initialSetup = true;
isImpermanence = true;

View file

@ -10,6 +10,7 @@ in
"${self}/modules/iso/minimal.nix"
"${self}/modules/nixos/common/sharedsetup.nix"
"${self}/modules/nixos/common/topology.nix"
"${self}/modules/home/common/sharedsetup.nix"
inputs.home-manager.nixosModules.home-manager
@ -33,7 +34,10 @@ in
};
};
config = {
node.name = "drugstore";
node.name = lib.mkForce "drugstore";
swarselsystems = {
info = "~SwarselSystems~ installer ISO";
};
home-manager.users."${primaryUser}" = {
home = {
stateVersion = "23.05";
@ -43,7 +47,9 @@ in
};
};
};
swarselsystems.modules.general = lib.mkForce true;
swarselsystems = {
modules.general = lib.mkForce true;
};
};
home-manager.users.root.home = {
stateVersion = "23.05";

View file

@ -39,6 +39,12 @@ in
];
};
topology.self.interfaces.wg = {
addresses = [ "192.168.3.4" ];
renderer.hidePhysicalConnections = true;
virtual = true;
type = "wireguard";
};
networking = {
nftables.enable = lib.mkForce false;
@ -80,26 +86,13 @@ in
services = {
nginx = {
virtualHosts = {
# "newway.swarsel.win" = {
# enableACME = true;
# forceSSL = true;
# acmeRoot = null;
# locations = {
# "/" = {
# proxyPass = "http://192.168.1.2:8080";
# extraConfig = ''
# client_max_body_size 0;
# '';
# };
# };
# };
"syncthing.swarsel.win" = {
enableACME = true;
forceSSL = true;
acmeRoot = null;
locations = {
"/" = {
proxyPass = "http://localhost:8384/";
proxyPass = "http://localhost:8384";
extraConfig = ''
client_max_body_size 0;
'';
@ -221,6 +214,7 @@ in
swarselsystems = lib.recursiveUpdate
{
info = "VM.Standard.A1.Flex, 4 OCPUs, 24GB RAM";
flakePath = "/home/swarsel/.dotfiles";
isImpermanence = true;
isSecureBoot = false;

View file

@ -24,6 +24,7 @@ in
swarselsystems = lib.recursiveUpdate
{
info = "Framework Laptop 16, 7940HS, RX7700S, 64GB RAM";
firewall = lib.mkForce true;
wallpaper = self + /wallpaper/lenovowp.png;
hasBluetooth = true;

View file

@ -60,7 +60,7 @@ in
acmeRoot = null;
locations = {
"/" = {
proxyPass = "http://localhost:8384/";
proxyPass = "http://localhost:8384";
extraConfig = ''
client_max_body_size 0;
'';
@ -152,6 +152,7 @@ in
swarselsystems = lib.recursiveUpdate
{
info = "VM.Standard.E2.1.Micro";
flakePath = "/root/.dotfiles";
isImpermanence = false;
isSecureBoot = false;

View file

@ -57,6 +57,7 @@ in
swarselsystems = lib.recursiveUpdate
{
info = "~SwarselSystems~ remote install helper";
wallpaper = self + /wallpaper/lenovowp.png;
isImpermanence = true;
isCrypted = false;

View file

@ -30,6 +30,7 @@ in
swarselsystems = lib.recursiveUpdate
{
info = "ASRock J4105-ITX, 32GB RAM";
isImpermanence = false;
isSecureBoot = true;
isCrypted = true;