Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unmaintained Packages #67638

Closed
toonn opened this issue Aug 28, 2019 · 8 comments
Closed

Unmaintained Packages #67638

toonn opened this issue Aug 28, 2019 · 8 comments

Comments

@toonn
Copy link
Contributor

toonn commented Aug 28, 2019

Issue description

Someone asked in #nixos today for a list of packages without maintainers. I don't know of one so I made this : )

Behold, the Approximate List of Unmaintained Packages:

applications/audio/aumix
applications/audio/game-music-emu
applications/audio/gmpc
applications/audio/monkeys-audio
applications/audio/mp3info
applications/audio/mpc123
applications/audio/renoise
applications/editors/ed
applications/editors/emacs-modes/cask
applications/editors/emacs-modes/ecb
applications/editors/emacs-modes/emacs-w3m
applications/editors/emacs-modes/emms
applications/editors/emacs-modes/jdee
applications/editors/emacs-modes/offlineimap
applications/editors/emacs-modes/quack
applications/graphics/djview
applications/graphics/gimp/plugins
applications/misc/girara
applications/misc/gkrellm
applications/misc/gmrun
applications/misc/gv
applications/misc/keepass-plugins/keeagent
applications/misc/rxvt_unicode
applications/misc/sc-im
applications/misc/wordnet
applications/misc/xfe
applications/networking/browsers/mozilla-plugins/flashplayer
applications/networking/browsers/vimb
applications/networking/jmeter
applications/science/chemistry/avogadro
applications/science/logic/prover9
applications/science/math/LiE
applications/science/misc/megam
applications/science/misc/tulip
applications/science/programming/plm
applications/version-management/git-and-tools/git-remote-hg
applications/version-management/nitpick
applications/video/byzanz
applications/video/recordmydesktop
applications/window-managers/cwm
data/fonts/freefont-ttf
data/misc/mobile-broadband-provider-info
development/compilers/mercury
development/compilers/mit-scheme
development/compilers/stalin
development/interpreters/python
development/libraries/aravis
development/libraries/aspell
development/libraries/boehm-gc
development/libraries/cloog-ppl
development/libraries/crypto++
development/libraries/dbus-glib
development/libraries/fox
development/libraries/ftgl
development/libraries/gecode
development/libraries/gtkimageview
development/libraries/herqq
development/libraries/libcanberra
development/libraries/libdmtx
development/libraries/libelf
development/libraries/libelf-freebsd
development/libraries/libextractor
development/libraries/libffi
development/libraries/libgpod
development/libraries/libiconv
development/libraries/libidn
development/libraries/libivykis
development/libraries/libmpc
development/libraries/libofx
development/libraries/libsigsegv
development/libraries/libssh2
development/libraries/libunistring
development/libraries/libusb1
development/libraries/libxmi
development/libraries/libzdb
development/libraries/mpfr
development/libraries/openbabel
development/libraries/physics/geant4/g4py
development/libraries/polkit
development/libraries/ppl
development/libraries/slib
development/libraries/tokyo-cabinet
development/libraries/tokyo-tyrant
development/libraries/unittest-cpp
development/libraries/zziplib
development/pharo/launcher
development/python-modules/GitPython
development/python-modules/automat
development/python-modules/cliapp
development/python-modules/constantly
development/python-modules/gitdb
development/python-modules/gitdb2
development/python-modules/k5test
development/python-modules/koji
development/python-modules/larch
development/python-modules/m2r
development/python-modules/moto
development/python-modules/pykka
development/python-modules/seabreeze
development/python-modules/smmap
development/python-modules/smmap2
development/python-modules/sshpubkeys
development/python-modules/tracing
development/python-modules/ttystatus
development/python-modules/twisted
development/python-modules/txamqp
development/python-modules/ws4py
development/tools/galen
development/tools/java/fastjar
development/tools/misc/autogen
development/tools/misc/complexity
development/tools/misc/cppi
development/tools/misc/gengetopt
development/tools/misc/itstool
development/tools/misc/sloccount
development/tools/misc/tet
development/tools/profiling/oprofile
development/web/remarkjs
games/ball-and-paddle
games/stepmania
misc/seafile-shared
os-specific/linux/acpi
os-specific/linux/tp_smapi
servers/monitoring/riemann
servers/pies
servers/unfs3
tools/X11/xcalib
tools/admin/aws_shell
tools/admin/tightvnc
tools/archivers/gnutar
tools/archivers/zip
tools/backup/wal-e
tools/compression/bzip2
tools/filesystems/gcsfuse
tools/filesystems/httpfs
tools/graphics/argyllcms
tools/graphics/dcraw
tools/misc/convmv
tools/misc/dashing
tools/misc/dbacl
tools/misc/debianutils
tools/misc/dtach
tools/misc/idutils
tools/misc/parallel-rust
tools/misc/recutils
tools/misc/uucp
tools/misc/venus
tools/networking/asynk
tools/networking/ccnet
tools/networking/httping
tools/networking/iftop
tools/networking/lsh
tools/networking/modem-manager
tools/networking/nss-mdns
tools/networking/offlineimap
tools/networking/surfraw
tools/networking/swec
tools/system/lr
tools/system/syslog-ng-incubator
tools/text/ebook-tools
tools/text/enscript
tools/text/gawk
tools/text/gnupatch
tools/text/gnused
tools/text/namazu
tools/text/odt2txt
tools/typesetting/git-latexdiff
tools/typesetting/lout

