Expose all our custom packages to NixOS modules in a consistent way.
From https://whetstone.privatestorage.io/privatestorage/PrivateStorageio/-/merge_requests/158#note_15180:
I also think we'll eventually want a
default.nix
that exposes these as attributes, but that can be a followup. We could then expose that as another automatic[1] module argument (e.g.pspkg
), or aspkgs.privatestorage
.[1]: That is, like the existing
lib
/pkgs
/config
arguments that are passed in.
We have a number of packages that we don't get from the default nixpkgs used for nodes. Currently, we get them in various ad-hoc ways:
- We have a fork of nixpkgs-19.09-small that we have several packages in. We directly import
nixpkgs-ps.nix
and access the attributes for our custom packages where we need them. - We have
nixos/pkgs
that has directories that imports other repository[1]. We directly import those directories where we need them.
It would be useful to abstract this away so that the code that consumes packages does not need to be aware of the specific way we are importing the source.