Low-effort and high-impact tasks

Solving the wrapper problem, for the uninitiated: this means creating shell scripts that setup the environment for running a program (typically, but no exclusively a GUI application).

The infrastructure for doing this in Nixpkgs is a horrible mess: there are many diffent wrapSomething functions for Xorg, GTK, Qt, etc. and they don’t compose at all (yes, there are programs that use both GTK and Qt). Worse, it doesn’t work for libraries that need to propagate the dependency on some environment to the program they’re being linked to. We’re shipping actually broken software because of this situation.

Fixing this is not particularly difficult but it requires some level of coordination which for some reason or another has never been achieved. Just look at the amount of (abandoned) proposals: PR #95569, PR #144722, PR #102949, PR #53816, PR #83321.

If we could focus on one simple, realistic, solution and put an end to this madness it would really be great for both the Nixpkgs maintainers and users.

13 Likes