# # This file defines overlays/custom modifications to upstream packages # {inputs, ...}: let # Adds my custom packages additions = final: prev: (prev.lib.packagesFromDirectoryRecursive { callPackage = prev.lib.callPackageWith final; directory = ../pkgs/common; }); linuxModifications = final: prev: prev.lib.mkIf final.stdenv.isLinux {}; modifications = final: prev: { # 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) # ]; # }; overlays = [ inputs.nix4vscode.overlays.forVscode (self: super: { vscodium = super.vscodium.overrideAttrs (oldAttrs: rec { nativeBuildInputs = oldAttrs.nativeBuildInputs or [] ++ [self.makeWrapper]; postInstall = oldAttrs.postInstall or "" + '' wrapProgram $out/bin/codium --set LD_LIBRARY_PATH "${self.stdenv.cc.cc.lib}/lib/" ''; }); }) ]; }; stable-packages = final: _prev: { stable = import inputs.nixpkgs-stable { inherit (final) system; config.allowUnfree = true; # overlays = [ # ]; }; }; unstable-packages = final: _prev: { unstable = import inputs.nixpkgs-unstable { inherit (final) system; config.allowUnfree = true; # overlays = [ # ]; }; }; in { default = final: prev: (additions final prev) // (modifications final prev) // (linuxModifications final prev) // (stable-packages final prev) // (unstable-packages final prev); }