This is 168 unmaintained packages.
Some that caught my eye, ed, rxvt_unicode, python, gnutar, zip and bzip2.

Steps to reproduce

Command I used to produce this approximate list (there's false positives and probably negatives alike):
nix-shell -p rg busybox --run "rg -l 'maintainers *= *\[ *\]\)?;' ~/src/nixpkgs | sed -e 's:.*nixpkgs/pkgs/::' -e '\:nixos/tests:d' -e 's:/default\.nix::' -e '/\.nix$/d' | sort"

Alternative by Graham (not sure where to get pkgs.json, probably fewer false negatives but more false positives: jq '.packages[] | select(.meta.maintainers == []) | .name' pkgs.json

@vikanezrimaya
Copy link
Member

vikanezrimaya commented Aug 28, 2019

  • Python has some maintainers assigned - looking deeper at Nix expressions, cpython is maintained by @FRidh, PyPy is maintained by @andersk.
  • GNU Tar, zip, rxvt_unicode, bzip2 and ed indeed lack a maintainer.

@worldofpeace
Copy link
Contributor

Note that certain packages have a special deriver that automatically adds a maintainer.

I think a clearer way to check what packages have no maintainers is to use nix eval

nix eval -f . ed.meta.maintainers
[ ]

nix eval -f . gnome-photos.meta.maintainers                                                                                                                               
[ { email = "lucabru@src.gnome.org"; github = "lethalman"; githubId = 480920; name = "Luca Bruno"; } { email = "jtojnar@gmail.com"; github = "jtojnar"; githubId = 705123; name = "Jan Tojnar"; } { email = "torhedinbronner@gmail.com"; github = "hedning"; githubId = 71978; name = "Tor Hedin Brønner"; } { email = "worldofpeace@protonmail.ch"; github = "worldofpeace"; githubId = 28888242; name = "Worldofpeace"; } ]

or perhaps using nix directly would be even better.

vikanezrimaya pushed a commit to vikanezrimaya/nixpkgs that referenced this issue Aug 28, 2019
As an answer to NixOS#67638, I'm adopting this package, adding myself as a
maintainer.
@markuskowa
Copy link
Member

I did try this approach, which yields a longer list (includes some false positives such as automatically generated derviations).

@adisbladis
Copy link
Member

All emacs packages without maintainers were dropped as a part of #66301.

@FRidh
Copy link
Member

FRidh commented Aug 30, 2019

Closing this because there isn't anything actionable and the list is not entirely accurate either. Note that, when talking about maintained or not, there are many core packages maintained by only few. It would be very important if those packages get more maintainers. An example is e2fsprogs.

@FRidh FRidh closed this as completed Aug 30, 2019
@toonn
Copy link
Contributor Author

toonn commented Aug 31, 2019

@FRidh, the actionable part would be setting up a webpage that allows people to easily find packages that aren't maintained or have few maintainers. Using maybe some stats from the binary cache or about version lag to indicate which packages have a greater need of maintainers.

@phanirithvij
Copy link
Member

phanirithvij commented Jul 7, 2024

Now since a few maintainers have left leaving many packages without maintainers, I think this has to be a priority.

@pinpox
Copy link
Member

pinpox commented Jul 24, 2024

Cross-posting for reference since I stumbled across this, there is/was an RFC regarding this topic: NixOS/rfcs#81

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants