summary refs log tree commit diff
path: root/nixos/modules/system/boot/luksroot.nix
diff options
context:
space:
mode:
authorMoritz Maxeiner <moritz@ucworks.org>2014-01-29 18:49:26 +0100
committerMoritz Maxeiner <moritz@ucworks.org>2014-01-29 18:49:26 +0100
commit7bf94cadad5c416375c3e5dfd46f31a81b76ea05 (patch)
tree93290be27ac354f967c17129340d39a72b9b9c13 /nixos/modules/system/boot/luksroot.nix
parentb0d2f0e3f04a74e847dee898bf4c73767c986dfc (diff)
downloadnixpkgs-7bf94cadad5c416375c3e5dfd46f31a81b76ea05.tar
nixpkgs-7bf94cadad5c416375c3e5dfd46f31a81b76ea05.tar.gz
nixpkgs-7bf94cadad5c416375c3e5dfd46f31a81b76ea05.tar.bz2
nixpkgs-7bf94cadad5c416375c3e5dfd46f31a81b76ea05.tar.lz
nixpkgs-7bf94cadad5c416375c3e5dfd46f31a81b76ea05.tar.xz
nixpkgs-7bf94cadad5c416375c3e5dfd46f31a81b76ea05.tar.zst
nixpkgs-7bf94cadad5c416375c3e5dfd46f31a81b76ea05.zip
Add library dependencies explicitly
Diffstat (limited to 'nixos/modules/system/boot/luksroot.nix')
-rw-r--r--nixos/modules/system/boot/luksroot.nix35
1 files changed, 11 insertions, 24 deletions
diff --git a/nixos/modules/system/boot/luksroot.nix b/nixos/modules/system/boot/luksroot.nix
index 3f4b703fa9c..8547682284f 100644
--- a/nixos/modules/system/boot/luksroot.nix
+++ b/nixos/modules/system/boot/luksroot.nix
@@ -413,36 +413,23 @@ in
     # copy the cryptsetup binary and it's dependencies
     boot.initrd.extraUtilsCommands = ''
       cp -pdv ${pkgs.cryptsetup}/sbin/cryptsetup $out/bin
-      # XXX: do we have a function that does this?
-      for lib in $(ldd $out/bin/cryptsetup |grep '=>' |grep /nix/store/ |cut -d' ' -f3); do
-        cp -pdvn $lib $out/lib
-        cp -pvn $(readlink -f $lib) $out/lib
-      done
+
+      cp -pdv ${pkgs.libgcrypt}/lib/libgcrypt*.so.* $out/lib
+      cp -pdv ${pkgs.libgpgerror}/lib/libgpg-error*.so.* $out/lib
+      cp -pdv ${pkgs.cryptsetup}/lib/libcryptsetup*.so.* $out/lib
+      cp -pdv ${pkgs.popt}/lib/libpopt*.so.* $out/lib
 
       ${optionalString luks.yubikeySupport ''
       cp -pdv ${pkgs.utillinux}/bin/uuidgen $out/bin
-      for lib in $(ldd $out/bin/uuidgen |grep '=>' |grep /nix/store/ |cut -d' ' -f3); do
-        cp -pdvn $lib $out/lib
-        cp -pvn $(readlink -f $lib) $out/lib
-      done
-
       cp -pdv ${pkgs.ykpers}/bin/ykchalresp $out/bin
-      for lib in $(ldd $out/bin/ykchalresp |grep '=>' |grep /nix/store/ |cut -d' ' -f3); do
-        cp -pdvn $lib $out/lib
-        cp -pvn $(readlink -f $lib) $out/lib
-      done
-
       cp -pdv ${pkgs.ykpers}/bin/ykinfo $out/bin
-      for lib in $(ldd $out/bin/ykinfo |grep '=>' |grep /nix/store/ |cut -d' ' -f3); do
-        cp -pdvn $lib $out/lib
-        cp -pvn $(readlink -f $lib) $out/lib
-      done
-
       cp -pdv ${pkgs.openssl}/bin/openssl $out/bin
-      for lib in $(ldd $out/bin/openssl |grep '=>' |grep /nix/store/ |cut -d' ' -f3); do
-        cp -pdvn $lib $out/lib
-        cp -pvn $(readlink -f $lib) $out/lib
-      done
+
+      cp -pdv ${pkgs.libusb1}/lib/libusb*.so.* $out/lib
+      cp -pdv ${pkgs.ykpers}/lib/libykpers*.so.* $out/lib
+      cp -pdv ${pkgs.libyubikey}/lib/libyubikey*.so.* $out/lib
+      cp -pdv ${pkgs.openssl}/lib/libssl*.so.* $out/lib
+      cp -pdv ${pkgs.openssl}/lib/libcrypto*.so.* $out/lib
 
       mkdir -p $out/etc/ssl
       cp -pdv ${pkgs.openssl}/etc/ssl/openssl.cnf $out/etc/ssl