Skip to content

additionalNetrcSources silently ignored without FlakeHub auth #173

@schickling-assistant

Description

@schickling-assistant

Problem

On self-hosted CI runners using determinate-nix-action, custom additionalNetrcSources entries in /etc/determinate/config.json are silently dropped when the host is not authenticated to FlakeHub.

The binary contains the string auth: no flakehub token to augment user provided netrc sources, suggesting the code path that merges additional netrc sources is gated behind FlakeHub authentication. This means additionalNetrcSources — the official mechanism for adding private cache credentials — only works if the host happens to also be logged into FlakeHub.

Reproduction

  1. Install Determinate Nix 3.17.0 on a NixOS host (no FlakeHub login)
  2. Create /etc/determinate/config.json:
    {"additionalNetrcSources": ["/etc/nix/cachix-netrc"]}
  3. Restart nix-daemon / determinate-nixd
  4. Observe that /nix/var/determinate/netrc does NOT include entries from /etc/nix/cachix-netrc
  5. The log shows config_file: None at startup

Expected behavior

additionalNetrcSources should work independently of FlakeHub authentication status. Users should be able to add private Cachix (or other) cache credentials without requiring a FlakeHub login.

Workaround

We currently use a systemd PathModified unit that watches /nix/var/determinate/netrc and re-appends cached entries from a durable source whenever determinate-nix-action (or the daemon) resets the file.

Related


🤖 Filed with Claude Code on behalf of @schickling

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions