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

Close abandoned PRs

Not so high impact on a small scale but if even a few people unite to decide if an old, maybe abandoned PR should be closed this could reduce some of the maintenance backlogs of the repo.

2 Likes

Another thing is something like NUR but with hydra support.

It’s not so convenient to build everything from scratch and a source of truth of the core would be hella useful for cache hits.

IPFS spreading and derivation result consensus would be cool but this is very high-effort work.

1 Like

I think an autocomplete script generator for this guy would be sick

But I don’t have that much time to grok on this rn

Ability to fake uname -m output integrated directly into nixpkgs’s kernels would be really helpful for native compiling armv6l/armv7l binaries on aarch64 hardware:
https://github.com/nix-community/aarch64-build-box/pull/133

Support running nixos-rebuild as regular user:
https://github.com/NixOS/nixpkgs/pull/170501

Improve installation experience for creating users in NixOS:
https://github.com/NixOS/nixpkgs/pull/124602

Looking for duplicates PR is also useful. A case that often happen is someone opens a PR for an update but it doesn’t get merge, and later someone else open a PR for a newer update of the same package.

5 Likes

Enable easy sharing of nix store among local machines.

1 Like

Cleaning up inputs of derivations, like I had started here for a subtree.

Another one, but probably not so low-effort: allow machines in NixOS tests to specify a different type of virtualisation (with a full VM being the default).
Many tests should also work inside e.g. a Firecracker-VM, which can save a lot of runtime as often the time required for booting the VM is substantial part of the whole test runtime.

2 Likes