summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/development/libraries/aspell/aspell-with-dicts.nix37
1 files changed, 17 insertions, 20 deletions
diff --git a/pkgs/development/libraries/aspell/aspell-with-dicts.nix b/pkgs/development/libraries/aspell/aspell-with-dicts.nix
index 96acfe6c2a8..0739ad333df 100644
--- a/pkgs/development/libraries/aspell/aspell-with-dicts.nix
+++ b/pkgs/development/libraries/aspell/aspell-with-dicts.nix
@@ -4,8 +4,7 @@
 { aspell
 , aspellDicts
 , makeWrapper
-, symlinkJoin
-, runCommand
+, buildEnv
 }:
 
 f:
@@ -14,22 +13,20 @@ let
   # Dictionaries we want
   dicts = f aspellDicts;
 
-  # A tree containing the dictionaries
-  dictEnv = symlinkJoin {
-    name = "aspell-dicts";
-    paths = dicts;
-  };
-
-in runCommand "aspell-env" {
+in buildEnv {
+  name = "aspell-env";
   buildInputs = [ makeWrapper ];
-} ''
-  # Construct wrappers in /bin
-  mkdir -p $out/bin
-  pushd "${aspell}/bin"
-  for prg in *; do
-    if [ -f "$prg" ]; then
-      makeWrapper "${aspell}/bin/$prg" "$out/bin/$prg" --set ASPELL_CONF "dict-dir ${dictEnv}/lib/aspell"
-    fi
-  done
-  popd
-''
+  paths = [ aspell ] ++ dicts;
+  postBuild = ''
+    # Construct wrappers in /bin
+    unlink "$out/bin"
+    mkdir -p "$out/bin"
+    pushd "${aspell}/bin"
+    for prg in *; do
+      if [ -f "$prg" ]; then
+        makeWrapper "${aspell}/bin/$prg" "$out/bin/$prg" --set ASPELL_CONF "dict-dir $out/lib/aspell"
+      fi
+    done
+    popd
+  '';
+}
\ No newline at end of file