Branch: refs/heads/master
  Home:   https://github.com/NixOS/nixpkgs
  Commit: f12b0a2179585d443bf0abab3ac1cfccebc24512
      
https://github.com/NixOS/nixpkgs/commit/f12b0a2179585d443bf0abab3ac1cfccebc24512
  Author: Bjørn Forsman <bjorn.fors...@gmail.com>
  Date:   2017-06-10 (Sat, 10 Jun 2017)

  Changed paths:
    M pkgs/tools/filesystems/bcache-tools/default.nix

  Log Message:
  -----------
  bcache-tools: add name to the source store path

So that

 $ nix-build -A bcache-tools.src

gives

 /nix/store/HASH-bcache-tools-1.0.7.tar.gz

instead of

 /nix/store/HASH-v1.0.7.tar.gz


  Commit: 581226cfb456b4c116594f1b79f45945703a4a4c
      
https://github.com/NixOS/nixpkgs/commit/581226cfb456b4c116594f1b79f45945703a4a4c
  Author: Bjørn Forsman <bjorn.fors...@gmail.com>
  Date:   2017-06-10 (Sat, 10 Jun 2017)

  Changed paths:
    M nixos/modules/system/boot/stage-1.nix
    M pkgs/tools/filesystems/bcache-tools/default.nix

  Log Message:
  -----------
  nixos/bcache: /bin/sh -> ${bash}/bin/sh

Or else `services.udev.packages = [ bcache-tools ]` cannot be used.

To not break bcache in the initrd I'm modifying this in stage-1.nix:

  -  --replace /bin/sh ${extraUtils}/bin/sh
  +  --replace ${bash}/bin/sh ${extraUtils}/bin/sh

Reasoning behind that change:

* If not modifying the /bin/sh pattern in any way, it will also match
  ${bash}/bin/sh, creating a broken path like
  /nix/store/HASH-bash/nix/store/HASH-bash/bin/sh in the udev rule file.

* The addition of /bin/sh was done in 775f381a9e34
  ("stage-1: add bcache support"). It seems somewhat plausible that
  no new users have appeared since then and we can take this opportunity
  to back out of this change without much fear of regressions.

  If there _are_ regressions, they should be in the form of build time
  errors, not runtime (boot), due to how the udev rule output is checked
  for invalid path references. So low risk, IMHO.

* An alternative approach could be to copy the /bin/sh substitute rule
  over to the non-initrd udev rules implementation in NixOS, but I think
  this way is better:
  - The rules file comes with a working path out of the box.
  - We can use more precise pattern matching when modifying the udev
    rules for the initrd.


  Commit: 5b48368386864af78658b7c18608df57f8e8a386
      
https://github.com/NixOS/nixpkgs/commit/5b48368386864af78658b7c18608df57f8e8a386
  Author: Bjørn Forsman <bjorn.fors...@gmail.com>
  Date:   2017-06-10 (Sat, 10 Jun 2017)

  Changed paths:
    M nixos/modules/tasks/bcache.nix

  Log Message:
  -----------
  nixos/bcache: add services.udev.packages = [ bcache-tools ]

Adds /dev/disk/by-{id,label}/* symlinks for bcache device nodes, in the
final rootfs.

Symlinks will only be created for bcache devices that contain
filesystems. So if you have a blank bcache device or run LVM on top of
bcache you will not get this kind of symlink.


Compare: https://github.com/NixOS/nixpkgs/compare/700e22f7bf8c...5b4836838686
_______________________________________________
nix-commits mailing list
nix-comm...@lists.science.uu.nl
https://mailman.science.uu.nl/mailman/listinfo/nix-commits

Reply via email to