2025-05-07 Nix team meeting minutes #224

Wednesday triage meeting

Attendees: @edolstra @Ericson2314 @tomberek @Mic92 @roberth @fzakaria

Triage

`nix flake prefetch --json` reports inconsistent information after Nix 2.27 · Issue #13049 · NixOS/nix · GitHub

Should we even expose the narHash by default? We can only return a narHash if the whole input is fetched, potentially including submodules and Git LFS files, which is not desirable. (It may be in the lock, but doing this during locking is still undesirable for large repos, so that would only shift the problem)

Opened `nix flake prefetch` reports `__final` · Issue #13150 · NixOS/nix · GitHub

Did we change the output by accident? narHashhash
No, we’re getting rid of the narHash at the fetchTree input attributes level, because the input is already locked by the commit hash rev.

{
  // prefetch output
  "hash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=",
  "locked": {
    // fetchTree input attributes
    "__final": true,
    "lastModified": 1744463964,
    "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=",
    "path": "/nix/store/5ds20jm3x2s4z7wn3581r6lc9ybmh45b-source",
    "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650",
    "type": "path"
  },
  "original": {
    // fetchTree input attributes before locking
    "lastModified": 1744463964,
    "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=",
    "path": "/nix/store/5ds20jm3x2s4z7wn3581r6lc9ybmh45b-source",
    "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650",
    "type": "path"
  },
  "storePath": "/nix/store/5ds20jm3x2s4z7wn3581r6lc9ybmh45b-source"
}

Tar download very slow · Issue #10683 · NixOS/nix · GitHub

@Mic92: git is much faster than github: tarball download strategy.

Shallow clones shouldn’t be as expensive as they used to be for GitHub and Actions also uses shallow clones now.

@roberth: Would be great to ditch tarballs for other reasons like not exactly matching git which is used for local development.

Opened Migration strategy for changing `github:` inputs to `git:`-backed implementation · Issue #13151 · NixOS/nix · GitHub

cgroups: reapp child processes before destroying cgroup by Mic92 · Pull Request #13135 · NixOS/nix · GitHub

Currently blocked on an ordering issue with waitpid calls.
@edolstra: PR_SET_CHILD_SUBREAPER(2const) - Linux manual page

@roberth: Store the status in Pid?
@Mic92: We don’t have full Pid objects for those, as they come from the cgroups API.

Release

This week is release week!
@Mic92 volunteers

Opened Push built docs to repo · Issue #13153 · NixOS/nix · GitHub

4 Likes