SIG Repos: How should they work?

Let me try to summarize the current discussion and extract the main points still in discussion:

  • Goals (from user perspective):
    • SIG repos can be used individually, reducing size and eval time
    • top-level still provides what previously ‘Nixpkgs’ was - a one-stop location for all packages
  • Goals (from SIG/maintainer perspective):
    • reduce maintainer burden
      • smaller scoped repos, with less noise
      • less moving parts in each SIG repo
  • technical problems:
    • circular dependencies between SIG repos
      • proposal: (multi-tiered) top-level repos
        • removes circular dependencies, by moving them one level up
        • possibly increases top-level maintenance burden
        • this might feel like going back to a (quasi) mono-repo though - but one could argue this is inherently the case anyway
      • proposal: using follows specifications to lock all other Auxolot dependencies
        • this looses the independence property of the SIG repos

(Did I miss something? Certainly not intentionally - I’ll be happy to make amendments here)

As far as I can tell, at no part of the discussion so far these goals were up to debate, so I’ll focus on the technical problem(s).

I come to the same conclusion as @srxl: A top-level approach without cyclical dependencies keeps things simpler without compromising on our goals (re: independence of SIG repos).

(And I also agree: let’s put our current possibility to experiment with stuff to good use, when we need it.)

4 Likes