Reproducible sources #2

Closed
opened 2020-11-07 19:26:01 +01:00 by simon · 2 comments

I can currently think of two options:

  • Add nixpkgs (channel), nixpkgs-unstable and home-manager to root’s nix-channel
  • Pin all three to specific commits and add these pins to the repository (how?)

Possible implementations:

  • Set nix.nixPath to sources.nixpkgs
    • Problems: only gets updated at login, overrides nixos-config in NIX_PATH
  • Set nix.nixPath to checked out nixpkgs submodule
    • Problems: overrides nixos-config in NIX_PATH, uses git submodules (I don’t really like them)
  • Use a wrapper around nixos-rebuild that passes -I nixpkgs=…
  • Flakes (see #3)

Plan

Do it like in da3b61d739/nixos/configurations.nix :

nix.nixPath = [
  "home-manager=${home-manager}"
  "nixpkgs=${nixpkgs}"
  "nur=${nur}"
];

Those should always point to the same directory (even on updates) to work around the problem described above.

I can currently think of two options: * Add `nixpkgs` (channel), `nixpkgs-unstable` and `home-manager` to root’s nix-channel * Pin all three to specific commits and add these pins to the repository (how?) Possible implementations: * Set `nix.nixPath` to `sources.nixpkgs` + Problems: only gets updated at login, overrides `nixos-config` in `NIX_PATH` * Set `nix.nixPath` to checked out nixpkgs submodule + Problems: overrides `nixos-config` in `NIX_PATH`, uses git submodules (I don’t really like them) * Use a wrapper around `nixos-rebuild` that passes `-I nixpkgs=…` * Flakes (see #3) ### Plan Do it like in https://github.com/Mic92/dotfiles/blob/da3b61d739d18c14780b58c0828e50fa3187f5aa/nixos/configurations.nix : nix.nixPath = [ "home-manager=${home-manager}" "nixpkgs=${nixpkgs}" "nur=${nur}" ]; Those should always point to the same directory (even on updates) to work around the problem described above.
simon added a new dependency 2020-12-04 20:26:56 +01:00
simon added the
affects/reproducibility
label 2020-12-04 20:31:39 +01:00
simon changed title from More reproducible sources to Reproducible sources 2020-12-05 23:10:13 +01:00
simon added this to the Reproducible milestone 2020-12-05 23:10:25 +01:00
Poster
Owner

Partially fixed in f53b777a7e and 049e02089f

Partially fixed in f53b777a7e6a618b482ed8b2fa6d39c8d4f7d003 and 049e02089f7b87a81e7e1e510f19a5b3b6f88f25
simon removed a dependency 2020-12-12 16:17:06 +01:00
simon closed this issue 2020-12-12 16:17:15 +01:00
simon reopened this issue 2020-12-12 17:09:25 +01:00
Poster
Owner

(hopefully) fixed in a0dd8aa8b458a4473a7624db38e46f3b6bdd9b39 and 3c5744845159b7b0ae67d843c965937d1cb409e4

(hopefully) fixed in a0dd8aa8b458a4473a7624db38e46f3b6bdd9b39 and 3c5744845159b7b0ae67d843c965937d1cb409e4
simon closed this issue 2020-12-12 17:13:39 +01:00
simon added the
type
feature
label 2021-01-31 22:40:48 +01:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 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: simon/nixos-config#2
There is no content yet.