rfcs
rfcs copied to clipboard
[RFC 0146] Meta.Categories, not Filesystem Directory Trees
This RFC proposes a new meta.categories attribute in order to categorize Nix packages, instead of using the filesystem dirtree.
The idea of this RFC was triggered by the RFC #140, by the way.
Ref.: https://github.com/NixOS/rfcs/pull/140#discussion_r1096549803
One of the advantages of meta.categories, not directly mentioned in the RFC (though could be thought of as a consequence of solving drawback 7) is that users will be able to browse for packages in search.nixos.org (and similar tools based meta) much more easily. Currently the file system hierarchy is only visible for people browsing the nixpkgs repo, while being a hidden implementation detail for all other users.
The idea of this RFC was triggered by the RFC https://github.com/NixOS/rfcs/pull/140, by the way.
I'd like to have a section in this RFC discussing its relationship and synergies with RFC 140. Does one of them depend on the other? Or are they completely orthogonal to each other?
Completely orthogonal.
Certainly if this RFC solves a corner problem of that other #140 (losing the classification), but they have no dependencies. This RFC merely decouples the classification from the filesystem.
For initial categorization one could extract categories from current package paths. So for example applications/editors/emacs get meta.categories = [application editor];
For initial categorization one could extract categories from current package paths.
For now I have made a preliminary code‚ copying the Freedesktop.org menu entries. It is already in the PR queue for Nixpkgs acceptance.
This RFC is now open for shepherd nominations!
Mental note: an extra chapter for the ~~boring~~ why we need classification in the first place?
Another point of "why this might be interesting" : as release managers, we want to know which mainstream software or high profile software are still working before a branch-off, e.g. gitlab, etc. Having a categorization for those would make this work extremely easier. :)
mainstream software or high profile software
That sounds in favour of pretty open (or quite multifaceted) category system.
This RFC has not acquired enough shepherds. This typically shows lack of interest from the community. In order to progress a full shepherd team is required. Consider trying to raise interest by posting in Discourse, talking in Matrix or reaching out to people that you know.
If not enough shepherds can be found in the next month we will close this RFC until we can find enough interested participants. The PR can be reopened at any time if more shepherd nominations are made.
I felt this was too fast!
OK, let's try to do something about it… @amjoseph-nixpkgs would you accept nomination?
@AndersonTorres BTW, will you be interested in keeping the draft always up-to-discussed-changes (i.e. whenever a remark is discussed and accepted, the decision gets into the draft of the RFC text within a few days save for specific «unavailable» weeks)?
Yes, it's OK to me.
Hmm. I self-nominate as a shepherd.
My current stance: generally in favour, open-ish multi-faceted categorisation, slow-ish take-off in terms of actually marking packages with categories.
Procedural stance: skewed towards semi-synchronous text discussions with a log (and I hope there is no need for too much synchronous discussions here).
Also @davidak would you be willing to be a shepherd here?
@7c6f434c i don't have the time and energy right now, sorry. Thanks for asking!
I love this RFC! I noticed before that we don't provide a category to Repology and i don't like the chaotic nixpkgs folder structure.
Next try… @j-k would you agree to be a shepherd?
This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/rfc-146-meta-categories-is-open-to-shepherd-nominations/30053/1
The idea of this RFC was triggered by the RFC #140, by the way.
Ref.: #140 (comment)
Given this, @infinisil might be interested if not too busy. I would also like to nominate @figsoda.
Currently busy implementing #140, but I'll definitely stay subscribed here and review this at some point :)
I would also like to nominate @figsoda.
I'm a bit busy at the moment, so I would have to reject the nomination for now
Hmm. @KFearsoff are you not self-nominating because you want to see how #109 goes? (I promise this one should be easier).
Actually… @natsukium you seem to have quite a bit of experience with a part of Nixpkgs you care about, and also to show some interest for Repology in your PRs — are you interested to be a shepherd? By procedure, shepherds check all the points raised in the discussion, discuss the proposal further as need and come to conclusion «good enough to accept»/«better to reject for now» or ask for improvements before the final decision.
It's interesting. Actually, I've been looking at this RFC for a while but have never thought I would be nominated.
I have a little experience with nixpkgs and a little understanding of the RFC process, but I will do my best to lead a worthwhile discussion.
You can always self-nominate when interested! And the process works better with shepherds paying attention to different things and understanding different perspectives.
True that the path of least resistance in others-nomination starts with the commenters in the RFC discussion in question. But this is first of all about nomination acceptance chances (and sometimes about viewpoint representation because for commenters it is the least work to see who represents which viewpoint).
OK, let's try to do something about it… @amjoseph-nixpkgs would you accept nomination?
Sorry, I thought I had replied. I am a huge fan of this RFC, but at the moment I'm struggling to keep my head above water workload-wise, and I'm worried that I wouldn't be a very diligent shepherd right now.
If this RFC is at risk of dying for lack of a shepherd (which I really doubt) ping me again and I will move some mountains. But let's at least take a few more weeks to try to find somebody who can do a better job than I can at this particular moment.
Hmmm. @marsam @minijackson maybe one or both of you will accept nomination?
@suhr here is the current listing of files inside pkgs directory. It can be useful for filling the categories set, as you suggested.
Trying again to nominate @KFearsoff @marsam @minijackson …