diff --git a/hosts/lily/default.nix b/hosts/lily/default.nix index acc1a6c..21b6992 100644 --- a/hosts/lily/default.nix +++ b/hosts/lily/default.nix @@ -1,88 +1,15 @@ -{ - lib, - pkgs, - config, - ... -}: -let - externalInterface = "wan0"; - # networks = config.homelab.networks.local; - # internalInterfaces = lib.mapAttrsToList (_: val: val.interface) networks; - # internalIPs = lib.mapAttrsToList ( - # _: val: lib.strings.removeSuffix ".1" val.cidr + ".0/24" - # ) networks; -in +{ pkgs, config, ... }: { imports = [ ./hardware-configuration.nix ./variables.nix - ./../../modules/core/default.router.nix + ./../../modules/core/default.server.nix ]; - liv = { - server.enable = true; - router.enable = true; - }; - - boot = { - supportedFilesystems = [ "zfs" ]; - loader.grub = { - enable = true; - device = "/dev/sda"; - useOSProber = true; - }; - kernel = { - sysctl = { - # Forward both IPv4 and IPv6 on all interfaces - "net.ipv4.conf.all.forwarding" = true; - "net.ipv6.conf.all.forwarding" = false; - - # By default, do not automatically configure any IPv6 addresses. - # "net.ipv6.conf.all.accept_ra" = 0; - # "net.ipv6.conf.all.autoconf" = 0; - # "net.ipv6.conf.all.use_tempaddr" = 0; - - # Allow IPv6 autoconfiguration and tempory address use on WAN. - "net.ipv6.conf.${externalInterface}.accept_ra" = 2; - "net.ipv6.conf.${externalInterface}.autoconf" = 1; - }; - }; - }; - - networking = { - firewall = { - enable = true; - allowPing = true; - - # allow ssh on *all* interfaces, even wan. - allowedTCPPorts = lib.mkForce [ 22 ]; - allowedUDPPorts = lib.mkForce [ 22 ]; - - # interface-specific rules - interfaces = { - "lan0" = { - allowedTCPPorts = [ - 22 - 53 - ]; - allowedUDPPorts = [ - 22 - 53 - ]; - }; - }; - }; - }; - - services.udev.extraRules = '' - SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:25:90:47:67:6e", ATTR{type}=="1", NAME="wan0" - SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:25:90:47:67:6f", ATTR{type}=="1", NAME="lan0" - SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:25:90:63:0f:80", ATTR{type}=="1", NAME="lan1" - SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:25:90:63:0f:81", ATTR{type}=="1", NAME="lan2" - ''; - networking.hostName = "lily"; + liv.server.enable = true; + time.timeZone = "Europe/Amsterdam"; environment.systemPackages = with pkgs; [ @@ -90,6 +17,10 @@ in zfs ]; + boot = { + supportedFilesystems = [ "zfs" ]; + }; + networking.hostId = "8ddb2a9b"; services.zfs = { @@ -97,6 +28,10 @@ in trim.enable = true; }; + boot.loader.grub.enable = true; + boot.loader.grub.device = "/dev/sda"; + boot.loader.grub.useOSProber = true; + # boot.zfs.extraPools = [ "terrabite" ]; # fileSystems."/terrabite/main" = { diff --git a/modules/core/default.router.nix b/modules/core/default.router.nix deleted file mode 100644 index c0f7c80..0000000 --- a/modules/core/default.router.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ ... }: -{ - imports = - [ (import ./hardware.nix) ] - ++ [ (import ./program.nix) ] - ++ [ (import ./sshd.nix) ] - ++ [ (import ./security.nix) ] - ++ [ (import ./services.nix) ] - ++ [ (import ./system.nix) ] - ++ [ (import ./user.nix) ]; -} diff --git a/modules/core/user.nix b/modules/core/user.nix index ee3ecce..b96dbee 100644 --- a/modules/core/user.nix +++ b/modules/core/user.nix @@ -23,8 +23,6 @@ [ ./../home/default.server.nix ] else if (host == "dandelion") then [ ./../home/default.server.nix ] - else if (host == "lily") then - [ ./../home/default.server.nix ] # else if (host == "yoshino") then # [ ./../home/default.nix ] else diff --git a/roles/default.nix b/roles/default.nix index 8f3d3c2..0d11aa1 100644 --- a/roles/default.nix +++ b/roles/default.nix @@ -5,7 +5,6 @@ ++ [ (import ./amdgpu.nix) ] ++ [ (import ./nvidia.nix) ] ++ [ (import ./server.nix) ] - ++ [ (import ./router.nix) ] ++ [ (import ./desktop.nix) ] ++ [ (import ./wine.nix) ] ++ [ (import ./creative.nix) ] diff --git a/roles/router.nix b/roles/router.nix deleted file mode 100644 index a762d7d..0000000 --- a/roles/router.nix +++ /dev/null @@ -1,46 +0,0 @@ -{ - lib, - pkgs, - config, - username, - home-manager, - ... -}: -with lib; -let - cfg = config.liv.router; -in -{ - options.liv.router = { - enable = mkEnableOption "Enable router"; - }; - - config = mkIf cfg.enable { - environment.systemPackages = with pkgs; [ - pkgs.kitty.terminfo - powertop - bind - ]; - - services = { - thermald.enable = true; - vnstat.enable = true; - # cpupower-gui.enable = true; - # power-profiles-daemon.enable = true; - - # auto-cpufreq = { - # enable = true; - # settings = { - # battery = { - # governor = "powersave"; - # turbo = "auto"; - # }; - # charger = { - # governor = "performance"; - # turbo = "auto"; - # }; - # }; - # }; - }; - }; -}