extra- elements of extra-conf precede base assignments, causing substitutions to fail #58

Open
opened 2025-09-19 14:18:59 +00:00 by donn · 1 comment

Hi, I usually use a command similar to this (with the DetSys installer) to set up Nix with my organization's cache on a new computer:

curl --proto '=https' --tlsv1.2 -sSf -L https://install.lix.systems/lix | sh -s -- install --no-confirm --extra-conf "
            extra-substituters = https://nix-cache.fossi-foundation.org
            extra-trusted-public-keys = nix-cache.fossi-foundation.org:3+K59iFwXqKsL7BNu6Guy0v+uTlwsxYQxjspXzqLYQs=
            experimental-features = nix-command flakes
          "

But with the lix-installer fork, it instead generates this nix.conf:

extra-substituters = https://nix-cache.fossi-foundation.org
extra-trusted-public-keys = nix-cache.fossi-foundation.org:3+K59iFwXqKsL7BNu6Guy0v+uTlwsxYQxjspXzqLYQs=
experimental-features = nix-command flakes
build-users-group = nixbld
auto-optimise-store = true
bash-prompt-prefix = (nix:$name)\040
max-jobs = auto
substituters = https://cache.nixos.org https://cache.lix.systems
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cache.lix.systems:aBnZUw8zA7H35Cz2RyKFVs3H4PlGTLawyY5KRbvJR8o=
extra-nix-path = nixpkgs=flake:nixpkgs

Unfortunately, this causes substitution to fail because, at least unless I'm misunderstanding something which is v. possible, extra-substituters precedes substituters.


Versions:

nix (Lix, like Nix) 2.93.0
System type: aarch64-linux
Additional system types: 
Features: gc, signed-caches
System configuration file: /etc/nix/nix.conf
User configuration files: /home/donn.linux/.config/nix/nix.conf:/etc/xdg/nix/nix.conf
Store directory: /nix/store
State directory: /nix/var/nix
Data directory: /nix/store/by4gw6w1xrvrzns8xky2hw8s7bvvxsn2-lix-2.93.0/share
lix-installer 0.17.1
Hi, I usually use a command similar to this (with the DetSys installer) to set up Nix with my organization's cache on a new computer: ```bash curl --proto '=https' --tlsv1.2 -sSf -L https://install.lix.systems/lix | sh -s -- install --no-confirm --extra-conf " extra-substituters = https://nix-cache.fossi-foundation.org extra-trusted-public-keys = nix-cache.fossi-foundation.org:3+K59iFwXqKsL7BNu6Guy0v+uTlwsxYQxjspXzqLYQs= experimental-features = nix-command flakes " ``` But with the lix-installer fork, it instead generates this nix.conf: ```ini extra-substituters = https://nix-cache.fossi-foundation.org extra-trusted-public-keys = nix-cache.fossi-foundation.org:3+K59iFwXqKsL7BNu6Guy0v+uTlwsxYQxjspXzqLYQs= experimental-features = nix-command flakes build-users-group = nixbld auto-optimise-store = true bash-prompt-prefix = (nix:$name)\040 max-jobs = auto substituters = https://cache.nixos.org https://cache.lix.systems trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cache.lix.systems:aBnZUw8zA7H35Cz2RyKFVs3H4PlGTLawyY5KRbvJR8o= extra-nix-path = nixpkgs=flake:nixpkgs ``` Unfortunately, this causes substitution to fail because, at least unless I'm misunderstanding something which is v. possible, extra-substituters precedes substituters. --- Versions: ``` nix (Lix, like Nix) 2.93.0 System type: aarch64-linux Additional system types: Features: gc, signed-caches System configuration file: /etc/nix/nix.conf User configuration files: /home/donn.linux/.config/nix/nix.conf:/etc/xdg/nix/nix.conf Store directory: /nix/store State directory: /nix/var/nix Data directory: /nix/store/by4gw6w1xrvrzns8xky2hw8s7bvvxsn2-lix-2.93.0/share ``` ``` lix-installer 0.17.1 ```
ktemkin self-assigned this 2025-09-21 16:04:24 +00:00
Owner

Oh, physically ordered that way in the config file. That's probably true. I learn new horrible things every day.

Oh, physically ordered that way in the config file. That's probably true. I learn new horrible things every day.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lix-project/lix-installer#58
No description provided.