[Debian-tex-commits] SVN tex-common commit + diffs: r5203 - in tex-common/branches/v3: debian scripts

Norbert Preining preining at alioth.debian.org
Sat Mar 10 03:24:17 UTC 2012


Author: preining
Date: 2012-03-10 03:24:17 +0000 (Sat, 10 Mar 2012)
New Revision: 5203

Removed:
   tex-common/branches/v3/scripts/debianize-updmap
Modified:
   tex-common/branches/v3/debian/rules
Log:
remove also debianize-updmap


Modified: tex-common/branches/v3/debian/rules
===================================================================
--- tex-common/branches/v3/debian/rules	2012-03-10 03:22:31 UTC (rev 5202)
+++ tex-common/branches/v3/debian/rules	2012-03-10 03:24:17 UTC (rev 5203)
@@ -7,7 +7,7 @@
 
 bin_scripts=dh_installtex
 sbin_scripts=update-fmtlang update-texmf-config update-updmap update-texmf
-nonbin_scripts=debianize-updmap
+nonbin_scripts=
 
 sbin_installfiles=$(foreach script,$(sbin_scripts), scripts/$(script))
 sbin_manpages=$(foreach script,$(sbin_scripts), scripts/$(script).8) 

Deleted: tex-common/branches/v3/scripts/debianize-updmap
===================================================================
--- tex-common/branches/v3/scripts/debianize-updmap	2012-03-10 03:22:31 UTC (rev 5202)
+++ tex-common/branches/v3/scripts/debianize-updmap	2012-03-10 03:24:17 UTC (rev 5203)
@@ -1,582 +0,0 @@
-# This file, debianize-updmap, is meant to be sourced by updmap and
-# enhance the --enable and --disable options with the functionality
-# needed to deal with Debian's generated updmap.cfg.
-# $Id$
-
-# This is the planned scheme how it works
-# 
-# A for disableMap:
-#   1. create a list of files to act on (either in sysconfdir only, or in user dirs too)
-#   2. grep for not-commented lines in these files that contain $map
-#   CHANGE 3. for each of these files, run configReplace appropriately
-#   3. if in syswide-mode, for each of these files, run configReplace appropriately;
-#      if not in syswide mode, for each of these files,
-#             test whether it is in the syswide dir
-#   3.a if not, run configReplace appropriately
-#   3b. if yes, create copy in user dir and run configReplace appropriately
-#
-# B for enableMap:
-#   1. create a list of files to act on (either in sysconfdir only, or in user dirs too)
-#   2. grep for commented lines in these files that contain $map
-#   2.1. if any are found, check whether it is only one
-#   2.1.1 if there is only one, run configReplace on that file appropriately
-#   2.1.2 if there is more than one, the precedence is 
-#         20tetex-extra.cfg > XX*local*.cfg > 10tetex-base.cfg > any
-#	  (extra has maximum priority because 
-#   2.1.2.1 if it's clear on which file to act, run configReplace on that file
-#           appropriately
-#   2.1.2.2 if unclear (i.e. only "any"), exit with an error
-#   2.2 if none are found, act on 10local.cfg (could be made configurable)
-#       - if 10local.cfg does not exist, create it (with an explanatory comment)
-#       - run configReplace on it appropriately
-#
-# C for syncwithtrees (and even more?)
-# ?
-#
-# After that, update-updmap must be run (in the appropriate mode!), and then updmap
-# must reexecute itself.  Since disableMap is called by enableMap, we need a wrapper
-# for it.  An alternative would be to do this just before the creation of the output
-# files, but I think it's easier this way, and currently updmap only enables one Map
-# file per run.
-
-###############################################################################
-# DebianSyswideMode ()
-#   determine whether we are running in syswide mode (or user-specific)
-###############################################################################
-DebianSyswideMode(){
-  test "$(id -u)" -eq 0 && return 0 || return 1
-}
-
-###############################################################################
-# FindDebianUserdir ()
-#   find the directory containing user-specific updmap snippets
-###############################################################################
-FindDebianUserdir(){
-#  verboseMsg "entering FindDebianUserdir"
-
-  texmfconfig=$(kpsewhich --expand-path '$TEXMFCONFIG')
-  OLDIFS="$IFS"
-  IFS=:
-  count=0
-  for d in "$texmfconfig"; do
-    count=$(($count+1))
-    : ${cnfdir:=$d}
-    if [ -d "$d/updmap.d" ]; then
-      defaultuserdir="$d/updmap.d"
-      break
-    fi
-  done
-  IFS="$OLDIFS"
-  # still empty?  Pick one
-  if [ -z "$defaultuserdir" ]; then
-    if [ $count -eq 1 ]; then
-      defaultuserdir="$cnfdir/updmap.d"
-    else
-      echo "TEXMFCONFIG contains more than one directory, and none of them" >&2
-      echo "already contains a updmap.d/ subdirectory." >&2
-      return
-    fi
-  fi
-
-  /usr/share/texmf/web2c/mktexdir $defaultuserdir
-
-  if [ -d $defaultuserdir ]; then
-    echo $defaultuserdir
-  fi
-}
-
-
-###############################################################################
-# createDebianConffilelist
-#   create a list of configuration files containing updmap snippets;
-#   we are going to act on these
-###############################################################################
-createDebianConffilelist(){
-#  verboseMsg "entering createDebianConffilelist"
-
-  userFiles=""
-  local DebianConffilelist=""
-  syswideFiles=`find /etc/texmf/updmap.d -maxdepth 1 -type f -name '*.cfg'`
-  if ! DebianSyswideMode; then
-    debianuserdir=`FindDebianUserdir`
-    if [ -n "$debianuserdir" ]; then
-      userFiles=`find "$debianuserdir" -maxdepth 1 -type f -name '*.cfg'`
-    fi
-  fi
-  if [ -n "$userFiles" ]; then
-    for sysfile in $syswideFiles; do
-      for userfile in $userFiles; do
-	if [ ! "`basename $userfile`" = "`basename $sysfile`" ]; then
-	  DebianConffilelist="$DebianConffilelist $sysfile"
-	fi
-      done
-    done
-    DebianConffilelist="$DebianConffilelist $userFiles"
-  else
-    DebianConffilelist="$syswideFiles"
-  fi
-  echo $DebianConffilelist
-}
-
-###############################################################################
-# runUpdate
-#   run update-updmap
-###############################################################################
-runUpdate(){
-  updOptions=""
-  if [ -n "$cfgparam" ]; then
-    # --conffile option was given on the command line
-      updOptions="--output-file $orig"
-  fi
-  # here we could check for an alternative user dir, or output file
-  # but as long as FindDebianUserdir only reports the default location, 
-  # it doesn't make sense
-
-  verboseMsg "Running update-updmap to merge the changed files"
-  update-updmap --quiet $updOptions
-}
-###############################################################################
-# cleanupNoExit()
-#   clean up the temp area, but don't exit
-###############################################################################
-cleanupNoExit()
-{
-  rc=$?
-  $needsCleanup && test -n "$tmpdir" && test -d "$tmpdir" \
-    && { cd / && rm -rf "$tmpdir"; }
-}
-
-###############################################################################
-# reExecSelf
-#   execute ourselves again - the confile has changed after an enable or disable
-#   command has been processed
-###############################################################################
-reExecSelf(){
-  # remove the temporary directory
-  cleanupNoExit
-  
-  # if we need not remake map files, we are done here
-  if [ "$mkmapEnabled" = "false" ]; then exit 0; fi
-
-  # pass ourselves the right options.  
-  repeatOptions=""
-  for option in dvipsoutputdir pdftexoutputdir dvipdfmoutputdir; do
-    # strange that I can't do the same with eval test -n
-    if eval [ ! -z  "\$$option" ]; then
-      repeatOptions="$repeatOptions `eval echo --$option \\$$option`"
-    fi
-  done
-  if [ -n "$cfgparam" ]; then
-    # --conffile option was given on the command line
-    repeatOptions="$repeatOptions --cnffile=$orig"
-  fi
-  if [ "texhashEnabled" = "false" ]; then
-    repeatOptions="$repeatOptions --nohash"
-  fi
-  if [ "$verbose" = "false" ]; then
-    repeatOptions="$repeatOptions --quiet"
-  fi
-  
-  verboseMsg "Now running $progname again to generate output files"
-  echo $progname $repeatOptions
-  exec $progname $repeatOptions
-}
-
-###############################################################################
-# grepType (map,file)
-#   grep in file for entry map, and return the mapType
-###############################################################################
-grepType()
-{
-  map=$1
-  file="$2"
-
-  if egrep -q "^(MixedMap|Map)[ 	]*$map( |	|$)" "$file" ; then
-    egrep "^(MixedMap|Map)[ 	]*$map( |	|$)" "$file" | awk '{print $1}' | sort | uniq
-  else
-    return 1
-  fi
-}
-
-
-###############################################################################
-# findUserfiles (filelist)
-#   pick user-specific files out of a filelist of configuration files
-###############################################################################
-findUserfiles(){
-  userfiles=""
-  while [ $# -gt 0 ]; do
-    file="$1"
-    if [ "$file" = "${file#/etc/texmf/updmap.d}" ]; then
-      # doesn't start with /etc/texmf/updmap.d: must be user-specific
-      userfiles="$userfiles $file"
-    fi
-    shift;
-  done
-  echo $userfiles
-}
-
-###############################################################################
-# snippetFileIsWritable (debCnfFile)
-#   checks whether we are (supposed to be) able to write to a file
-###############################################################################
-snippetFileIsWritable(){
-  local file=$1
-
-  if DebianSyswideMode; then
-    return 0
-  else
-    # /etc/texmf/updmap.d shouldn't be hardcoded
-    if [ "${file#/etc/texmf}" = "${file}" ]; then
-      # file is not in systemwide dir
-      return 0
-    else
-      return 1
-    fi
-  fi
-}
-
-###############################################################################
-# makeUserCopy (filename)
-#   create a copy in the user dir
-###############################################################################
-makeUserCopy(){
-  local debCnfFile="$1"
-
-  # create a copy of that file in the user dir
-  debianuserdir=`FindDebianUserdir`
-  if [ -z "$debianuserdir" ]; then
-    echo "I don't know how to proceed here, stopping." >&2
-    exit 1
-  fi
-  newdebCnfFile="$debianuserdir/`basename $debCnfFile`"
-  verboseMsg "Not allowed to handle $map in $debCnfFile."
-  verboseMsg "Creating copy in $debianuserdir instead."
-  cp $debCnfFile $newdebCnfFile
-  echo "$newdebCnfFile"
-}
-
-###############################################################################
-# findRightMatchfile (mapname,filelist)
-#   find the right file from filelist to enable mapname 
-###############################################################################
-findRightMatchfile(){
-  mapName=$1; shift
-  matchfiles="$@"
-  local debCnfFile=""
-
-  if [ $# -eq 1 ]; then
-    # it is only one, enable map in it.  May we write it?
-    debCnfFile=$matchfiles
-    if ! snippetFileIsWritable $debCnfFile; then
-      debCnfFile=`makeUserCopy $debCnfFile`
-    fi
-    echo $debCnfFile
-    verboseMsg "Enabling map file in $debCnfFile."
-    return 0
-  else
-    # there are more than one; 
-    if ! DebianSyswideMode; then
-      # can only change files in the user's dir
-      usermatchfiles=`findUserfiles $matchfiles`
-      if [ `(set $usermatchfiles; echo $#)` -eq 1 ]; then
-        # exactly one of them is a user-specific file
-	echo $usermatchfiles
-	verboseMsg "Enabling map file in user-specific file $usermatchfiles."
-	return 0
-      else
-        # two files in the user directory (as bad as two in the site-wide
-        # dir), or no user-specific files.  If there are two user-specific
-	# files, report about them:
-	test -n "$usermatchfiles" && matchfiles="$usermatchfiles" || true
-      fi
-    fi
-    # for now, we exit with an error.  Any sensible choice would have to 
-    # check whether teTeX or texlive is installed, and I want to save me
-    # that hazzle.
-    cat >&2 <<EOF
-Entries for map file $mapName found in several files:
-$matchfiles
-
-Since updmap.cfg is a generated file in Debian, I don't know how to proceed.
-Please refer to the manpage of update-updmap(1)
-
-EOF
-  fi
-}
-
-###############################################################################
-# pickLocalFile (mapname,directory)
-#   pick the right local file in directory
-###############################################################################
-pickLocalFile(){
-  mapName=$1
-  debDirname=$2
-  debDirname=${debDirname%/}
-  # Is there a file with "local" in the name?
-  localfile=""
-  localfile="`ls $debDirname/*local*cfg 2>/dev/null`"
-  if [ -n "$localfile" ]; then
-    # there is at least one
-    if [ `(set $localfile; echo $#)` -eq 1 ]; then
-      # exactly one
-      verboseMsg "Using local configuration file $localfile"
-      echo $localfile
-      return 0
-    else
-      # more than one local file? Brrrr.
-      cat >&2 <<EOF
-While trying to enable $mapName locally, I found several user-specific map files:
-$localfile
-
-I don't know how to proceed here. Please refer to the manpage of update-upmdap(1)
-
-EOF
-    fi
-  else
-    # no user config file yet
-    echo $debDirname/10local.cfg
-    return 0
-  fi
-}
-
-###############################################################################
-# findRightLocalfile (mapname)
-#   find the right file to enable mapname, site-wide or user-specific
-###############################################################################
-findRightLocalfile(){
-  mapName=$1
-  # Do we know about a user-specific directory?
-  if DebianSyswideMode; then
-    DebCnfFile=`pickLocalFile $mapName /etc/texmf/updmap.d`
-  else
-    debianuserdir=`FindDebianUserdir`
-    if [ -z "$debianuserdir" ]; then
-      echo "I don't know how to proceed here, stopping." >&2
-      exit 1
-    fi
-    test -w $debianuserdir || (
-      echo "Target directory $debianuserdir not writable."
-      echo "Exiting"
-      exit 1
-    )
-    DebCnfFile=`pickLocalFile $mapName $debianuserdir`
-  fi
-  # configReplace will try to grep in the file: touch it to prevent a error message
-  touch $DebCnfFile
-  verboseMsg "Using local configuration file $DebCnfFile"
-  echo $DebCnfFile
-}
-
-###############################################################################
-# disableMapInner (map)
-#   disables map in config file (any type) (real command)
-###############################################################################
-disableMapInner()
-{
-#  verboseMsg "entering disableMapInner"
-  map=$1
-  local debCnfFile
-
-  noverbose="$2"
-  oldverbose="$verbose"
-  if [ -n "$noverbose" ]; then
-    # don't confuse users with disable messages when they called --enable
-#     verboseMsg "disabling verbosity"
-    verbose=false
-  fi
-
-  local mapType
-
-  if [ -z "$DebianConffilelist" ]; then
-    DebianConffilelist=`createDebianConffilelist`
-  fi
-
-  # create list of all files that contain an entry
-  for debCnfFile in $DebianConffilelist; do
-    if mapType=`grepType $map "$debCnfFile"`; then
-      if ! snippetFileIsWritable $debCnfFile; then
-	debCnfFile=`makeUserCopy $debCnfFile`
-      fi
-      # although it's a bug, there might be two types enabled - we disable both
-      for type in $mapType; do
-	verboseMsg "Disabling $map in $debCnfFile."
-	configReplace "$debCnfFile" "^$type[[:space:]]*$1" "#! $type $1"
-      done
-    fi
-  done
-  
-  verbose="$oldverbose"
-}
-
-###############################################################################
-# disableMap (map)
-#   disables map in config file (any type) (Debian wrapper)
-###############################################################################
-disableMap()
-{
-  disableMapInner $1
-  runUpdate
-  reExecSelf
-}
-###############################################################################
-# enableMap (type, map)
-#   enables an entry in the config file for map with a given type.
-###############################################################################
-enableMap()
-{
-  mapType=$1
-  mapName=$2
-  local debCnfFile=""
-  case $1 in
-    Map|MixedMap)
-      ;;
-    *)
-      abort "invalid mapType $mapType"
-      ;;
-  esac
-
-  if [ -z "$DebianConffilelist" ]; then
-    DebianConffilelist=`createDebianConffilelist`
-  fi
-
-  # a map can only have one type, so we carefully disable everything
-  # about map here:
-  disableMapInner "$mapName" noverbose
-
-  # now enable with the right type.
-  # But we have to determine where to enable.
-  # is there already a file that contains a (commented) entry?
-  matchfiles=""
-  for file in $DebianConffilelist; do
-    if egrep "^#![[:blank:]]*(MixedMap|Map)[[:blank:]]*$map([[:blank:]]|$)" "$file" >/dev/null ; then
-      matchfiles="$matchfiles $file"
-    fi
-  done
-  if [ -n "$matchfiles" ]; then
-    # there is already (at least) one file that has a commented entry for our map
-    debCnfFile=`findRightMatchfile $mapName $matchfiles`
-    test -w "$debCnfFile" || debCnfFile=""
-  fi
-  if [ -z "$debCnfFile" ]; then
-    # still none, there is no (commented) entry in any writable file yet. 
-    debCnfFile=`findRightLocalfile $mapName`
-    test -n "$debCnfFile" || abort "Cannot proceed. Exiting"
-    verboseMsg "Creating new entry for map file $mapName in $debCnfFile"
-  fi
-
-  configReplace "$debCnfFile" "^#![ 	]*$mapType[ 	]*$mapName" "$mapType $mapName"
-  runUpdate
-  reExecSelf
-}
-
-###############################################################################
-# setOption (option, value)
-#   sets option to value in the config file (replacing the existing setting
-#   or by adding a new line to the config file).
-###############################################################################
-setOption()
-{
-  opt=$1
-  val=$2
-  case "$opt" in
-    LW35)
-      case "$val" in
-        URWkb|URW|ADOBE|ADOBEkb)
-          ;;
-        *)
-          abort "invalid value $val for option $opt"
-          ;;
-      esac
-      ;;
-    dvipsPreferOutline|dvipsDownloadBase35|pdftexDownloadBase14|dvipdfmDownloadBase14)
-      case "$val" in
-        true|false)
-          ;;
-        *)
-          abort "invalid value $val for option $opt"
-      esac
-      ;;
-    *)
-      abort "unsupported option $opt"
-      ;;
-  esac
-
-  DebNullCnfFile=""
-  DebianSyswideMode || debianuserdir=`FindDebianUserdir`
-  if (! DebianSyswideMode) && [ -f "$debianuserdir/00updmap.cfg" ]; then
-    DebNullCnfFile=$debianuserdir/00updmap.cfg
-  else
-    DebNullCnfFile=/etc/texmf/updmap.d/00updmap.cfg
-  fi
-
-  configReplace "$DebNullCnfFile" "^$opt[ 	]" "$opt $val"
-  runUpdate
-  reExecSelf
-}
-
-###############################################################################
-# syncWithTreesInner()
-#   update the config file: uncomment all lines which refer to map files that
-#   are unavailabe in the texmf trees
-###############################################################################
-syncWithTreesInner()
-{
-  for i in `egrep '^(Mixed)?Map' "$cnfFile" | sed 's at .* @@'`; do
-    kpsewhich --format=map "$i" >/dev/null || echo "$i"
-  done > $tmp1
-  {
-    sed 's@/@\\/@g; s@^@/^MixedMap[ 	]*@; s@$@$/s/^/#! /@' <$tmp1
-    sed 's@/@\\/@g; s@^@/^Map[ 	]*@; s@$@$/s/^/#! /@' <$tmp1
-  } > $tmp2
-  sed -f $tmp2 "$cnfFile" > $tmp3 && cat $tmp3 > "$cnfFile"
-}
-
-
-
-###############################################################################
-# syncWithTrees()
-#   Print a big fat warning.
-###############################################################################
-syncWithTrees(){
-  echo "Warning!"
-  echo ""
-  echo "In Debian, updmap.cfg, the font configuration file, is a generated file."
-  echo "Therefore, using --syncwithtrees will not work, since changes will be"
-  echo "overwritten."
-  echo ""
-  echo "If you know what you are doing, you can proceed, e.g. in order to compare"
-  echo "the synchronized file with the old generated one."
-  echo ""
-  echo "If you do want to proceed, type 'Yes, I know what I am doing!'."
-  echo "Otherwise, press Enter to abort."
-
-  read line
-  if [ "$line" = "Yes, I know what I am doing!" ]; then
-    syncWithTreesInner
-  else
-    echo ""
-    echo "Exiting."
-    exit 1
-  fi
-}
-
-###############################################################################
-# debianEditWarnAndShow()
-#   warn that this won't work
-###############################################################################
-debianEditWarnAndShow(){
-  echo "Warning!"
-  echo ""
-  echo "In Debian, updmap.cfg, the font configuration file, is a generated file."
-  echo "The actual configuration files are in /etc/texmf/updmap.d."
-  echo "Please read the update-updmap(1) manpage and edit those files."
-  echo ""
-  echo "Instead of editing, you will now be shown updmap.cfg in a pager."
-  echo ""
-  echo "Press enter to continue."
-  read dummy
-  
-  sensible-pager $cnfFile
-
-}




More information about the Debian-tex-commits mailing list