summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2010-02-23 10:52:19 +0000
committerMichael Raskin <7c6f434c@mail.ru>2010-02-23 10:52:19 +0000
commit17c0e537e3771a2994d8e193c14a509979b9b680 (patch)
tree5e6575a436e51c09d9971f790adf94f13bb33400 /pkgs
parent26c45677979b592ccda7d6e7c76b3ba3c649a492 (diff)
downloadnixpkgs-17c0e537e3771a2994d8e193c14a509979b9b680.tar
nixpkgs-17c0e537e3771a2994d8e193c14a509979b9b680.tar.gz
nixpkgs-17c0e537e3771a2994d8e193c14a509979b9b680.tar.bz2
nixpkgs-17c0e537e3771a2994d8e193c14a509979b9b680.tar.lz
nixpkgs-17c0e537e3771a2994d8e193c14a509979b9b680.tar.xz
nixpkgs-17c0e537e3771a2994d8e193c14a509979b9b680.tar.zst
nixpkgs-17c0e537e3771a2994d8e193c14a509979b9b680.zip
Fixing some mistakes in TeXLive expressions. Context still does not work, but in a more complicated way
svn path=/nixpkgs/trunk/; revision=20186
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/misc/tex/texlive/aggregate.nix21
-rw-r--r--pkgs/misc/tex/texlive/context.nix11
2 files changed, 29 insertions, 3 deletions
diff --git a/pkgs/misc/tex/texlive/aggregate.nix b/pkgs/misc/tex/texlive/aggregate.nix
index 887b45e0d55..aabdccef93a 100644
--- a/pkgs/misc/tex/texlive/aggregate.nix
+++ b/pkgs/misc/tex/texlive/aggregate.nix
@@ -7,6 +7,8 @@ rec {
 
   doAggregate = fullDepEntry (''
 
+  ensureDir $out/libexec
+
     for currentPath in ${lib.concatStringsSep " " buildInputs}; do
         echo Symlinking "$currentPath"
         find $currentPath/share/info $currentPath/share/man $(echo $currentPath/texmf*) ! -type d | while read; do
@@ -17,7 +19,18 @@ rec {
         done | while read; do head -n 99 >/dev/null; echo -n .; done
 	echo
 
-	cp -Trfp $currentPath/libexec $out/libexec || true
+        find "$currentPath/libexec" -type d | while read; do
+            REPLY="''${REPLY#$currentPath}"
+	    ensureDir $out/"$REPLY"
+	done
+        find "$currentPath/libexec" -type f | while read; do
+            REPLY="''${REPLY#$currentPath}"
+	    ln -s "$currentPath"/"$REPLY" $out/"$REPLY"
+	done
+        find "$currentPath/libexec" -type l | while read; do
+            REPLY="''${REPLY#$currentPath}"
+	    ln -s "$currentPath"/"$REPLY" $out/"$REPLY"
+	done
     done
 
     ln -s $out/texmf* $out/share/
@@ -30,8 +43,10 @@ rec {
 
     ensureDir $out/bin
     for i in $out/libexec/*/*; do
-        echo -ne "#! /bin/sh\\n$i \"\$@\"" >$out/bin/$(basename $i)
-        chmod a+x $out/bin/$(basename $i)
+        if [ -x $(readlink -f $i) ]; then
+            echo -ne "#! /bin/sh\\n$i \"\$@\"" >$out/bin/$(basename $i)
+            chmod a+x $out/bin/$(basename $i)
+        fi;
     done
 
     rm $out/texmf*/ls-R
diff --git a/pkgs/misc/tex/texlive/context.nix b/pkgs/misc/tex/texlive/context.nix
index b502b0f2108..2bffc7aaf98 100644
--- a/pkgs/misc/tex/texlive/context.nix
+++ b/pkgs/misc/tex/texlive/context.nix
@@ -15,8 +15,19 @@ rec {
     cp -r * $out/texmf
 
     ln -s $out/texmf* $out/share/
+
+    sysName=$(ls -d ${args.texLive}/libexec/*/ | head -1)
+    sysName=''${sysName%%/}
+    sysName=''${sysName##*/}
+
+    ensureDir $out/libexec/$sysName
+    for i in $out/texmf/scripts/*/*/*; do
+      ln -s $i $out/libexec/$sysName/$(basename $i)
+    done
   '') ["minInit" "doUnpack" "defEnsureDir" "addInputs"];
 
+  
+
   meta = {
     description = "ConTEXt TeX wrapper";
   };