Files
nix-config/overlays/default.nix
2025-09-22 09:07:03 -03:00

73 lines
1.7 KiB
Nix

#
# This file defines overlays/custom modifications to upstream packages
#
{
inputs,
lib,
...
}: let
# Adds my custom packages
additions = final: prev:
(prev.lib.packagesFromDirectoryRecursive {
callPackage = prev.lib.callPackageWith final;
directory = ../pkgs/common;
})
// {
# Custom GNOME extensions
gnomeExtensions =
prev.gnomeExtensions
// {
monitor-workspace-manager = final.monitor-workspace-manager;
};
};
linuxModifications = final: prev: prev.lib.mkIf final.stdenv.isLinux {};
modifications = final: prev: {
overlays = [
inputs.nix4vscode.overlays.default
(self: super: {
vscode = final.unstable.vscode;
vscodium = final.unstable.vscodium;
})
(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);
}