diff --git a/hosts/common/configs/system/cpu/default.nix b/hosts/common/configs/system/cpu/default.nix deleted file mode 100644 index 64eefec..0000000 --- a/hosts/common/configs/system/cpu/default.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ ... }: -{ - imports = [ ./options.nix ]; -} diff --git a/hosts/common/configs/system/default.nix b/hosts/common/configs/system/default.nix new file mode 100644 index 0000000..bf77321 --- /dev/null +++ b/hosts/common/configs/system/default.nix @@ -0,0 +1,7 @@ +{ ... }: +{ + imports = [ + ./cpu/options.nix + ./impermanence/options.nix + ]; +} diff --git a/hosts/common/configs/system/impermanence/default.nix b/hosts/common/configs/system/impermanence/default.nix index 7075569..df32be8 100644 --- a/hosts/common/configs/system/impermanence/default.nix +++ b/hosts/common/configs/system/impermanence/default.nix @@ -1,7 +1,5 @@ { config, pkgs, ... }: { - imports = [ ./options.nix ]; - # uuidgen -r | tr -d - # https://github.com/NixOS/nixpkgs/blob/master/nixos/doc/manual/administration/systemd-state.section.md # https://github.com/NixOS/nixpkgs/pull/286140/files diff --git a/hosts/common/configs/user/console/xdg/default.nix b/hosts/common/configs/user/console/xdg/default.nix index 4c861ca..7a19fe6 100644 --- a/hosts/common/configs/user/console/xdg/default.nix +++ b/hosts/common/configs/user/console/xdg/default.nix @@ -18,8 +18,6 @@ }; home-manager.users.${user} = { - imports = [ (import ./options.nix { inherit home; }) ]; - xdg = { enable = true; mimeApps.enable = true; diff --git a/hosts/common/configs/user/console/xdg/options.nix b/hosts/common/configs/user/console/xdg/options.nix deleted file mode 100644 index 7dbd9cf..0000000 --- a/hosts/common/configs/user/console/xdg/options.nix +++ /dev/null @@ -1,112 +0,0 @@ -{ - home ? throw "home argument is required", -}: -{ config, lib, ... }: -let - cfg = config.xdg; -in -{ - options.xdg = - with lib; - with types; - { - relativeCacheHome = mkOption { - type = str; - readOnly = true; - default = ".cache"; - description = "Relative path to directory holding application caches."; - }; - - relativeConfigHome = mkOption { - type = str; - readOnly = true; - default = ".config"; - description = "Relative path to directory holding application configurations."; - }; - - relativeDataHome = mkOption { - type = str; - readOnly = true; - default = ".local/share"; - description = "Relative path to directory holding application data."; - }; - - relativeStateHome = mkOption { - type = str; - readOnly = true; - default = ".local/state"; - description = "Relative path to directory holding application states."; - }; - - userDirs = { - relativeDesktop = mkOption { - type = str; - readOnly = true; - default = "Desktop"; - description = "Relative path to the Desktop directory."; - }; - - relativeDocuments = mkOption { - type = str; - readOnly = true; - default = "Documents"; - description = "Relative path to the Documents directory."; - }; - - relativeDownload = mkOption { - type = str; - readOnly = true; - default = "Downloads"; - description = "Relative path to the Downloads directory."; - }; - - relativeMusic = mkOption { - type = str; - readOnly = true; - default = "Music"; - description = "Relative path to the Music directory."; - }; - - relativePictures = mkOption { - type = str; - readOnly = true; - default = "Pictures"; - description = "Relative path to the Pictures directory."; - }; - - relativeTemplates = mkOption { - type = str; - readOnly = true; - default = "Templates"; - description = "Relative path to the Templates directory."; - }; - - relativeVideos = mkOption { - type = str; - readOnly = true; - default = "Videos"; - description = "Relative path to the Videos directory."; - }; - }; - }; - - config.xdg = - with lib; - with cfg; - { - cacheHome = mkDefault "${home}/${relativeCacheHome}"; - configHome = mkDefault "${home}/${relativeConfigHome}"; - dataHome = mkDefault "${home}/${relativeDataHome}"; - stateHome = mkDefault "${home}/${relativeStateHome}"; - - userDirs = with userDirs; { - desktop = mkDefault "${home}/${relativeDesktop}"; - documents = mkDefault "${home}/${relativeDocuments}"; - download = mkDefault "${home}/${relativeDownload}"; - music = mkDefault "${home}/${relativeMusic}"; - pictures = mkDefault "${home}/${relativePictures}"; - templates = mkDefault "${home}/${relativeTemplates}"; - videos = mkDefault "${home}/${relativeVideos}"; - }; - }; -} diff --git a/hosts/common/configs/user/console/yazi/theme.toml b/hosts/common/configs/user/console/yazi/theme.toml index 9b30c5e..143b35d 100644 --- a/hosts/common/configs/user/console/yazi/theme.toml +++ b/hosts/common/configs/user/console/yazi/theme.toml @@ -94,7 +94,7 @@ footer = { fg = "{{colors.surface.default.hex}}", bg = "{{colors.on_surface.def prepend_dirs = [ { name = ".cache", text = "" }, { name = ".local", text = "󱋣" }, - { name = "Games", text = "" }, + { name = "Games", text = "󰊖" }, { name = "git", text = "" }, { name = "Templates", text = "" }, { name = "VMs", text = "" }, diff --git a/hosts/common/configs/user/console/zsh/default.nix b/hosts/common/configs/user/console/zsh/default.nix index 2cb004e..5109c83 100644 --- a/hosts/common/configs/user/console/zsh/default.nix +++ b/hosts/common/configs/user/console/zsh/default.nix @@ -12,8 +12,6 @@ }; home-manager.users.${user} = { - imports = [ ./options.nix ]; - programs.zsh = { enable = true; dotDir = ".config/zsh"; diff --git a/hosts/common/configs/user/default.nix b/hosts/common/configs/user/default.nix new file mode 100644 index 0000000..1216b65 --- /dev/null +++ b/hosts/common/configs/user/default.nix @@ -0,0 +1,18 @@ +{ + user ? throw "user argument is required", + home ? throw "home argument is required", +}: +{ ... }: +{ + imports = [ + ./options.nix + ]; + + home-manager.users.${user}.imports = [ + ./console/zsh/options.nix + ./gui/clipbook/options.nix + ./gui/hyprland/options.nix + (import ./gui/theme/options.nix { inherit user home; }) + ./gui/vscode/options.nix + ]; +} diff --git a/hosts/common/configs/user/gui/clipbook/default.nix b/hosts/common/configs/user/gui/clipbook/default.nix index 9019a37..3949265 100644 --- a/hosts/common/configs/user/gui/clipbook/default.nix +++ b/hosts/common/configs/user/gui/clipbook/default.nix @@ -13,8 +13,6 @@ let in { home-manager.users.${user} = { - imports = [ ./options.nix ]; - programs.clipbook.enable = true; wayland.windowManager.hyprland.settings.bind = diff --git a/hosts/common/configs/user/gui/hyprland/default.nix b/hosts/common/configs/user/gui/hyprland/default.nix index 97b12d6..74991d9 100644 --- a/hosts/common/configs/user/gui/hyprland/default.nix +++ b/hosts/common/configs/user/gui/hyprland/default.nix @@ -26,8 +26,6 @@ }; home-manager.users.${user} = { - imports = [ ./options.nix ]; - wayland.windowManager.hyprland = { enable = true; systemd.enable = false; diff --git a/hosts/common/configs/user/gui/theme/default.nix b/hosts/common/configs/user/gui/theme/default.nix index e84e9c2..058d7b9 100644 --- a/hosts/common/configs/user/gui/theme/default.nix +++ b/hosts/common/configs/user/gui/theme/default.nix @@ -17,8 +17,6 @@ in environment.persistence."/persist/state"."${home}/.config/theme" = { }; home-manager.users.${user} = { - imports = [ (import ./options.nix { inherit user home; }) ]; - theme.enable = true; wayland.windowManager.hyprland.settings.bind = [ diff --git a/hosts/common/configs/user/gui/theme/options.nix b/hosts/common/configs/user/gui/theme/options.nix index 74a4809..cd0b830 100644 --- a/hosts/common/configs/user/gui/theme/options.nix +++ b/hosts/common/configs/user/gui/theme/options.nix @@ -68,7 +68,7 @@ in configDir = mkOption { type = str; - default = "${config.xdg.configHome}/theme"; + default = "${home}/.config/theme"; description = "The path to the theme config directory."; }; diff --git a/hosts/common/configs/user/gui/vscode/default.nix b/hosts/common/configs/user/gui/vscode/default.nix index 47021ed..00ef20c 100644 --- a/hosts/common/configs/user/gui/vscode/default.nix +++ b/hosts/common/configs/user/gui/vscode/default.nix @@ -17,8 +17,6 @@ in environment.persistence."/persist/state"."${home}/.config/Code" = { }; home-manager.users.${user} = { - imports = [ ./options.nix ]; - programs.vscode = { enable = true; mutableExtensionsDir = false; diff --git a/hosts/elara/default.nix b/hosts/elara/default.nix index a96eed5..3d6d355 100644 --- a/hosts/elara/default.nix +++ b/hosts/elara/default.nix @@ -5,16 +5,16 @@ inputs.disko.nixosModules.disko ./format.nix - ./hardware + ../common/configs/system + ../common/configs/system/bluetooth ../common/configs/system/boot ../common/configs/system/brightnessctl ../common/configs/system/btrbk ../common/configs/system/btrfs ../common/configs/system/cloudflared - ../common/configs/system/cpu ../common/configs/system/dnsmasq ../common/configs/system/documentation ../common/configs/system/getty diff --git a/hosts/elara/users/nikara/default.nix b/hosts/elara/users/nikara/default.nix index 96de46d..5fc62bd 100644 --- a/hosts/elara/users/nikara/default.nix +++ b/hosts/elara/users/nikara/default.nix @@ -7,7 +7,7 @@ let in { imports = [ - ../../../common/configs/user/options.nix + (import ../../../common/configs/user { inherit user home; }) (import ../../../common/configs/user/console/android { inherit user home; }) (import ../../../common/configs/user/console/brightnessctl { inherit user home; }) diff --git a/hosts/himalia/default.nix b/hosts/himalia/default.nix index 43f23f2..5b98906 100644 --- a/hosts/himalia/default.nix +++ b/hosts/himalia/default.nix @@ -3,15 +3,15 @@ imports = [ inputs.disko.nixosModules.disko ./format.nix - ./hardware + ../common/configs/system + ../common/configs/system/bluetooth ../common/configs/system/boot ../common/configs/system/brightnessctl ../common/configs/system/btrbk ../common/configs/system/btrfs - ../common/configs/system/cpu ../common/configs/system/documentation ../common/configs/system/getty ../common/configs/system/git diff --git a/hosts/himalia/users/nick/default.nix b/hosts/himalia/users/nick/default.nix index 3af8f86..f29493d 100644 --- a/hosts/himalia/users/nick/default.nix +++ b/hosts/himalia/users/nick/default.nix @@ -7,7 +7,7 @@ let in { imports = [ - ../../../common/configs/user/options.nix + (import ../../../common/configs/user { inherit user home; }) (import ../../../common/configs/user/console/android { inherit user home; }) (import ../../../common/configs/user/console/brightnessctl { inherit user home; }) diff --git a/hosts/installer/default.nix b/hosts/installer/default.nix index 78ec488..90616af 100644 --- a/hosts/installer/default.nix +++ b/hosts/installer/default.nix @@ -3,9 +3,10 @@ imports = [ inputs.disko.nixosModules.disko ./format.nix - ./hardware + ../common/configs/system + ../common/configs/system/boot ../common/configs/system/brightnessctl ../common/configs/system/btrfs diff --git a/hosts/installer/users/nick/default.nix b/hosts/installer/users/nick/default.nix index 98f4bd5..7d4e370 100644 --- a/hosts/installer/users/nick/default.nix +++ b/hosts/installer/users/nick/default.nix @@ -7,7 +7,7 @@ let in { imports = [ - ../../../common/configs/user/options.nix + (import ../../../common/configs/user { inherit user home; }) (import ../../../common/configs/user/console/btop { inherit user home; }) (import ../../../common/configs/user/console/fastfetch { inherit user home; }) diff --git a/hosts/jupiter-vps/default.nix b/hosts/jupiter-vps/default.nix index 9bc19c4..4195cf2 100644 --- a/hosts/jupiter-vps/default.nix +++ b/hosts/jupiter-vps/default.nix @@ -3,9 +3,10 @@ imports = [ inputs.disko.nixosModules.disko ./format.nix - ./hardware + ../common/configs/system + ../common/configs/system/btrfs ../common/configs/system/impermanence ../common/configs/system/neovim diff --git a/hosts/jupiter/default.nix b/hosts/jupiter/default.nix index 963f903..be9d89e 100644 --- a/hosts/jupiter/default.nix +++ b/hosts/jupiter/default.nix @@ -3,14 +3,14 @@ imports = [ inputs.disko.nixosModules.disko ./format.nix - ./hardware + ../common/configs/system + ../common/configs/system/boot ../common/configs/system/brightnessctl ../common/configs/system/btrbk ../common/configs/system/btrfs - ../common/configs/system/cpu ../common/configs/system/documentation ../common/configs/system/git ../common/configs/system/impermanence diff --git a/hosts/jupiter/users/nick/default.nix b/hosts/jupiter/users/nick/default.nix index 983f7f6..efcae25 100644 --- a/hosts/jupiter/users/nick/default.nix +++ b/hosts/jupiter/users/nick/default.nix @@ -7,7 +7,7 @@ let in { imports = [ - ../../../common/configs/user/options.nix + (import ../../../common/configs/user { inherit user home; }) (import ../../../common/configs/user/console/btop { inherit user home; }) (import ../../../common/configs/user/console/dive { inherit user home; }) diff --git a/hosts/jupiter/users/storm/default.nix b/hosts/jupiter/users/storm/default.nix index 75a23a5..a264329 100644 --- a/hosts/jupiter/users/storm/default.nix +++ b/hosts/jupiter/users/storm/default.nix @@ -7,7 +7,7 @@ let in { imports = [ - ../../../common/configs/user/options.nix + (import ../../../common/configs/user { inherit user home; }) (import ../../../common/configs/user/console/home-manager { inherit user home; }) (import ../../../common/configs/user/console/neovim { inherit user home; }) diff --git a/lib/scripts/add-host.sh b/lib/scripts/add-host.sh index 38ae5a8..6ece7ab 100755 --- a/lib/scripts/add-host.sh +++ b/lib/scripts/add-host.sh @@ -165,9 +165,10 @@ cat < "./hosts/$host/default.nix" imports = [ inputs.disko.nixosModules.disko ./format.nix - ./hardware + ../common/configs/system + ../common/configs/system/boot ../common/configs/system/btrfs ../common/configs/system/documentation diff --git a/packages/default.nix b/packages/default.nix index f0af9b0..bf70533 100644 --- a/packages/default.nix +++ b/packages/default.nix @@ -34,8 +34,6 @@ docker-whoami = import ./docker/whoami { inherit pkgs; }; docker-yq = import ./docker/yq { inherit pkgs; }; - go-mmproxy = import ./go-mmproxy { inherit pkgs; }; - obsidian-plugin-better-word-count = import ./obsidian/plugins/better-word-count { inherit pkgs; }; obsidian-plugin-dataview = import ./obsidian/plugins/dataview { inherit pkgs; }; obsidian-plugin-excalidraw = import ./obsidian/plugins/excalidraw { inherit pkgs; }; diff --git a/packages/docker/base/default.nix b/packages/docker/base/default.nix index b181945..d54e522 100644 --- a/packages/docker/base/default.nix +++ b/packages/docker/base/default.nix @@ -9,11 +9,12 @@ pkgs.dockerTools.buildImage { dockerTools.binSh dockerTools.caCertificates bashInteractive + ncurses coreutils gnugrep findutils + iputils curl - ncurses ]; pathsToLink = [ "/bin" diff --git a/packages/go-mmproxy/default.nix b/packages/go-mmproxy/default.nix deleted file mode 100644 index 9c21193..0000000 --- a/packages/go-mmproxy/default.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ pkgs, ... }: -# AUTO-UPDATE: nix-update --flake --version=branch=master go-mmproxy -pkgs.buildGoModule rec { - pname = "go-mmproxy"; - version = "2.1-unstable-2023-11-20"; - - src = pkgs.fetchFromGitHub { - owner = "path-network"; - repo = "go-mmproxy"; - rev = "006247ca7ec618d2aff02052bac839ca769991a1"; - hash = "sha256-sU0OYpJ0b/Fq5CzCA0TtC368LOyYCUkXt0pS4IEv8Ak="; - }; - - vendorHash = null; -}