diff --git a/flake.nix b/flake.nix index 16efee7..88b13a9 100644 --- a/flake.nix +++ b/flake.nix @@ -114,7 +114,15 @@ # see: https://github.com/nix-community/home-manager/pull/3454 lib = nixpkgs.lib.extend (self: super: { custom = import ./lib { inherit (nixpkgs) lib; }; }); }; - modules = [ ./hosts/nixos/${host} ]; + modules = [ + # Apply the overlays to make custom packages available + { + nixpkgs.overlays = [ + self.overlays.default + ]; + } + ./hosts/nixos/${host} + ]; }; }; # Invoke mkHost for each host config that is declared for either X86 or ARM @@ -136,7 +144,6 @@ # Building configurations is available through `just rebuild` or `nixos-rebuild --flake .#hostname` nixosConfigurations = mkHostConfigs (readHosts "nixos") false; - # # ========= Packages ========= # # Add custom packages to be shared or upstreamed. @@ -147,11 +154,22 @@ inherit system; overlays = [ self.overlays.default ]; }; + + # Get all package directories from pkgs/ + packageDirs = builtins.attrNames (builtins.readDir ./pkgs); + + # Filter to only include names that resulted in valid packages + validPackages = builtins.filter (name: builtins.hasAttr name pkgs) packageDirs; + + # Create a set with all the packages + customPackages = builtins.listToAttrs ( + builtins.map (name: { + inherit name; + value = pkgs.${name}; + }) validPackages + ); in - lib.packagesFromDirectoryRecursive { - callPackage = lib.callPackageWith pkgs; - directory = pkgs/common; - } + customPackages ); }; } diff --git a/overlays/default.nix b/overlays/default.nix index 3f1bb3a..5de0728 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -6,13 +6,15 @@ let # Adds my custom packages - # FIXME: Add per-system packages additions = final: prev: - (prev.lib.packagesFromDirectoryRecursive { - callPackage = prev.lib.callPackageWith final; - directory = ../pkgs/common; - }); + let + packages = prev.lib.packagesFromDirectoryRecursive { + callPackage = prev.lib.callPackageWith final; + directory = ../pkgs; # Changed from ../pkgs/common to ../pkgs + }; + in + packages; linuxModifications = final: prev: prev.lib.mkIf final.stdenv.isLinux { }; @@ -20,20 +22,12 @@ let # example = prev.example.overrideAttrs (oldAttrs: let ... in { # ... # }); - # flameshot = prev.flameshot.overrideAttrs { - # cmakeFlags = [ - # (prev.lib.cmakeBool "USE_WAYLAND_GRIM" true) - # (prev.lib.cmakeBool "USE_WAYLAND_CLIPBOARD" true) - # ]; - # }; }; stable-packages = final: _prev: { stable = import inputs.nixpkgs-stable { inherit (final) system; config.allowUnfree = true; - # overlays = [ - # ]; }; }; @@ -41,8 +35,6 @@ let unstable = import inputs.nixpkgs-unstable { inherit (final) system; config.allowUnfree = true; - # overlays = [ - # ]; }; }; diff --git a/pkgs/common/borgtui/package.nix b/pkgs/borgtui/package.nix similarity index 100% rename from pkgs/common/borgtui/package.nix rename to pkgs/borgtui/package.nix diff --git a/pkgs/common/borgtui/tui.sh b/pkgs/borgtui/tui.sh similarity index 100% rename from pkgs/common/borgtui/tui.sh rename to pkgs/borgtui/tui.sh diff --git a/pkgs/common/citron-emu/package.nix b/pkgs/citron-emu/package.nix similarity index 100% rename from pkgs/common/citron-emu/package.nix rename to pkgs/citron-emu/package.nix diff --git a/pkgs/common/fleet/package.nix b/pkgs/fleet/package.nix similarity index 100% rename from pkgs/common/fleet/package.nix rename to pkgs/fleet/package.nix diff --git a/pkgs/common/monocraft-nerd-fonts/package.nix b/pkgs/monocraft-nerd-fonts/package.nix similarity index 100% rename from pkgs/common/monocraft-nerd-fonts/package.nix rename to pkgs/monocraft-nerd-fonts/package.nix diff --git a/pkgs/common/snapraid-runner/package.nix b/pkgs/snapraid-runner/package.nix similarity index 100% rename from pkgs/common/snapraid-runner/package.nix rename to pkgs/snapraid-runner/package.nix diff --git a/pkgs/common/snapraid-runner/snapraid-runner.conf b/pkgs/snapraid-runner/snapraid-runner.conf similarity index 93% rename from pkgs/common/snapraid-runner/snapraid-runner.conf rename to pkgs/snapraid-runner/snapraid-runner.conf index 9b74379..ad0e2e8 100644 --- a/pkgs/common/snapraid-runner/snapraid-runner.conf +++ b/pkgs/snapraid-runner/snapraid-runner.conf @@ -20,19 +20,19 @@ sendon = success,error ; set to false to get full programm output via email short = true subject = [SnapRAID] Status Report: -from = cloud@ryot.foo +from = [REDACTED] to = [REDACTED] ; maximum email size in KiB maxsize = 500 [smtp] -host = ryot.foo +host = smtp.protonmail.ch ; leave empty for default port -port = +port = 587 ; set to "true" to activate ssl = true tls = true -user = admin +user = [REDACTED] password = [REDACTED] [scrub] diff --git a/pkgs/common/snapraid-runner/snapraid-runner.py b/pkgs/snapraid-runner/snapraid-runner.py similarity index 100% rename from pkgs/common/snapraid-runner/snapraid-runner.py rename to pkgs/snapraid-runner/snapraid-runner.py