We’ve been trying a new workflow where we don’t go through our meeting notes, but comment on issues and PRs directly.
For that reason we don’t have consistent notes from our meetings.
Would you still be interested in at least receiving a list of issues/PRs in this topic?
Anyway, here’s the last notes, which we hadn’t posted yet.
Wednesday triaging session
Attendees: @edolstra @Ericson2314 @tomberek @Mic92 @roberth
Triage
Git fetcher: Improve error message for untracked files by edolstra · Pull Request #12870 · NixOS/nix · GitHub
Added backports
Man pages are not installed with Nix 2.26.1 · Issue #12382 · NixOS/nix · GitHub
…
Nix unable to create development environment inside of tmux · Issue #12489 · NixOS/nix · GitHub
Might be related to the nesting of nix shells, not tmux.
@Mic92: may be fixed by direnv: use_nix: unset TMPDIR variables
nix-store --verify --check-contents fails on paths with i/o errors · Issue #2735 · NixOS/nix · GitHub
If the file system has I/O errors that might be insurmountable from Nix’ perspective.
If it’s possible to move the store path contents, it may be recoverable by substitution or, later, a build.
Parts of approved issue Check asynchronously that build dependencies aren't corrupted · Issue #8656 · NixOS/nix · GitHub would help with rebuilding such bad paths.
Deadlock when using user namespace (probably musl) · Issue #12514 · NixOS/nix · GitHub
Nix is multi-threaded, so this is kind of a big problem.
We might be able to use spawn
more, to avoid this situation.
We’ll need to do more nix __something
self-calls, which is not great, especially when Nix is used as a library, in which case it’s not obvious how to do acquire that nix
(or programatically configure an equivalent).
Componentized build?
Some Nixpkgs prefer monolithic for now.
Benefits:
- Naturally replaces the
nixForLinking
- RFC 132/134/136 benefits (not so concrete at this time)
- Interface-compatible with the flake package
- Adds a new meson infrastructure that would be good to reuse for systemd
Decision: take it easy and make the monolithic package the default for 25.05.
Poly-package can stick around for opt-in and nixVersions.git
.