summary refs log tree commit diff
diff options
context:
space:
mode:
authorNick Cao <nickcao@nichi.co>2023-07-21 09:48:30 +0800
committerNick Cao <nickcao@nichi.co>2023-07-21 09:51:48 +0800
commitc1718f59e0bd2af933de924a7f97aec785e4c679 (patch)
tree6e91d4c08ed5ee873c45ee396154b30fbee3078e
parent68f6fef8ceb6143202671dcd3c8dbc0b82942c98 (diff)
downloadnixpkgs-c1718f59e0bd2af933de924a7f97aec785e4c679.tar
nixpkgs-c1718f59e0bd2af933de924a7f97aec785e4c679.tar.gz
nixpkgs-c1718f59e0bd2af933de924a7f97aec785e4c679.tar.bz2
nixpkgs-c1718f59e0bd2af933de924a7f97aec785e4c679.tar.lz
nixpkgs-c1718f59e0bd2af933de924a7f97aec785e4c679.tar.xz
nixpkgs-c1718f59e0bd2af933de924a7f97aec785e4c679.tar.zst
nixpkgs-c1718f59e0bd2af933de924a7f97aec785e4c679.zip
librsvg: fix cross compilation by using emulator for shell completion generation
-rw-r--r--pkgs/development/libraries/librsvg/default.nix25
1 files changed, 13 insertions, 12 deletions
diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix
index 9520dda51c4..98029c82f70 100644
--- a/pkgs/development/libraries/librsvg/default.nix
+++ b/pkgs/development/libraries/librsvg/default.nix
@@ -135,18 +135,19 @@ stdenv.mkDerivation (finalAttrs: {
   '';
 
   # Not generated when cross compiling.
-  postInstall = lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) ''
-    # Merge gdkpixbuf and librsvg loaders
-    cat ${lib.getLib gdk-pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache $GDK_PIXBUF/loaders.cache > $GDK_PIXBUF/loaders.cache.tmp
-    mv $GDK_PIXBUF/loaders.cache.tmp $GDK_PIXBUF/loaders.cache
-
-    mkdir -p "$out/share/bash-completion/completions/"
-    $out/bin/rsvg-convert --completion bash > "$out/share/bash-completion/completions/rsvg-convert"
-    mkdir -p "$out/share/zsh/site-functions/"
-    $out/bin/rsvg-convert --completion zsh > "$out/share/zsh/site-functions/_rsvg-convert"
-    mkdir -p "$out/share/fish/vendor_completions.d/"
-    $out/bin/rsvg-convert --completion fish > "$out/share/fish/vendor_completions.d/rsvg-convert.fish"
-  '';
+  postInstall = let emulator = stdenv.hostPlatform.emulator buildPackages; in
+    lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) ''
+      # Merge gdkpixbuf and librsvg loaders
+      cat ${lib.getLib gdk-pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache $GDK_PIXBUF/loaders.cache > $GDK_PIXBUF/loaders.cache.tmp
+      mv $GDK_PIXBUF/loaders.cache.tmp $GDK_PIXBUF/loaders.cache
+
+      mkdir -p "$out/share/bash-completion/completions/"
+      ${emulator} $out/bin/rsvg-convert --completion bash > "$out/share/bash-completion/completions/rsvg-convert"
+      mkdir -p "$out/share/zsh/site-functions/"
+      ${emulator} $out/bin/rsvg-convert --completion zsh > "$out/share/zsh/site-functions/_rsvg-convert"
+      mkdir -p "$out/share/fish/vendor_completions.d/"
+      ${emulator} $out/bin/rsvg-convert --completion fish > "$out/share/fish/vendor_completions.d/rsvg-convert.fish"
+    '';
 
   postFixup = lib.optionalString withIntrospection ''
     # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.