{inputs, ...}: { # This one brings our custom packages from the 'pkgs' directory additions = final: prev: { zen-browser = inputs.zen-browser.packages.${prev.system}.default; } // ( import ../pkgs { inherit (final) pkgs; inherit inputs; } ); # This one contains whatever you want to overlay # You can change versions, add patches, set compilation flags, anything really. # https://nixos.wiki/wiki/Overlays modifications = final: prev: ( if prev.stdenv.isDarwin then { # address build failure on darwin, remove after 25.05 nodejs_20-slim = prev.nodejs-slim_22; nodejs_20 = prev.nodejs_22; nodejs-slim = prev.nodejs-slim_22; nodejs = prev.nodejs_22; } else {} ) // { # Required for Mealie inherit (final.unstable) nltk-data; }; # External overlays # Included after the above to ensure modifications are applied hyprpanel = inputs.hyprpanel.overlay; rust-overlay = inputs.rust-overlay.overlays.default; vscode-extensions = inputs.nix-vscode-extensions.overlays.default; # When applied, the unstable nixpkgs set (declared in the flake inputs) will # be accessible through 'pkgs.unstable' unstable-packages = final: _prev: { unstable = import inputs.unstable { inherit (final) system; config.allowUnfree = true; }; master = import inputs.master { inherit (final) system; config.allowUnfree = true; }; }; }