From be99293472296251d1c234a44c72dbedb06bc946 Mon Sep 17 00:00:00 2001 From: th3r00t Date: Thu, 21 Aug 2025 11:34:23 -0400 Subject: [PATCH] Added configuration-common.nix --- configuration-server.nix | 3 +- configuration.nix | 28 ++---------------- modules/configuration-common.nix | 51 ++++++++++++++++++++++++++++++++ modules/home-manager-common.nix | 22 ++++++++++++++ 4 files changed, 77 insertions(+), 27 deletions(-) create mode 100644 modules/configuration-common.nix diff --git a/configuration-server.nix b/configuration-server.nix index e7b6d16..92062e1 100644 --- a/configuration-server.nix +++ b/configuration-server.nix @@ -9,8 +9,7 @@ [ # Include the results of the hardware scan. ./hardware-configuration.nix ./server-partitioning.nix - ./modules/shares.nix - ./modules/sops.nix + ./modules/configuration-common.nix ]; nix.settings.experimental-features = [ "nix-command" "flakes" ]; # Bootloader. diff --git a/configuration.nix b/configuration.nix index 4661a67..67ce002 100644 --- a/configuration.nix +++ b/configuration.nix @@ -8,11 +8,11 @@ imports = [ # Include the results of the hardware scan. ./xps13-hardware-configuration.nix - ./modules/shares.nix - ./modules/sops.nix + ./modules/configuration-common.nix + # ./modules/shares.nix + # ./modules/sops.nix ./modules/laptop.nix ]; - nix.settings.experimental-features = [ "nix-command" "flakes" ]; # Bootloader. boot = { kernelPackages = pkgs.linuxPackages_latest; @@ -31,22 +31,6 @@ ''; }; # Set your time zone. - time.timeZone = "America/New_York"; - - # Select internationalisation properties. - i18n.defaultLocale = "en_US.UTF-8"; - - i18n.extraLocaleSettings = { - LC_ADDRESS = "en_US.UTF-8"; - LC_IDENTIFICATION = "en_US.UTF-8"; - LC_MEASUREMENT = "en_US.UTF-8"; - LC_MONETARY = "en_US.UTF-8"; - LC_NAME = "en_US.UTF-8"; - LC_NUMERIC = "en_US.UTF-8"; - LC_PAPER = "en_US.UTF-8"; - LC_TELEPHONE = "en_US.UTF-8"; - LC_TIME = "en_US.UTF-8"; - }; # Enable the X11 windowing system. # You can disable this if you're only using the Wayland session. @@ -122,11 +106,9 @@ programs.firefox.enable = true; programs.hyprland.enable = true; - nixpkgs.config.allowUnfree = true; # List packages installed in system profile. To search, run: # $ nix search wget - environment.variables.EDITOR = "nvim"; environment.systemPackages = with pkgs; [ # vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default. # wget @@ -139,10 +121,6 @@ # Some programs need SUID wrappers, can be configured further or are # started in user sessions. programs.mtr.enable = true; - programs.gnupg.agent = { - enable = true; - enableSSHSupport = true; - }; # List services that you want to enable: diff --git a/modules/configuration-common.nix b/modules/configuration-common.nix new file mode 100644 index 0000000..a2067ba --- /dev/null +++ b/modules/configuration-common.nix @@ -0,0 +1,51 @@ +{ config, pkgs, ... }: + +{ + imports = + [ + ./shares.nix + ./sops.nix; + ]; + + nix.settings.experimental-features = [ "nix-command" "flakes" ]; + time.timeZone = "America/New_York"; + i18n.defaultLocale = "en_US.UTF-8"; + i18n.extraLocaleSettings = { + LC_ADDRESS = "en_US.UTF-8"; + LC_IDENTIFICATION = "en_US.UTF-8"; + LC_MEASUREMENT = "en_US.UTF-8"; + LC_MONETARY = "en_US.UTF-8"; + LC_NAME = "en_US.UTF-8"; + LC_NUMERIC = "en_US.UTF-8"; + LC_PAPER = "en_US.UTF-8"; + LC_TELEPHONE = "en_US.UTF-8"; + LC_TIME = "en_US.UTF-8"; + }; + + nixpkgs.config.allowUnfree = true; + environment.variables.EDITOR = "nvim"; + + programs.gnupg.agent = { + enable = true; + enableSSHSupport = true; + }; + + networking = { + hosts = { + "10.0.0.76" = [ "nas nas.lan" ]; + "10.0.0.125" = [ "git" "git.lan" ]; + "10.0.0.153" = [ "samphone" "samphone.lan" ]; + "10.0.0.223" = [ "pve", "pve.lan" ]; + "10.0.0.39" = [ "chronos" "chronos.lan" ]; + "10.0.0.78" = [ "pyshelf" "pyshelf.lan" ]; + "10.0.0.121" = [ "titan" "titan.lan" ]; + "10.0.0.107" = [ "psql" "psql.lan" ]; + "10.0.0.99" = [ "jelly" "jelly.lan" ]; + "10.0.0.207" = [ "sync" "sync.lan" ]; + "10.0.0.14" = [ "radios" "radios.lan" ]; + "10.0.0.172" = [ "vault" "vault.lan" ]; + "10.0.0.109" = [ "adguard" "adguard.lan" ]; + "10.0.0.50" = [ "dashy" "dashy.lan" ]; + }; + }; +} diff --git a/modules/home-manager-common.nix b/modules/home-manager-common.nix index f0e61b9..1bdf2b4 100644 --- a/modules/home-manager-common.nix +++ b/modules/home-manager-common.nix @@ -177,6 +177,28 @@ bind F3 send-keys 'igrep .' C-m enableBashIntegration = true; enableZshIntegration = true; }; + programs.ssh = { + enable = true; + extraConfig = '' + Host * + ServerAliveInterval 30 + ServerAliveCountMax 3 + AddKeysToAgent yes + ''; + matchBlocks = { + samphone = { + host = "10.0.0.153"; + user = "u0_a771"; + port = 8022; + identityFile = "~/.ssh/id_ed25519"; + }; + git.local = { + host = "10.0.0.125"; + user = "git"; + identityFile = "~/.ssh/id_ed25519"; + }; + }; + }; programs.starship = { enable = true; # custom settings