Suppose I have some Nixpkgs overlays composed from other overlays:
overlayFoo = self: super: {
# ...
};
overlayBar = pkgs.lib.fixedPoints.composeExtensions overlayFoo (self: super: {
# ...
};
overlayBaz = pkgs.lib.fixedPoints.composeExtensions overlayFoo (self: super: {
# ...
});
And the user of the overlays would like to use them like this:
pkgs = import nixpkgs {
inherit system;
overlays = [overlayBar overlayBaz];
};
Since both overlayBar
and overlayBaz
depend on overlayFoo
, how can I prevent overlayFoo
from being applied more than once?