about summary refs log tree commit diff
path: root/nixos/modules/installer
diff options
context:
space:
mode:
authorDomen Kožar <domen@dev.si>2016-01-16 21:55:29 +0100
committerDomen Kožar <domen@dev.si>2016-01-16 21:58:40 +0100
commit75284b09e16f3168abc5273a9ed28d1fb4b33adf (patch)
treeeed164e4f0de167dca416096612ebeab35833edb /nixos/modules/installer
parent36057827f67665490f2f2a56ac3eec1fd645040d (diff)
downloadnixlib-75284b09e16f3168abc5273a9ed28d1fb4b33adf.tar
nixlib-75284b09e16f3168abc5273a9ed28d1fb4b33adf.tar.gz
nixlib-75284b09e16f3168abc5273a9ed28d1fb4b33adf.tar.bz2
nixlib-75284b09e16f3168abc5273a9ed28d1fb4b33adf.tar.lz
nixlib-75284b09e16f3168abc5273a9ed28d1fb4b33adf.tar.xz
nixlib-75284b09e16f3168abc5273a9ed28d1fb4b33adf.tar.zst
nixlib-75284b09e16f3168abc5273a9ed28d1fb4b33adf.zip
Fix ISO building from a channel
Building config.system.build.isoImage would fail with the following
error using the channel:

  ln: failed to create symbolic link
'/nix/store/zz0hzi5imrg4927v6f8mv281qs6v6pbq-nixos-16.03pre69762.e916273/nixos/nixpkgs/.': File exists

The fix skips symlink as it already exists if the channel
nixpkgs copy is used.

Fixes #10367
Diffstat (limited to 'nixos/modules/installer')
-rw-r--r--nixos/modules/installer/cd-dvd/channel.nix4
1 files changed, 3 insertions, 1 deletions
diff --git a/nixos/modules/installer/cd-dvd/channel.nix b/nixos/modules/installer/cd-dvd/channel.nix
index ea7e3e16b8df..1e5e2b2615c8 100644
--- a/nixos/modules/installer/cd-dvd/channel.nix
+++ b/nixos/modules/installer/cd-dvd/channel.nix
@@ -17,7 +17,9 @@ let
       mkdir -p $out
       cp -prd ${pkgs.path} $out/nixos
       chmod -R u+w $out/nixos
-      ln -s . $out/nixos/nixpkgs
+      if [ ! -e $out/nixos/nixpkgs ]; then
+        ln -s . $out/nixos/nixpkgs
+      fi
       rm -rf $out/nixos/.git
       echo -n ${config.system.nixosVersionSuffix} > $out/nixos/.version-suffix
     '';