2023-12-23 21:20:40 +01:00
|
|
|
# This file defines overlays
|
|
|
|
{inputs, ...}: {
|
|
|
|
# This one brings our custom packages from the 'pkgs' directory
|
|
|
|
additions = final: _prev: import ../pkgs {pkgs = final;};
|
|
|
|
|
2023-12-26 13:59:30 +01:00
|
|
|
# Third party overlays
|
2024-08-21 11:10:25 +02:00
|
|
|
# nh = inputs.nh.overlays.default; //not needed anymore but example how to use it
|
2023-12-26 13:59:30 +01:00
|
|
|
|
|
|
|
# For every flake input, aliases 'pkgs.inputs.${flake}' to
|
|
|
|
# 'inputs.${flake}.packages.${pkgs.system}' or
|
|
|
|
# 'inputs.${flake}.legacyPackages.${pkgs.system}'
|
|
|
|
flake-inputs = final: _: {
|
|
|
|
inputs =
|
|
|
|
builtins.mapAttrs
|
|
|
|
(
|
|
|
|
_: flake: let
|
|
|
|
legacyPackages = (flake.legacyPackages or {}).${final.system} or {};
|
|
|
|
packages = (flake.packages or {}).${final.system} or {};
|
|
|
|
in
|
|
|
|
if legacyPackages != {}
|
|
|
|
then legacyPackages
|
|
|
|
else packages
|
|
|
|
)
|
|
|
|
inputs;
|
|
|
|
};
|
|
|
|
|
2023-12-23 21:20:40 +01:00
|
|
|
# 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: {
|
|
|
|
# example = prev.example.overrideAttrs (oldAttrs: rec {
|
|
|
|
# ...
|
|
|
|
# });
|
|
|
|
};
|
|
|
|
|
|
|
|
# When applied, the unstable nixpkgs set (declared in the flake inputs) will
|
|
|
|
# be accessible through 'pkgs.unstable'
|
|
|
|
unstable-packages = final: _prev: {
|
|
|
|
unstable = import inputs.nixpkgs-unstable {
|
|
|
|
system = final.system;
|
|
|
|
config.allowUnfree = true;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|