Redefine package set on top of overlays I wanted to reduce duplication, but ended up somewhat in the same place (with manifest.nix). Yet I find it much more elegant.
lib: Receive Nixpkgs lib directly to avoid recursing into pkgs
lib: Fully separate from Nixpkgs' lib This is sort of a revert and different take on 2703028a92be, which I decided to do after reading github:NixOS/nixpkgs#51797. Preventing our functions from being transparently accessed by derivations and modules makes it easier to figure out what else needs to be upstreamed with them. Where that is still wanted, the new `lib/extension.nix` is an overlay done right, balking at conflicts between Nixpkgs and us.
Make our lib functions available to ourselves It's a weird song and dance I'm not confident in, and the overlaid functions aren't available to modules in the `lib` argument (we have to get them individually from `pkgs.lib` instead to avoid infinite recursion). I should revisit this sometime. Maybe.
Fix python3Packages outside overlay, and other formatting issues
Add non-patched packages to the main attrset We were only including the patched 'haunt'. Oops.
Update callPackage with own packages Turns out pkgs.callPackage is bound to its original scope, and we need a new one with our packages included so they can be patched.
Expose patches packages to NUR The pkgs/patches split only exists for ease of upstreaming; I use the patched versions myself (system-wide via overlays, in projects via default.nix). *If* someone needs an unpatched version, I'm sure we can figure something out then (and only then).
haunt: Add patch to restore raw HTML output Need this for my blog so I can embed SVG directly in the page. This is not a NixOS-specific patch, so I'll keep it (and others like it) in a separate tree.
Split packages and modules off nixos-configurations This will allow me to make them public while keeping the NixOS configuration private. Some reorganization was made to 1) be compatible with NUR, even though I don't currently use it; and 2) mirror the nixpkgs taxonomy, to more easily move packages upstream later on. All package and NixOS module expressions were taken from nixos-configurations@361ad13626117ee715ee1e215458329e8d0bada4.