After a fresh TL2011 install on fedora 15 x86_64, I encountered similar issues as reported on this mailing list regarding the updmap.cfg config file. Specifically, I observe similar problems as
http://permalink.gmane.org/gmane.linux.redhat.fedora.texlive/67 http://comments.gmane.org/gmane.linux.redhat.fedora.texlive/28 Two problems occur: 1) After a fresh (minimal) install, the updmap.cfg file '/usr/share/texlive/texmf/web2c/updmap.cfg' does not contain all entries (amongst others, the texlive-amsfonts Map and MixedMap entries are missing), hence the 'updmap-sys' command will not correctly update the 'psfonts.map' and the 'pdftex.map' files. 2) Once TL2011 is installed, new Map or MixedMap entries for additional font packages (i.e. texlive-kpfonts) are not 'seen' by updmap-sys, and therefore, again, the 'psfonts.map' and the 'pdftex.map' files are not updated. Digging further into these issues, I found the following: 1) During a fresh install, the initial 'updmap.cfg' file is installed (at least on fedora 15) to '/usr/share/texlive/texmf/web2c/updmap.cfg' by the package texlive-tetex. When the install is complete, issuing 'rpm -qa --last | head -n 30' reveals that this package is installed AFTER texlive-amsfonts and some other font packages. This causes the first issue, since this way, previous changes to this file (i.e. the changes by texlive-amsfonts, shown by 'rpm -q texlive- amsfonts --scripts') are discarded. Once all texlive packages are installed, the posttrans scriptlets are run, which invoke texhash and updmap-sys. After this, due to the previously described issue, only 4 entries are shown by 'updmap-sys - -listmaps', corresponding to the packages installed after texlive-tetex (being texlive-tetex, texlive-mflogo, texlive-lm and texlive-cm). To fix this issue, the dependencies of the different texlive-* packages should reflect the possible dependency on the updmap.cfg file in texlive-tetex. 2) The second issue is related to the way 'updmap-sys' updates the map files. When the updmap-sys command is run for the first time, the file '/usr/share/texlive/texmf/web2c/updmap.cfg' is copied to '/usr/share/texlive/texmf-config/web2c/updmap.cfg' and the map files are updated. Additionally, '/etc/texmf/web2c/updmap.cfg' is created as hardlink to '/usr/share/texlive/texmf-config/web2c/updmap.cfg'. Once this file exists, subsequent calls to 'updmap-sys' will ONLY track changes to this file and ignore changes to '/usr/share/texlive/texmf/web2c/updmap.cfg'. However, as shown by i.e. 'rpm -q texlive-kpfonts --scripts', the texlive-* packages make changes to '/usr/share/texlive/texmf/web2c/updmap.cfg', and therefore the map files are not correctly updated. This last issue is solved by removing the updmap.cfg file in the texmf-config directory BEFORE installing a new texlive-* font package, which was mentioned before on this list. However, this is only a temporary fix. On an old install of TL2010, issuing 'ls -il /usr/share/texlive/texmf{,- config}/web2c/updmap.cfg' shows that the 'updmap.cfg' files in the texmf and texmf-config directory used to be hardlinks to the same file (shown by the identical inode number). In more recent versions of TL2011 however, they are 2 separate files. Hence, to fix the second issue, the 'setupCfgFile()' routine in '/usr/share/texlive/texmf/scripts/tetex/updmap.pl' can be modified to test whether '/usr/share/texlive/texmf/web2c/updmap.cfg' is newer than '/usr/share/texlive/texmf-config/web2c/updmap.cfg'. Or we could again make a hardlink. For reference, the current 'setupCfgFile()' routine (texlive-tetex-2011- 0.2.3.0.svn23150.fc15.noarch). ############################################################################### # setupCfgFile() # find config file if none specified on cmd line. # sub setupCfgFile { if (! $cnfFile) { my $tf = `kpsewhich --var-value=TEXMFCONFIG`; chomp($tf); if ($tf && ! -f "$tf/web2c/$cnfFileShort") { &mkdirhier("$tf/web2c") if (! -d "$tf/web2c"); if (-d "$tf/web2c" && -w "$tf/web2c") { unlink "$tf/web2c/$cnfFileShort"; my $original_cfg=`kpsewhich updmap.cfg`; chomp($original_cfg); print("copy $original_cfg => $tf/web2c/$cnfFileShort\n") if !$quiet; $newcnf="$tf/web2c/$cnfFileShort"; ©File("$original_cfg", "$tf/web2c/$cnfFileShort"); $updLSR->{add}("$tf/web2c/$cnfFileShort"); } } $cnfFile = "$tf/web2c/updmap.cfg"; if (-s $cnfFile) { print "Config file: \"$cnfFile\"\n" if !$quiet; } else { die "$0: Config file updmap.cfg not found.\n"; } } } ############################################################################### _______________________________________________ TeXLive mailing list [email protected] http://www.linux.cz/mailman/listinfo/texlive
