Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
On 27.10.08 Sergei Ivanov ([EMAIL PROTECTED]) wrote: On Monday 27 October 2008, Hilmar Preusse wrote: Hi Sergei, Frank analyszed that bug and found out that the problem only occurs if TEXMFSYSVAR is nor part of SYSTEXMF. Actually (TL 2007) this is not the case any more and I couldn't reproduce your bug any more. Can you? If not, is it OK to close that bug? It works fine for me now. However it misbehaved after upgrade from etch to lenny (today). After upgrade, the above command placed generated fonts under /tmp/texfonts. When I removed all traces of TeX from the system and reinstalled texlive, it swithed to the expected ~/.texmf-var. This is probably an unrelated issue, and I cannot reproduce it any more. If Franks analysis is correct (and I guess this is the case) the default config does not have this problem. Do you agree to close this bug now? Hilmar -- sigmentation fault -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
reassign 412242 texlive-base-bin merge 412242 412653 stop On 24.02.07 Sergei Ivanov ([EMAIL PROTECTED]) wrote: Hi Sergei, http://bugs.debian.org/412242 Package: tetex-bin Version: 3.0-29 Severity: normal On my system, the command mktexpk --mfmode ljfour --bdpi 600 --mag 1+120/600 --dpi 720 lhr10 places the resulting file lhr10.720pk in the current working directory. (The font lhr10 is a cyrillic version of cmr10, I think it belongs to tetex-extra.) At the same time, the same command with cmr10 in place of lhr10 places the result under ~/.texmf-var. The difference between lhr10 and cmr10 is that I have lhr10.tfm and some other lh* files under /var/lib/texmf (they were probably created by fmtutil since I use custom formats with these fonts). rm -rf /var/lib/texmf/fonts fixes the problem. I tried to debug it and found that one of the scripts (maketexnam) finds lhr10.tfm under /var/lib/texmf but fails to recognize that /var/lib/texmf is a system tree. Frank analyszed that bug and found out that the problem only occurs if TEXMFSYSVAR is nor part of SYSTEXMF. Actually (TL 2007) this is not the case any more and I couldn't reproduce your bug any more. [EMAIL PROTECTED]:~ $ mktexpk --mfmode ljfour --bdpi 600 --mag 1+120/600 --dpi 720 lhr10 mktexpk: Running mf-nowin -progname=mf \mode:=ljfour; mag:=1+120/600; nonstopmode; input lhr10 This is METAFONT, Version 2.71828 (Web2C 7.5.6) (/home/hille/.texmf-var/fonts/source/lh/lh-lcy/lhr10.mf snip Font metrics written on lhr10.tfm. Output written on lhr10.720gf (210 characters, 49436 bytes). Transcript written on lhr10.log. mktexpk: /home/hille/.texmf-var/fonts/pk/ljfour/lh/lh-lcy/lhr10.720pk: successfully generated. /home/hille/.texmf-var/fonts/pk/ljfour/lh/lh-lcy/lhr10.720pk [EMAIL PROTECTED]:~ $ Can you? If not, is it OK to close that bug? Thanks, Hilmar -- sigmentation fault -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
On Monday 27 October 2008, Hilmar Preusse wrote: Frank analyszed that bug and found out that the problem only occurs if TEXMFSYSVAR is nor part of SYSTEXMF. Actually (TL 2007) this is not the case any more and I couldn't reproduce your bug any more. [EMAIL PROTECTED]:~ $ mktexpk --mfmode ljfour --bdpi 600 --mag 1+120/600 --dpi 720 lhr10 mktexpk: Running mf-nowin -progname=mf \mode:=ljfour; mag:=1+120/600; nonstopmode; input lhr10 This is METAFONT, Version 2.71828 (Web2C 7.5.6) (/home/hille/.texmf-var/fonts/source/lh/lh-lcy/lhr10.mf snip Font metrics written on lhr10.tfm. Output written on lhr10.720gf (210 characters, 49436 bytes). Transcript written on lhr10.log. mktexpk: /home/hille/.texmf-var/fonts/pk/ljfour/lh/lh-lcy/lhr10.720pk: successfully generated. /home/hille/.texmf-var/fonts/pk/ljfour/lh/lh-lcy/lhr10.720pk [EMAIL PROTECTED]:~ $ Can you? If not, is it OK to close that bug? It works fine for me now. However it misbehaved after upgrade from etch to lenny (today). After upgrade, the above command placed generated fonts under /tmp/texfonts. When I removed all traces of TeX from the system and reinstalled texlive, it swithed to the expected ~/.texmf-var. This is probably an unrelated issue, and I cannot reproduce it any more. Best regards, Sergei -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#412242: mktexnam and SYSTEXMF (was: Bug#412242: tetex-bin: mktexpk places some fonts in the current directory)
Dear TeX Live team, a Debian user has discovered a problem with the placement of created fonts: If there is already something for this font in TEXMFSYSVAR, newly generated font files for a user are placed in the current directory instead of their TEXMFVAR. I think the reason for this is that TEXMFSYSVAR is not in SYSTEXMF. Does anybody know why this is so? Is there any reason not to include TEXMFSYSVAR in the future? Here are the details: With ${MT_FEATURES=appendonlydir:texmfvar} in mktex.cnf, generated fonts are preferrably placed in $TEXMFVAR. However, if fonts are needed during format creation (e.g. for cyrtex), and the format is created with fmtutil-sys, then TEXMFVAR is set to TEXMFSYSVAR, and the fonts end up there - a directory that is not writeable to users. Now when this format is used and more font files are generated from the same sources, mktexnam is used to determine the file placement, and mktexnam has the following priorities: - if there is already one file for this font at this size in an accessible tree, derivatives (tfm or pk derived from mf) are placed in the same tree - if this is a system tree, use TEXMFVAR instead - if the destination directory is not writable, use the current directory. TEXMFSYSVAR is not in SYSTEXMF, therefore, for pk fonts derived from those created in format generation, TEXMFSYSVAR is chosen as destination tree, and since this is not writable for users, files are created in the current directory. Regards, Frank -- Dr. Frank Küster Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich Debian Developer (teTeX/TeXLive)
Bug#412242: [tex-live] mktexnam and SYSTEXMF (was: Bug#412242: tetex-bin: mktexpk places some fonts in the current directory)
TEXMFSYSVAR is not in SYSTEXMF. Does anybody know why this is so? I don't recall an explicit decision being made. Is there any reason not to include TEXMFSYSVAR in the future? Doing this makes sense to me, but I'd like to get Thomas E's opinion. Thomas? Thanks, k -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
Sergei Ivanov [EMAIL PROTECTED] wrote: On Tuesday 27 February 2007 12:01, Frank Küster wrote: retitle 412242 fonts generated upon format creation are placed in TEXMFSYSVAR [...] /var/lib/texmf/fonts is and never was supposed to contain pk fonts, if I remember correctly. I still think that the issue is about maketexpk. If /var/lib/texmf is not for fonts, then it should not be in the search path. The search paths and the creation paths are tied together, although not the same. /var/lib/texmf/fonts must be in the search path, because it contains the subdirectory map/ with the generated system-wide map files. On the other hand, the rule to put generated fonts in the same tree as their sources generally makes sense. One change we could consider is to try the users' font directory before the current directory. But that would only hide the problem that these fonts should never be created in /var/lib/texmf, in an ideal world. If it is, then maketexpk should not be confused by the fact that the directory is not writable. Well, it isn't confused. The question is only what it should do instead. Now fmtutil-sys should not create the fonts in ~root/.texmf-var, naturally, and the question is: If fmtutil would put the fonts in the fallback, /tmp/texfonts, where they are erased upon reboot, would that cause any problems? I can think of security problems. What if /tmp/texfonts/something is a symlink pointing to a sensitive place? This is a problem, even if not a severe one (the symlink cannot exist in advance, it would have to be created between mktexpk's check and the metafont run, and it's hard to get arbitrary output there). That's the reasons why the fonts are in per-user directories now by default. Only for the font generation when the format is created, /tmp/texfonts makes sense, because this will be automatically erased sooner or later, whereas /root/.texmf-var/ will not. Regards, Frank -- Dr. Frank Küster Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich Debian Developer (teTeX/TeXLive)
Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
Okay, I've investigated this a bit further. When the cyrtex format is created, some fonts are needed. No matter whether we are using teTeX or TeX Live, as long as HOME is set and exists, the fonts are placed in $TEXMFVAR (i.e. $HOME/.texmf-var). I think this is a good choice for the default setup. On multiuser machines, the local admin can use the hints on font caching in the TeX-on-Debian document. I assume that the fonts are in /var/lib/texmf/fonts on your system because of some older problem. Oh, well, let's verify that: Please run # /usr/share/texmf/web2c/mktexnam lhr10 The output should look like this: /root/.texmf-var/fonts/pk/ljfour/lh/lh-lcy/lhr10.600pk:/root/.texmf-var/fonts/tfm/lh/lh-lcy/lhr10.tfm:/root/.texmf-var/fonts/source/lh/lh-lcy/lhr10.mf If this is the case, I think we can forget this bug as happens only in weird circumstances, and you can fix it by removing all files from /var/lib/texmf/fonts *except* the /var/lib/texmf/fonts/map subdirectory. Regards, Frank -- Dr. Frank Küster Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich Debian Developer (teTeX/TeXLive)
Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
On Friday 02 March 2007 18:21, Frank Küster wrote: Okay, I've investigated this a bit further. When the cyrtex format is created, some fonts are needed. No matter whether we are using teTeX or TeX Live, as long as HOME is set and exists, the fonts are placed in $TEXMFVAR (i.e. $HOME/.texmf-var). [...] I assume that the fonts are in /var/lib/texmf/fonts on your system because of some older problem. Oh, well, let's verify that: Please run # /usr/share/texmf/web2c/mktexnam lhr10 The output should look like this: /root/.texmf-var/fonts/pk/ljfour/lh/lh-lcy/lhr10.600pk:/root/.texmf-var/fonts/tfm/lh/lh-lcy/lhr10.tfm:/root/.texmf-var/fonts/source/lh/lh-lcy/lhr10.mf Yes, it is like this. And running initex from command line creates fonts in /root/.texmf-var. However this is not the case with fmtutil-sys - it creates fonts under /var/lib/texmf. Obviously fmtutil-sys plays some tricks with environment before running tex. As I can see, it sets TEXMFVAR=TEXMFSYSVAR. If this is the case, I think we can forget this bug as happens only in weird circumstances, and you can fix it by removing all files from /var/lib/texmf/fonts *except* the /var/lib/texmf/fonts/map subdirectory. I did that. But /var/lib/texmf/fonts/{tfm,pk} are re-created whenever I run fmtutil-sys or reinstall tetex. I think this is reproducible on a fresh installation. Regards, Sergei -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
On Tuesday 27 February 2007 12:01, Frank Küster wrote: retitle 412242 fonts generated upon format creation are placed in TEXMFSYSVAR [...] /var/lib/texmf/fonts is and never was supposed to contain pk fonts, if I remember correctly. I still think that the issue is about maketexpk. If /var/lib/texmf is not for fonts, then it should not be in the search path. If it is, then maketexpk should not be confused by the fact that the directory is not writable. Now fmtutil-sys should not create the fonts in ~root/.texmf-var, naturally, and the question is: If fmtutil would put the fonts in the fallback, /tmp/texfonts, where they are erased upon reboot, would that cause any problems? I can think of security problems. What if /tmp/texfonts/something is a symlink pointing to a sensitive place? Regards, Sergei -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
user [EMAIL PROTECTED] retitle 412242 fonts generated upon format creation are placed in TEXMFSYSVAR clone 412242 -1 reassign -1 texlive-base-bin usertags 412242 cloned-in-texlive thanks Sergei Ivanov [EMAIL PROTECTED] wrote: On Sunday 25 February 2007 17:12, Frank Küster wrote: /var/lib/texmf/fonts is and never was supposed to contain pk fonts, if I remember correctly. So maybe we should rather find out how these fonts got there. If it is something that might have happened to more users, we may need to cater for it, if it's just a special case on your system, maybe not. They are placed there by fmtutil-sys. To reproduce: - uncomment the cyrtex line in /etc/texmf/fmt.d/01tetex.cnf - run fmtutil-sys --cnffile /etc/texmf/fmt.d/01tetex.cnf --all (everything as root). This creates a bunch of .tfm and 600 DPI .pk fonts in /var/lib/texmf/fonts. Then when a non-root user needs these .pk fonts at another resolution, they are created in the current directory. Yes, I can reproduce this, and it still happens in texlive 2005. I don't know about 2007 yet, but I fear it hasn't changed. I didn't have time to look at the details, but from memory the rules for font creation are like this: - put them in TEXMFVAR, i.e. ~/.texmf-var/, if possible - put them into /tmp/texfonts as a fallback Now fmtutil-sys should not create the fonts in ~root/.texmf-var, naturally, and the question is: If fmtutil would put the fonts in the fallback, /tmp/texfonts, where they are erased upon reboot, would that cause any problems? I guess not, since either the information is included in the format dump, or it can be recreated by a user who runs the format. Regards, Frank -- Dr. Frank Küster Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich Debian Developer (teTeX/TeXLive)
Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
Hi Sergei, thanks for the report. Sergei Ivanov [EMAIL PROTECTED] wrote: Package: tetex-bin Version: 3.0-29 Severity: normal On my system, the command mktexpk --mfmode ljfour --bdpi 600 --mag 1+120/600 --dpi 720 lhr10 places the resulting file lhr10.720pk in the current working directory. (The font lhr10 is a cyrillic version of cmr10, I think it belongs to tetex-extra.) [...] The difference between lhr10 and cmr10 is that I have lhr10.tfm and some other lh* files under /var/lib/texmf (they were probably created by fmtutil since I use custom formats with these fonts). I don't think fonts should ever be created there. rm -rf /var/lib/texmf/fonts fixes the problem. Hm, I tried to reproduce this, but I did it as root and the resulting file was created in /var/lib/texmf/fonts were I put the source files, too. From this alone I would conclude that the scripts try to put the files in the same tree as the sources, and use the current directory as fallback if the normal target directory is not writable. I mention this since it means there might be a reason for this behavior... I tried to debug it and found that one of the scripts (maketexnam) finds lhr10.tfm under /var/lib/texmf but fails to recognize that /var/lib/texmf is a system tree. That's correct. mktexnam asks kpsewhich for SYSTEXMF, which is defined in /etc/texmf/texmf.d/05TeXMF.cnf: % The system trees. These are the trees that are shared by all the users. SYSTEXMF = $TEXMFLOCAL;$TEXMFMAIN;$TEXMFDIST According to this description, this should include TEXMFSYSVAR and TEXMFSYSCONFIG. However, it's not as simple as just adding these trees to SYSTEXMF. In mktexnam, MT_VARTEXFONTS is explicitly added to the trees in SYSTEXMF. This variable used to point to /var/cache/fonts, now it points to TEXMFVAR/fonts, with /tmp/IforgotWhat as fallback. /var/lib/texmf/fonts is and never was supposed to contain pk fonts, if I remember correctly. So maybe we should rather find out how these fonts got there. If it is something that might have happened to more users, we may need to cater for it, if it's just a special case on your system, maybe not. Regards, Frank -- Dr. Frank Küster Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich Debian Developer (teTeX/TeXLive)
Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
On Sunday 25 February 2007 17:12, Frank Küster wrote: /var/lib/texmf/fonts is and never was supposed to contain pk fonts, if I remember correctly. So maybe we should rather find out how these fonts got there. If it is something that might have happened to more users, we may need to cater for it, if it's just a special case on your system, maybe not. They are placed there by fmtutil-sys. To reproduce: - uncomment the cyrtex line in /etc/texmf/fmt.d/01tetex.cnf - run fmtutil-sys --cnffile /etc/texmf/fmt.d/01tetex.cnf --all (everything as root). This creates a bunch of .tfm and 600 DPI .pk fonts in /var/lib/texmf/fonts. Then when a non-root user needs these .pk fonts at another resolution, they are created in the current directory. Best regards, Sergei
Bug#412242: tetex-bin: mktexpk places some fonts in the current directory
Package: tetex-bin Version: 3.0-29 Severity: normal On my system, the command mktexpk --mfmode ljfour --bdpi 600 --mag 1+120/600 --dpi 720 lhr10 places the resulting file lhr10.720pk in the current working directory. (The font lhr10 is a cyrillic version of cmr10, I think it belongs to tetex-extra.) At the same time, the same command with cmr10 in place of lhr10 places the result under ~/.texmf-var. The difference between lhr10 and cmr10 is that I have lhr10.tfm and some other lh* files under /var/lib/texmf (they were probably created by fmtutil since I use custom formats with these fonts). rm -rf /var/lib/texmf/fonts fixes the problem. I tried to debug it and found that one of the scripts (maketexnam) finds lhr10.tfm under /var/lib/texmf but fails to recognize that /var/lib/texmf is a system tree. -- System Information: Debian Release: 4.0 APT prefers testing APT policy: (500, 'testing') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/dash Kernel: Linux 2.6.18-s13 Locale: LANG=C, LC_CTYPE=ru_RU.KOI8-R (charmap=KOI8-R) Versions of packages tetex-bin depends on: ii debconf [debconf-2.0] 1.5.11 Debian configuration management sy ii debianutils 2.17 Miscellaneous utilities specific t ii dpkg 1.13.25package maintenance system for Deb ii ed0.2-20 The classic unix line editor ii libc6 2.3.6.ds1-11 GNU C Library: Shared libraries ii libfontconfig12.4.2-1generic font configuration library ii libfreetype6 2.2.1-5FreeType 2 font engine, shared lib ii libgcc1 1:4.1.1-21 GCC support library ii libice6 1:1.0.1-2 X11 Inter-Client Exchange library ii libjpeg62 6b-13 The Independent JPEG Group's JPEG ii libkpathsea4 3.0-29 path search library for teTeX (run ii libpaper1 1.1.21 Library for handling paper charact ii libpng12-01.2.15~beta5-1 PNG library - runtime ii libpoppler0c2 0.4.5-5.1 PDF rendering library ii libsm61:1.0.1-3 X11 Session Management library ii libstdc++64.1.1-21 The GNU Standard C++ Library v3 ii libt1-5 5.1.0-2Type 1 font rasterizer library - r ii libx11-6 2:1.0.3-5 X11 client-side library ii libxaw7 1:1.0.2-4 X11 Athena Widget library ii libxext6 1:1.0.1-2 X11 miscellaneous extension librar ii libxmu6 1:1.0.2-2 X11 miscellaneous utility library ii libxpm4 1:3.5.5-2 X11 pixmap library ii libxt61:1.0.2-2 X11 toolkit intrinsics library ii mime-support 3.39-1 MIME files 'mime.types' 'mailcap ii perl 5.8.8-7Larry Wall's Practical Extraction ii sed 4.1.5-1The GNU sed stream editor ii tetex-base3.0.dfsg.3-5 Basic TeX input files of teTeX ii tex-common1.0Common infrastructure for using an ii ucf 2.0018.1 Update Configuration File: preserv ii whiptail 0.52.2-9 Displays user-friendly dialog boxe ii zlib1g1:1.2.3-13 compression library - runtime Versions of packages tetex-bin recommends: pn libxml-parser-perl none (no description available) ii perl-tk 1:804.027-7 Perl module providing the Tk graph ii psutils 1.17-24 A collection of PostScript documen Versions of packages tetex-base depends on: ii tex-common1.0Common infrastructure for using an ii ucf 2.0018.1 Update Configuration File: preserv Versions of packages tetex-extra depends on: ii tetex-base 3.0.dfsg.3-5 Basic TeX input files of teTeX ii ucf 2.0018.1 Update Configuration File: preserv -- debconf information: tetex-base/olddat: true tetex-base/fmtutil-failed: tetex-base/oldupdm: tetex-base/updmap-failed: -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]