Create a new repo that depends on nixpkgs as a flake input
I think this is going to be the only way to maintain momentum.
We can do both decentralized and a monorepo. The monorepo is just a collection of pinned versions that work well together.
auxpkgs (curated, not top-level)
packages(flat, all values are derivations)packageManagers(exactly two deep, ex: rustCargo.tokio)- mark each package derivation, in the meta field, as both an aux package and with the status (properly maintained, ported but up to aux-standards, or patched by aux for functionality but not compliant with standards)
- every package is given a directory with default.nix
- and the default.nix is always a function that takes an attrset argument and returns a derivation
- it always imports a flake from another repo
- the repo URL is always imported from a serialized file (like json or toml) so that changes can be automated
top level
- inherit nixpkgs
- override with auxpkgs
Start with just using nixpkgs, and experiment with overriding packages as aux maintainers maintain them.
Breaking things into core can be a separate project.