Branch: refs/heads/master
  Home:   https://github.com/NixOS/nixpkgs
  Commit: ee39d4b98a285bb2812c6e6ab51f4038ac013173
      
https://github.com/NixOS/nixpkgs/commit/ee39d4b98a285bb2812c6e6ab51f4038ac013173
  Author: aszlig <[email protected]>
  Date:   2017-03-27 (Mon, 27 Mar 2017)

  Changed paths:
    M nixos/tests/virtualbox.nix

  Log Message:
  -----------
  nixos/tests/virtualbox: Fix @shell@ expansion

This has surfaced since f803270b7e00fa7124282809838d5652083b6aad.

The commit bumped bash to version 4.4, which caused to change the order
of --subst-var flags in substituteAll, which this test was relying on,
because it added a @shell@ to boot.initrd.postMountCommands.

Our substituter is currently working a bit like this:

original.replace('@var1@', 'val1').replace('@var2@', 'val2')...

Unfortunately, this means that if @var2@ occurs within @var1@ it is
replaced by the new value, so the order of the substvars actually
matter. I highly doubt that we want a behaviour like this and I'm
wondering why it didn't occur to me as a problem while writing the
initial implementation of the VirtualBox tests.

Whether to get rid of this and disallowing substitution of substvars
within substvars is another topic which I think needs discussion in a
different place.

As for now, I'm using stdenv.shell, because the closure size of this
should fit within the initrd, so it's fine especially because it's just
a test.

Tested with the net-hostonlyif and systemd-detect-virt tests and they
both succeed with this change.

Signed-off-by: aszlig <[email protected]>
Reported-by: @globin on IRC


_______________________________________________
nix-commits mailing list
[email protected]
http://lists.science.uu.nl/mailman/listinfo/nix-commits

Reply via email to