TLDR: Let’s create a NixOS Package Information Platform. A web site where you can check the status of packages and get package specific informations such as a list of commits, stable/unstable repo status, open issues, PRs, links to latest hydra builds and diffs of commits, etc.
Something I often miss with NixOS is some kind of detailed package information platform. Of course I can always go to the Github repo and search for issues, commits, etc. but this is quite ineffecient and intransparent, since Github itself isn’t designed to be a package repo
There is also the NixOS package search, but at moment it contains no detailed informations at all.
I am more thinking of something similar to sites such as Debian -- Details of package vim in buster, vim - Debian Package Tracker or AUR (en) - vim-git.
There are multiple reason I am sure this would benefit the community:
- It happened twice to me that: A PR has been created but kept back for multiple weeks because of the breakage of another package. Somebody else created a commit with exactly the content of the PR and pushes it straight to the master - obviously breaking the other package. I could blame the commiter for not checking for an existing PR, but honestly it is very easy to miss somthing on Github, especially if no Bug report exists. An information system would show PRs and existing Bug reports. No need to use the github search which can hide important information and cause user errors.
- It would make the whole NixOS system a bit easier for newcomers, as the initial learning curve gets lower (no need to understand githubs issue system, the Nixpkgs structure, etc. Package informations can be obtained similar to any major distro)
- It would create transparency.
This point is in my opinion the most important one, because transparency normally also leads to security. If I am interested in the vim package, right now it is quite tedious for me if I would want to review new commits without being a maintainer. And it is certainly very hard to promote such a reviewing process. On the other hand with an information platform it would make it easy for me to just check that one page of this package every now and then for new commits (or write a very simple cronjob to inform me of new commits). Even more, we could promote such a reviewing process by e.g. letting logged in users add a if they have reviewed a commit themselves and display commits with less than X reviews in bold red. And then if such a review process promotion would work well, merging an RFC like a Merge bot for maintainers may be way less concerning than it is now. Even without such a hypotethical review process, being able to reliably show all commits for one package would already be enough for me to like the idea of the merge bot way more.
What do you guys think about something like that?
And I want to be upfront: I am a sysadmin, I have no real programming experience apart from bash/python scripting and can’t really create such a platform by myself (actually I tried to create something with python/django but I’m already overwhelmed with the github api ). So the second and probably way more important question: Are there people who are as interested in such a package information system as I am and would be able to spend some of their time to help creating such a platform?
Thanks a lot for all your opinions and I really hope we can get something rolling!