From 2a930a6c9d4cc5fa2eeeedcde88161f64f5b9197 Mon Sep 17 00:00:00 2001 From: Snorre Ettrup Altschul Date: Mon, 3 Mar 2025 21:58:20 +0100 Subject: [PATCH] static ip --- home.nix | 6 +++++- modules/networking.nix | 34 +++++++++++++++++++++------------- services/jellyfin.nix | 9 +++------ services/mailserver.nix | 9 ++++----- 4 files changed, 33 insertions(+), 25 deletions(-) diff --git a/home.nix b/home.nix index 9d54759..37a2adf 100755 --- a/home.nix +++ b/home.nix @@ -1,4 +1,4 @@ -{username ? throw "no username provided"}: {...}: { +{username ? throw "no username provided"}: {pkgs,...}: { imports = []; home.username = username; @@ -6,6 +6,10 @@ programs.home-manager.enable = true; + home.packages = with pkgs; [ + dig + ]; + home.sessionVariables = { EDITOR = "vim"; }; diff --git a/modules/networking.nix b/modules/networking.nix index a7a81b1..3639f33 100755 --- a/modules/networking.nix +++ b/modules/networking.nix @@ -2,25 +2,33 @@ networking.hostName = hostname; networking.hostId = "2ead098f"; networking.networkmanager.enable = true; + networking.useDHCP = false; + # networking.resolvconf.dnsExtensionMechanism = false; networking.firewall = { enable = true; allowedTCPPorts = []; allowedUDPPorts = []; }; - # Static ip - # networking.interfaces.enp2s0 = { - # ipv4.addresses = [ - # { - # address = "10.0.201.23"; - # prefixLength = 24; - # } - # ]; - # }; - # networking.defaultGateway = { - # address = "10.0.201.1"; - # interface = "enp2s0"; - # }; + networking.interfaces.enp2s0 = { + ipv4.addresses = [ + { + address = "10.0.101.10"; + prefixLength = 24; + } + ]; + }; + + networking.defaultGateway = { + address = "10.0.101.1"; + interface = "enp2s0"; + }; + + networking.nameservers = [ + "10.0.101.1" + "8.8.8.8" + "8.8.4.4" + ]; # Uncomment when domain is set up # security.acme = { diff --git a/services/jellyfin.nix b/services/jellyfin.nix index 3846b11..b3ac56b 100644 --- a/services/jellyfin.nix +++ b/services/jellyfin.nix @@ -1,12 +1,10 @@ -{ pkgs, ... }: -let +{pkgs, ...}: let host = "127.0.0.1"; port = 8096; -in -{ +in { # Enable VAAPI nixpkgs.config.packageOverrides = pkgs: { - vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; }; + vaapiIntel = pkgs.vaapiIntel.override {enableHybridCodec = true;}; }; hardware.graphics = { enable = true; @@ -48,5 +46,4 @@ in }; }; }; - } diff --git a/services/mailserver.nix b/services/mailserver.nix index 8e6c73d..96d2aac 100644 --- a/services/mailserver.nix +++ b/services/mailserver.nix @@ -1,5 +1,4 @@ -{fetchFromGitLab, ...}: -{ +{fetchFromGitLab, ...}: { imports = [ (fetchFromGitLab { owner = "simple-nixos-webserver"; @@ -9,10 +8,10 @@ }) ]; - mailserver = { + mailserver = { enable = true; fqdn = "mail.spoodythe.one"; - domains = [ "spoodythe.one" ]; + domains = ["spoodythe.one"]; # A list of all login accounts. To create the password hashes, use # nix-shell -p mkpasswd --run 'mkpasswd -sm bcrypt' @@ -26,6 +25,6 @@ # Use Let's Encrypt certificates. Note that this needs to set up a stripped # down nginx and opens port 80. certificateScheme = "acme-nginx"; - certificateDomains = [ "mail.spoodythe.one" ]; + certificateDomains = ["mail.spoodythe.one"]; }; }