Hello! Andreas Enge <andr...@enge.fr> skribis:
> Am Samstag, 2. Februar 2013 schrieb Ludovic Courtès: >> Andreas Enge <andr...@enge.fr> skribis: >> > in texlive, there are lots of scripts to be installed in share; thus, >> > the patch-shebang phase does not catch them. >> Do you know why it doesn’t catch them? The ‘patch-source-shebangs’ >> phase patches all the files found under “.”, recursively. > > I am not speaking about patch-source-shebangs, but patch-shebangs. Ah right, the ‘patch-shebangs’ phase just looks at files in ‘bin’ and ‘sbin’ (see gnu-build-system.scm). Perhaps you can add a phase somewhere that does along the lines of: (lambda* (#:key outputs #:allow-other-keys) (for-each (match-lambda ((_ . dir) (for-each patch-shebang (find-files (string-append dir "/share") ".*")))) outputs) #t) > In any case, I have a working texlive! It contains over 100000 files (that > are symlinked from the user profile...) and takes over 3GB, but it works! Woow, congratulations! :-) I’m not sure if that would help here, but do you know about “multiple-output derivations”? It’s used for Libtool for instance: the ‘outputs’ field there means that binaries go into one directory, and the rest goes into another directory (you see them when typing ‘guix-build libtool’). So if there are several kinds of files, you may want to separate them in different outputs. > Actually, I think one does not need to symlink the files from the user > profile; tex has its own way of finding files via the binary "kpsewhich" > (linked from the user profile), which points directly to the nix store: > $ kpsewhich article.sty > /nix/store/2cc4xyivn5f52gywl5mnz6fi90bj24xh-texlive-2012/share/texmf- > dist/tex/latex/base/article.sty > > So maybe by splitting into two or three packages, one could hide the data > in the nix store. I will think about it. Hmm, intriguing. :-) Thanks! Ludo’, coming back from FOSDEM.