Norbert Preining <[EMAIL PROTECTED]> wrote: > Hi all! > > On Fre, 25 Aug 2006, Frank Küster wrote: >> > suppose. It should be shipped with the data.tar.gz. dh_installtex does >> > *NOT* create the necessary symlinks. (Should it do it?) >> >> If we want to do that, we should modify texlinks to accept a $DESTDIR >> and call that one from dh_installtex. > > On Fre, 25 Aug 2006, Atsuhito Kohda wrote: >> Only quick look, original postinst contained, among others, >> "texlinks --silent" so I guessed removing it could be wrong. > > Ahhh. > > Well I am against calling texlinks in the postinst and creating files > which are *NOT* removed at remove/purge time.
Yes, this should definitely not be done. > So: if we provide the functionality in dh_installtex, it should create the > links by itself (without texlinks) in debian/$(package)/usr/bin > and should NOT put code like texlinks into the postinst script. > > Or better, devs create the symlinks by themselves in the rules file. > > What do you think, which of the two options is better? Since the symlinks and their targets can be deduced from a "configuration file", namely the fmtutil.cnf snippet, I think it would be a good idea to include this in dh_installtex. However, I don't think this is particularly important; there's probably other things to do that are more pressing. The reason why I was mentioning texlinks and a DESTDIR option is that the code for parsing fmtutil.cnf, deciding about and generating symlinks already exists. And I had now a short look at the code in texlinks: I think it has already nearly everything we need. A call like texlinks --cnffile debian/40Foo.cnf debian/foo/usr/bin/ would create the symlinks, just that it checks whether the targets exist. Here's a patch: --- /usr/bin/texlinks 2006-08-02 16:27:58.000000000 +0200 +++ bin/texlinks 2006-08-25 13:29:08.000000000 +0200 @@ -49,6 +49,8 @@ --silent -s silently skip over existing scripts / binaries instead of creating a warning + --allow-dangling + -d allow dangling symlinks directories is an optional list of directories in which to operate. If no directories are specified the list of directories depends on the @@ -228,6 +230,7 @@ multiplatform=false verbose=false silent=false + allow_dangling=false thisdir=`pwd` : ${KPSE_DOT=$thisdir}; export KPSE_DOT selfautoloc=`kpsewhich --expand-var='$SELFAUTOLOC'` @@ -242,6 +245,7 @@ --v*|-v) verbose=true;; --s*|-s) silent=true;; --m*|-m) multiplatform=true;; + --allow-dangling|-d) allow_dangling=true;; -*) errmsg "fmtutil: unknown option \`$1' ignored.";; *) break;; esac @@ -290,7 +294,7 @@ main_args_while="$@" test "x$fmt" = "x$engine" && continue - if test -f "$d/$engine"; then + if test -f "$d/$engine" || test "$allow_dangling" = "true"; then install_link "$engine" "$d/$fmt" else verbose_echo "$d/$engine: engine does not exist. Skipping..." Regards, Frank -- Frank Küster Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich Debian Developer (teTeX/TeXLive)