From 38949ee1b7e22ec676e5eecdeb71f49c2d561645 Mon Sep 17 00:00:00 2001 From: twoneis Date: Tue, 23 Jul 2024 23:42:50 +0200 Subject: [PATCH] more modules and move stuff to modules --- modules/default.nix | 54 ++------------------------ modules/fonts/default.nix | 18 +++++++++ modules/networking/default.nix | 12 ++++++ modules/niri/default.nix | 14 +++++-- modules/niri/xwl-satellite.service.nix | 5 ++- modules/nix/default.nix | 19 +++++++++ modules/nix/nixpkgs.nix | 13 +++++++ 7 files changed, 80 insertions(+), 55 deletions(-) create mode 100644 modules/fonts/default.nix create mode 100644 modules/networking/default.nix create mode 100644 modules/nix/default.nix create mode 100644 modules/nix/nixpkgs.nix diff --git a/modules/default.nix b/modules/default.nix index d4ee4e5..2e1be93 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -1,72 +1,26 @@ -{ inputs, pkgs, lib, config, ... }: -let - inherit (lib) mkDefault; -in { +{ pkgs, config, ... }: { imports = [ ./containers + ./fonts ./games ./home ./impermanence + ./networking ./niri + ./nix ./secureboot ./user ./utils ./vm ]; - - nixpkgs.config.allowUnfree = true; - - environment.sessionVariables = { - NIXOS_OZONE_WL = "1"; - }; - - nix = { - nixPath = ["nixpkgs=${inputs.nixpkgs}"]; - gc = { - automatic = true; - dates = "weekly"; - options = "--delete-older-than 14d"; - }; - settings = { - experimental-features = [ "nix-command" "flakes" ]; - auto-optimise-store = true; - }; - }; - documentation.nixos.enable = false; - networking = { - useDHCP = mkDefault true; - wireless.iwd.enable = true; - extraHosts = - '' - 10.10.11.245 surveillance.htb - ''; - }; - time.timeZone = "Europe/Amsterdam"; i18n = { defaultLocale = "en_US.UTF-8"; }; - fonts = { - packages = with pkgs; [ - alegreya - alegreya-sans - (nerdfonts.override { fonts = [ "FiraCode" ]; }) - roboto - ubuntu_font_family - ]; - fontconfig = { - defaultFonts = { - serif = [ "Alegreya" ]; - sansSerif = [ "Alegreya Sans" ]; - monospace = [ "Fira Code Nerd Font" ]; - }; - }; - }; - services = { xserver = { enable = true; diff --git a/modules/fonts/default.nix b/modules/fonts/default.nix new file mode 100644 index 0000000..e9570f3 --- /dev/null +++ b/modules/fonts/default.nix @@ -0,0 +1,18 @@ +{ pkgs, ... }: { + fonts = { + packages = with pkgs; [ + alegreya + alegreya-sans + (nerdfonts.override { fonts = [ "FiraCode" ]; }) + roboto + ubuntu_font_family + ]; + fontconfig = { + defaultFonts = { + serif = [ "Alegreya" ]; + sansSerif = [ "Alegreya Sans" ]; + monospace = [ "Fira Code Nerd Font" ]; + }; + }; + }; +} diff --git a/modules/networking/default.nix b/modules/networking/default.nix new file mode 100644 index 0000000..111614e --- /dev/null +++ b/modules/networking/default.nix @@ -0,0 +1,12 @@ +{ lib, ... }: let + inherit (lib) mkDefault; +in { + networking = { + useDHCP = mkDefault true; + wireless.iwd.enable = true; + extraHosts = + '' + 10.10.11.245 surveillance.htb + ''; + }; +} diff --git a/modules/niri/default.nix b/modules/niri/default.nix index 6d9d801..f1dec06 100644 --- a/modules/niri/default.nix +++ b/modules/niri/default.nix @@ -1,10 +1,16 @@ -{ inputs, lib, config, pkgs, ... }: { +{ lib, config, pkgs, ... }: let + inherit (lib) mkIf; + inherit (config) withNiri username; +in { imports = [ ./xwl-satellite.service.nix ]; - config = lib.mkIf config.withNiri { - nixpkgs.overlays = [ inputs.niri.overlays.niri ]; + config = mkIf withNiri { + environment.sessionVariables = { + NIXOS_OZONE_WL = "1"; + }; + programs.niri = { enable = true; @@ -16,7 +22,7 @@ lidSwitch = "suspend"; }; - home-manager.users.${config.username} = { + home-manager.users.${username} = { home.packages = with pkgs; [ brightnessctl swaybg diff --git a/modules/niri/xwl-satellite.service.nix b/modules/niri/xwl-satellite.service.nix index a41ccb1..7f8ad56 100644 --- a/modules/niri/xwl-satellite.service.nix +++ b/modules/niri/xwl-satellite.service.nix @@ -1,4 +1,7 @@ -{ lib, config, pkgs, ... }: lib.mkIf config.withNiri { +{ lib, config, pkgs, ... }: let + inherit (lib) mkIf; + inherit (config) withNiri; +in mkIf withNiri { environment.systemPackages = with pkgs; [ xwayland-satellite xwayland ]; systemd.user.services.xwayland-satellite = { description = "Xwayland outside your Wayland"; diff --git a/modules/nix/default.nix b/modules/nix/default.nix new file mode 100644 index 0000000..4200d0f --- /dev/null +++ b/modules/nix/default.nix @@ -0,0 +1,19 @@ +{ inputs, ... }: { + imports = [ + ./nixpkgs.nix + ]; + + nix = { + nixPath = ["nixpkgs=${inputs.nixpkgs}"]; + gc = { + automatic = true; + dates = "weekly"; + options = "--delete-older-than 14d"; + }; + settings = { + experimental-features = [ "nix-command" "flakes" ]; + auto-optimise-store = true; + }; + }; + +} diff --git a/modules/nix/nixpkgs.nix b/modules/nix/nixpkgs.nix new file mode 100644 index 0000000..2f20788 --- /dev/null +++ b/modules/nix/nixpkgs.nix @@ -0,0 +1,13 @@ +{ inputs, lib, config, ... }: let + inherit (lib) mkIf; +in{ + nixpkgs = { + overlays = mkIf config.withNiri [ + inputs.niri.overlays.niri + ]; + + config = { + allowUnfree = true; + }; + }; +}