[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#92594: configuration files should be moved to /etc



frank@kuesterei.ch (Frank Küster) schrieb:

> Frank Küster <frank@debian.org> wrote:
>
>> This is my new version of setup-conffiles; it's not yet tested (and I
>> won't be able to do much testing before I leave for vacation). I will
>> check it in as soon as the upload of tetex-base as it is now is done.
>
> Below is the complete patch. 

Here's an updated one, I'm going to check it in.

Index: debian//changelog
===================================================================
RCS file: /cvs/tetex/tetex-base/debian/changelog,v
retrieving revision 1.115
diff -u -r1.115 changelog
--- debian//changelog	17 Aug 2004 08:57:12 -0000	1.115
+++ debian//changelog	19 Aug 2004 09:20:56 -0000
@@ -1,15 +1,22 @@
 tetex-base (2.0.2a-3.1) unstable; urgency=high
 
+  * Fixes RC bugs that are also in sarge, hence the urgency
   * Test for the correct fmtutils.cnf file in the postinst scripts of
     tetex-base and tetex-extra (closes: #265611) [frank]
+  * Move configuration files from /usr/share/texmf to /etc/texmf, and
+    create appropriate symlinks (closes: #92594) [frank]
   * Fix tetex-extra's reportbug script and install a reportbug control
     file, so that tetex-bin and tetex-extra are always reported together
     with tetex-base, thanks to Hilmar (closes: #264388) [frank]
-    * Translations: 
+  * Some fixes needed because of the introduction of VARTEXMF in 2.0.2a-2
+    [frank]
+  * Translations: 
     - updated french debconf translation, thanks to Clément Stenac
       <zorglub@via.ecp.fr> (closes: #265832) [frank].
+    - updated danish debconf translation, thanks to Claus Hindsgaul
+      <claus_h@image.dk> (closes: #266716) [frank]
 
- -- Frank Küster <frank@debian.org>  Tue, 17 Aug 2004 10:15:20 +0200
+ -- Frank Küster <frank@debian.org>  Thu, 19 Aug 2004 11:17:34 +0200
 
 tetex-base (2.0.2a-3) unstable; urgency=low
 
Index: debian//dirs
===================================================================
RCS file: /cvs/tetex/tetex-base/debian/dirs,v
retrieving revision 1.6
diff -u -r1.6 dirs
--- debian//dirs	28 Feb 2003 05:08:58 -0000	1.6
+++ debian//dirs	19 Aug 2004 09:20:56 -0000
@@ -4,5 +4,3 @@
 etc/texmf/updmap.d
 var/lib/texmf/web2c
 var/cache/fonts
-etc/texmf/etex
-etc/texmf/platex
Index: debian//postinst
===================================================================
RCS file: /cvs/tetex/tetex-base/debian/postinst,v
retrieving revision 1.33
diff -u -r1.33 postinst
--- debian//postinst	19 Aug 2004 07:11:20 -0000	1.33
+++ debian//postinst	19 Aug 2004 09:20:56 -0000
@@ -1,4 +1,7 @@
-#!/bin/sh
+#!/bin/bash
+# postinst script for tetex-base
+# bash is needed because we check for symlinks using [ -L .. ]
+# (setq skeleton-pair t)
 
 set -e
 
@@ -50,6 +53,20 @@
 . /usr/share/debconf/confmodule || exit
 db_version 2.0
 
+# it is now safe to remove obsolete dirs
+NOWLINKDIRS="
+tex/latex/config
+etex/plain/config
+tex/platex/config
+tex/context/config
+tex/cyrplain/config
+"
+for dir in $NOWLINKDIRS; do
+  if [ -e /usr/share/texmf/$dir.moved-by-preinst -a -L /usr/share/texmf/$dir ]; then
+    test -e `readlink /usr/share/texmf/$dir` && rm -r /usr/share/texmf/$dir.moved-by-preinst
+  fi
+done
+
 if [ x"$1" = xconfigure ]
 then
 # handling of ucf-managed configuration files
@@ -93,22 +110,23 @@
 #	/usr/bin/updmap --cnffile ${EUMAPC} --outputdir /etc/texmf/dvips 2> ${MAPTEMP}
 #    echo "Output of updmap is in ${MAPTEMP}"
 #    else
-	for m in ${generated}
-	do
-	  if [ ! -e ${VARDVIPS}/${m} ]; then
-	    cp ${mapdir}/${m} ${VARDVIPS}
-	  fi
-	done
-	if [ ! -L ${VARDVIPS}/psfonts.map ]; then
-	    (cd ${VARDVIPS}; ln -s psfonts_t1.map psfonts.map)
-	fi
-	if [ ! -L ${VARDVIPS}/pdftex.map ]; then
-	    (cd ${VARDVIPS}; ln -s pdftex_ndl14.map pdftex.map)
-	fi
-	if [ ! -L ${VARDVIPS}/dvipdfm.map ]; then
-	    (cd ${VARDVIPS}; ln -s dvipdfm_ndl14.map dvipdfm.map)
-	fi
-	if [ -x /usr/bin/mktexlsr ]; then /usr/bin/mktexlsr; fi
+    if [ ! -d ${VARDVIPS} ]; then mkdir -p ${VARDVIPS}; fi
+    for m in ${generated}
+     do
+     if [ ! -e ${VARDVIPS}/${m} ]; then
+       cp ${mapdir}/${m} ${VARDVIPS}
+     fi
+    done
+    if [ ! -L ${VARDVIPS}/psfonts.map ]; then
+      (cd ${VARDVIPS}; ln -s psfonts_t1.map psfonts.map)
+    fi
+    if [ ! -L ${VARDVIPS}/pdftex.map ]; then
+      (cd ${VARDVIPS}; ln -s pdftex_ndl14.map pdftex.map)
+    fi
+    if [ ! -L ${VARDVIPS}/dvipdfm.map ]; then
+      (cd ${VARDVIPS}; ln -s dvipdfm_ndl14.map dvipdfm.map)
+    fi
+    if [ -x /usr/bin/mktexlsr ]; then /usr/bin/mktexlsr; fi
 #    fi
 fi
 
Index: debian//postrm
===================================================================
RCS file: /cvs/tetex/tetex-base/debian/postrm,v
retrieving revision 1.6
diff -u -r1.6 postrm
--- debian//postrm	24 Mar 2004 09:39:38 -0000	1.6
+++ debian//postrm	19 Aug 2004 09:20:56 -0000
@@ -1,7 +1,18 @@
-#!/bin/sh
+#!/bin/bash
+# postrm script for tetex-base
+# bash is needed because we check for symlinks using [ -L .. ]
+# (setq skeleton-pair t)
+
 set -e
 
 BASE_UCF_FILES="/etc/texmf/mktex.cnf /etc/texmf/dvips/config.builtin35 /etc/texmf/updmap.d/00updmap.cfg"
+NOWLINKDIRS="
+tex/latex/config
+etex/plain/config
+tex/platex/config
+tex/context/config
+tex/cyrplain/config
+"
 
 ucf_purge(){
   if [ -x /usr/bin/ucf ]; then # we can't rely on ucf being still installed in postrm
@@ -21,6 +32,16 @@
   rm -fr /var/spool/texmf /var/lib/texmf /var/cache/fonts /etc/texdoctk || true
   rm -f /etc/texmf/updmap.cfg* /etc/texmf/language.dat*
   ucf_purge
+fi
+
+if [ "$1" = "abort-install" -o "$1" = "abort-upgrade" ]; then
+# we put the directories back that we moved out of the way.
+  for dir in $NOWLINKDIRS; do
+    if [ -d /usr/share/texmf/$dir.moved-by-preinst -a -L /usr/share/texmf/$dir ]; then
+      rm /usr/share/texmf/$dir
+      mv /usr/share/texmf/$dir.moved-by-preinst /usr/share/texmf/$dir
+    fi
+  done
 fi
 
 #DEBHELPER#
Index: debian//preinst
===================================================================
RCS file: /cvs/tetex/tetex-base/debian/preinst,v
retrieving revision 1.6
diff -u -r1.6 preinst
--- debian//preinst	30 May 2003 04:54:57 -0000	1.6
+++ debian//preinst	19 Aug 2004 09:20:56 -0000
@@ -1,5 +1,7 @@
-#!/bin/sh
+#!/bin/bash
 # preinst script for tetex-base
+# bash is needed because we check for symlinks using [ -L .. ]
+# (setq skeleton-pair t)
 #
 # see: dh_installdeb(1)
 
@@ -13,10 +15,13 @@
 
 CNFS="psfonts.map pdftex.map dvipdfm.map"
 ETCD=/etc/texmf/dvips
-#ETM=/etc/texmf
-#VARW=/var/lib/texmf/web2c
-#ELDAT=/etc/texmf/language.dat
-#VLDAT=/var/lib/texmf/language.dat
+NOWLINKDIRS="
+tex/latex/config
+etex/plain/config
+tex/platex/config
+tex/context/config
+tex/cyrplain/config
+"
 
 # Use debconf.
 . /usr/share/debconf/confmodule || exit
@@ -32,7 +37,14 @@
 	fi
       done
       fi
-
+# change directories to symlinks in a safe way, thanks to Branden Robinson:
+# dpkg won't change a directory to a symlink; therefore we first move it out of the way      
+      for dir in $NOWLINKDIRS; do
+	if [ -e /usr/share/texmf/$dir -a ! -L /usr/share/texmf/$dir ]; then
+	  echo "Removing obsolete directory /usr/share/texmf/$dir"
+	  mv /usr/share/texmf/$dir /usr/share/texmf/$dir.moved-by-preinst
+	fi
+      done
     ;;
 
     abort-upgrade)
Index: debian//setup-conffiles
===================================================================
RCS file: /cvs/tetex/tetex-base/debian/setup-conffiles,v
retrieving revision 1.6
diff -u -r1.6 setup-conffiles
--- debian//setup-conffiles	25 Feb 2003 06:48:41 -0000	1.6
+++ debian//setup-conffiles	19 Aug 2004 09:20:56 -0000
@@ -1,23 +1,65 @@
 #!/bin/sh
+set -e
 
 DEB=debian/tetex-base
 DEX=debian/tetex-extra
 
 ETEX=/etc/texmf/etex
-ESOUR=texmf/etex/plain/config
-LAMBDA=/etc/texmf/lambda
-LAMSOUR=texmf/omega/lambda/base
-POLLTX=/etc/texmf/platex
-POLSOUR=texmf/tex/platex/config
+ETCTEXMF=/etc/texmf
 
 if [ X"$1" = X-base ]; then
-mv ${DEB}/usr/share/${ESOUR}/language.def ${DEB}${ETEX}
-(cd ${DEB}/usr/share/${ESOUR}; ln -s ${ETEX}/language.def .)
-mv ${DEB}/usr/share/${POLSOUR}/language.dat ${DEB}${POLLTX}
-(cd ${DEB}/usr/share/${POLSOUR}; ln -s ${POLLTX}/language.dat .)
+  package=base
 elif [ X"$1" = X-extra ]; then
-mv ${DEX}/usr/share/${LAMSOUR}/language.dat ${DEX}${LAMBDA}
-(cd ${DEX}/usr/share/${LAMSOUR}; ln -s ${LAMBDA}/language.dat .)
+  package=extra
+fi
+DEBETC=debian/tetex-$package/etc/texmf
+TEXMFDIR=debian/tetex-$package/usr/share/texmf
+
+LATEX_CONFFILES='
+listings/listings.cfg
+jurabib/jblong.cfg	
+jurabib/jurabib.cfg	
+endfloat/efxmpl.cfg	
+adrconv/adrplaner.cfg
+adrconv/adrdir.cfg	
+adrconv/adrsmall.cfg	
+hyperref/htex4ht.cfg 
+'
+
+move_and_link_file(){
+  sourcedir=$1 
+  sourcefile=$2 # file
+  dest=$3       # dir
+  if [ ! -d ${DEBETC}/$dest ]; then mkdir -p ${DEBETC}/$dest; fi
+  mv ${TEXMFDIR}/$sourcedir/$sourcefile ${DEBETC}/$dest
+  ln -s ${ETCTEXMF}/$dest/$sourcefile ${TEXMFDIR}/$sourcedir
+}
+move_and_link_dir(){
+  sourcedir=$1 
+  dest=$2   # must be dir with existing parents, "" if directly in /etc/texmf
+  mv ${TEXMFDIR}/$sourcedir ${DEBETC}/$dest
+  ln -s ${ETCTEXMF}/$dest ${TEXMFDIR}/$sourcedir
+}
+
+if [ X"$1" = X-base ]; then
+  move_and_link_dir tex/latex/config latex
+  move_and_link_dir etex/plain/config etex
+  move_and_link_dir tex/platex/config platex
+  move_and_link_dir tex/context/config context
+  move_and_link_dir tex/cyrplain/config cyrplain
+  
+  move_and_link_file tex/generic/config fontmath.cfg latex
+  move_and_link_file tex/generic/config fonttext.cfg latex
+  move_and_link_file tex/generic/config preload.cfg latex
+  move_and_link_file tex/cslatex fonttext.cfg cslatex
+  move_and_link_file tex/cslatex hyphen.cfg cslatex
+  move_and_link_file context/config texexec.ini context
+
+elif [ X"$1" = X-extra ]; then
+  move_and_link_file omega/lambda/base language.dat lambda
+  for file in ${LATEX_CONFFILES}; do
+    mv ${TEXMFDIR}/tex/latex/$file ${DEBETC}/latex
+  done
 else
-echo "Bad Usage!"
+  echo "Bad Usage!"
 fi
Index: debian//tetex-extra.dirs
===================================================================
RCS file: /cvs/tetex/tetex-base/debian/tetex-extra.dirs,v
retrieving revision 1.4
diff -u -r1.4 tetex-extra.dirs
--- debian//tetex-extra.dirs	24 Mar 2004 09:39:38 -0000	1.4
+++ debian//tetex-extra.dirs	19 Aug 2004 09:20:56 -0000
@@ -1,4 +1,5 @@
 etc/texmf/lambda
+etc/texmf/latex
 etc/texmf/dvips
 usr/share/texmf/dvips/tetex
 usr/share/tetex-extra
Index: debian//po/da.po
===================================================================
RCS file: /cvs/tetex/tetex-base/debian/po/da.po,v
retrieving revision 1.4
diff -u -r1.4 da.po
--- debian//po/da.po	13 Aug 2004 00:00:03 -0000	1.4
+++ debian//po/da.po	19 Aug 2004 09:20:56 -0000
@@ -5,97 +5,104 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: da\n"
-"POT-Creation-Date: 2004-08-02 19:24+0200\n"
-"PO-Revision-Date: 2004-08-06 10:57+0200\n"
+"POT-Creation-Date: 2004-05-08 16:31+0200\n"
+"PO-Revision-Date: 2004-08-18 21:41+0200\n"
 "Last-Translator: Claus Hindsgaul <claus_h@image.dk>\n"
 "Language-Team: Danish <dansk@klid.dk>\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: KBabel 1.3.1\n"
 "Plural-Forms:  nplurals=2; plural=(n != 1);\n"
 
 #. Description
-#: ../templates:3
+#: ../templates:4
+msgid "Remove old conffiles?"
+msgstr "Fjern gamle opsætningsfiler?"
+
+#. Description
+#: ../templates:4
+msgid ""
+"Old conffiles from a previous version of tetex-base were found. Most of "
+"these were map files for dvips and now removed from the upstream source."
+msgstr ""
+"Der blev fundet gamle opsætningsfiler fra en tidligere version af tetex-"
+"base. De fleste af disse var map-filer til dvips, som nu er fjernet fra "
+"originalprogrammet."
+
+#. Description
+#: ../templates:4
+#, no-c-format
+msgid ""
+"If you think you have modified such files, then you may refuse this option "
+"and preserve them.  You can find the list of such conffiles in /var/lib/dpkg/"
+"info/tetex-base.config but, for almost 99% of you, it is strongly "
+"recommended to remove these files right now!"
+msgstr ""
+"Hvis du tror, du har ændret sådanne filer, kan du bevare dem ved at afvise "
+"denne valgmulighed. Du finder listen over sådanne opsætningsfiler i filen/"
+"var/lib/dpkg/info/tetex-base.config, men det anbefales kraftigt alle andre "
+"at fjerne disse filer nu!"
+
+#. Description
+#: ../templates:15
 msgid "Remove old updmap?"
 msgstr "Fjern gammel updmap?"
 
 #. Description
-#: ../templates:3
+#: ../templates:15
 msgid ""
 "tetex-base has found /etc/texmf/dvips/updmap from a previous version of "
-"tetex-base. You seem to have modified this script."
+"tetex-base. You seem to have modified this file."
 msgstr ""
 "tetex-base har fundet /etc/texmf/dvips/updmap fra en tidligere version af "
-"tetex-base. Det lader til at du har ændret i dette skript."
+"tetex-base. Det lader til at du har ændret i denne fil."
 
 #. Description
-#: ../templates:3
+#: ../templates:15
 msgid ""
 "This script is no longer included in current tetex-base and should not be "
 "used. It will be renamed to updmap.postinst-old."
 msgstr ""
-"Dette skript findes ikke i den nuværende tetex-base og bør ikke blive brugt. "
-"Det vil blive omdøbt til updmap.postinst-old."
+"Dette skript findes ikke i den nuværende tetex-base og bør ikke blive brugt. "
+"Det vil blive omdøbt til updmap.postinst-old."
 
 #. Description
-#: ../templates:3
+#: ../templates:15
 msgid ""
 "Changes like the ones you made to this script should now be made to files "
 "in /etc/texmf/updmap.d/, see the manpage for update-updmap."
 msgstr ""
-"Ændringer som dem, du har lavet i dette skript, bør nu gennemføres i filerne "
+"Ændringer som dem, du har lavet i dette skript, bør nu gennemføres i filerne "
 "i /etc/texmf/updmap.d/, se manualsiden for update-updmap."
 
 #. Description
-#: ../templates:16
+#: ../templates:28
 msgid "Remove old dat files for texdoctk?"
 msgstr "Fjern gamle dat-filer til texdoctk?"
 
 #. Description
-#: ../templates:16
+#: ../templates:28
 msgid ""
 "Old dat files for texdoctk from a previous version of tetex-base were "
-"found.  The files are texdoc-100.dat, texdoc-102.dat, and texdoc-103.dat, "
-"and they were used only in a teTeX beta version."
+"found.  They were texdoc-100.dat, texdoc-102.dat, texdoc-103.dat and they "
+"were for texdoctk only in teTeX beta version."
 msgstr ""
 "Der blev fundet gamle dat-filer til texdoctk fra en tidligere version af "
-"tetex-base. Filerne hedder texdoc-100.dat, texdoc-102.dat og texdoc-103.dat, "
-"og blev kun brugt i en betaversion af teTeX."
+"tetex-base. Filerne hedder texdoc-100.dat, texdoc-102.dat og "
+"texdoc-103.dat, og blev kun brugt i en betaversion af teTeX."
 
 #. Description
-#: ../templates:16
+#: ../templates:28
 #, no-c-format
 msgid ""
-"If you think you have modified any of them, then you may refuse this option "
-"and preserve them. But, for almost 99% of you, it is strongly recommended to "
+"If you think you have modified such them, then you may refuse this option "
+"and preserve them but, for almost 99% of you, it is strongly recommended to "
 "remove these files right now!"
 msgstr ""
-"Hvis du tror, du har ændret nogen af dem, kan du bevare dem ved at afvise "
-"denne valgmulighed. Men i 99% af tilfældene anbefales det kraftigt at fjerne "
-"disse filer lige nu!"
-
-#~ msgid "Remove old conffiles?"
-#~ msgstr "Fjern gamle opsætningsfiler?"
-
-#~ msgid ""
-#~ "Old conffiles from a previous version of tetex-base were found. Most of "
-#~ "these were map files for dvips and now removed from the upstream source."
-#~ msgstr ""
-#~ "Der blev fundet gamle opsætningsfiler fra en tidligere version af tetex-"
-#~ "base. De fleste af disse var map-filer til dvips, som nu er fjernet fra "
-#~ "originalprogrammet."
-
-#~ msgid ""
-#~ "If you think you have modified such files, then you may refuse this "
-#~ "option and preserve them.  You can find the list of such conffiles in /"
-#~ "var/lib/dpkg/info/tetex-base.config but, for almost 99% of you, it is "
-#~ "strongly recommended to remove these files right now!"
-#~ msgstr ""
-#~ "Hvis du tror, du har ændret sådanne filer, kan du bevare dem ved at "
-#~ "afvise denne valgmulighed. Du finder listen over sådanne opsætningsfiler "
-#~ "i filen/var/lib/dpkg/info/tetex-base.config, men det anbefales kraftigt "
-#~ "alle andre at fjerne disse filer nu!"
+"Hvis du tror, du har ændret nogen af dem, kan du bevare dem ved at afvise "
+"denne valgmulighed. Men i 99% af tilfældene anbefales det kraftigt at "
+"fjerne disse filer med det samme!"
 
 #~ msgid ""
 #~ "Old /etc/texmf/dvips/updmap from a previous version of tetex-base were "
@@ -103,15 +110,15 @@
 #~ "essentially from the previous version."
 #~ msgstr ""
 #~ "Der blev fundet en gammel /etc/texmf/dvips/updmap fra en tidligere "
-#~ "version af tetex-base. Dette skript er omskrevet helt og dets opførsel "
-#~ "ændret afgørende fra den tidligere version."
+#~ "version af tetex-base. Dette skript er omskrevet helt og dets opførsel "
+#~ "ændret afgørende fra den tidligere version."
 
 #~ msgid ""
 #~ "If you think you have modified this file, then you may refuse this option "
 #~ "and preserve it but, for almost 99% of you, it is strongly recommended to "
 #~ "remove this file right now!"
 #~ msgstr ""
-#~ "Hvis du tror, du har ændret denne fil, kan du bevare den ved at afvise "
+#~ "Hvis du tror, du har ændret denne fil, kan du bevare den ved at afvise "
 #~ "denne valgmulighed, men det anbefales kraftigt alle andre at fjerne denne "
 #~ "fil nu!"
 

-- 
Frank Küster, Biozentrum der Univ. Basel
Abt. Biophysikalische Chemie

Reply to: