summaryrefslogtreecommitdiff
path: root/debian
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2012-01-09 20:32:00 +0000
committerIan Jackson <ijackson@chiark.greenend.org.uk>2012-01-09 20:32:00 +0000
commit4ff07717b0e4435f1f15fd5fcb762301be8822d0 (patch)
tree48d8bdc5bff0631ae7cc7d19a5c043793b3f001f /debian
parentbe2a62a61efbfa8beab7807b4de28c250d1054f6 (diff)
wip maint scripts
Diffstat (limited to 'debian')
-rw-r--r--debian/xfonts-traditional.config32
-rw-r--r--debian/xfonts-traditional.postinst35
-rw-r--r--debian/xfonts-traditional.postrm10
-rw-r--r--debian/xfonts-traditional.prerm10
-rw-r--r--debian/xfonts-traditional.templates7
5 files changed, 59 insertions, 35 deletions
diff --git a/debian/xfonts-traditional.config b/debian/xfonts-traditional.config
index 86c93bf..fe81215 100644
--- a/debian/xfonts-traditional.config
+++ b/debian/xfonts-traditional.config
@@ -1,32 +1,6 @@
#!/bin/sh
set -e
-
. /usr/share/debconf/confmodule
-
-check_aliasfile () {
- aliasfile=/etc/X11/fonts/misc/xfonts-base.alias
- if ! test -f $aliasfile; then return; fi
- if test -e $aliasfile.not-trad; then return; fi
-
- perl -pe '
- s/^(fixed\s+)\-misc\-(fixed-medium-r-semicondensed)/$1-trad-$2$/
- ' <$aliasfile >$aliasfile.trad
- if cmp -s $aliasfile $aliasfile.trad; then
- rm $aliasfile.trad
- return
- fi
- db_get xfonts-traditional/remap-fixed
- if [ $RET != true ]; then return; fi
-
- ln $aliasfile $aliasfile.not-trad
- mv -f $aliasfile.trad $aliasfile
-}
-
-db_get xfonts-traditional/generate
-if [ "$RET" = true ]; then
-
- update-xfonts-traditional --update
-
- check_aliasfile
-
-fi
+db_input low xfonts-traditional/generate || true
+db_input high xfonts-traditional/remap-fixed || true
+db_go || true
diff --git a/debian/xfonts-traditional.postinst b/debian/xfonts-traditional.postinst
index fe81215..6e05d67 100644
--- a/debian/xfonts-traditional.postinst
+++ b/debian/xfonts-traditional.postinst
@@ -1,6 +1,35 @@
#!/bin/sh
set -e
+
. /usr/share/debconf/confmodule
-db_input low xfonts-traditional/generate || true
-db_input high xfonts-traditional/remap-fixed || true
-db_go || true
+
+check_aliasfile () {
+ aliasfile=/etc/X11/fonts/misc/xfonts-base.alias
+ if ! test -f $aliasfile; then return; fi
+ if test -e $aliasfile.not-trad; then return; fi
+
+ perl -pe '
+ s/^(fixed\s+)\-misc\-(fixed-medium-r-semicondensed)/$1-trad-$2$/
+ ' <$aliasfile >$aliasfile.trad
+ if cmp -s $aliasfile $aliasfile.trad; then
+ rm $aliasfile.trad
+ return
+ fi
+ db_get xfonts-traditional/remap-fixed
+ if [ $RET != true ]; then return; fi
+
+ ln $aliasfile $aliasfile.not-trad
+ mv -f $aliasfile.trad $aliasfile
+
+ db_put xfonts-traditional/remap-fixed false
+ # only ever do this once
+}
+
+db_get xfonts-traditional/generate
+if [ "$RET" = true ]; then
+
+ update-xfonts-traditional --update
+
+ check_aliasfile
+
+fi
diff --git a/debian/xfonts-traditional.postrm b/debian/xfonts-traditional.postrm
new file mode 100644
index 0000000..e6d6bed
--- /dev/null
+++ b/debian/xfonts-traditional.postrm
@@ -0,0 +1,10 @@
+#!/bin/sh
+set -e
+. /usr/share/debconf/confmodule
+case "$1" in
+purge)
+ db_purge || true
+ aliasfile=/etc/X11/fonts/misc/xfonts-base.alias
+ rm -f $aliasfile.trad
+ ;;
+esac
diff --git a/debian/xfonts-traditional.prerm b/debian/xfonts-traditional.prerm
index 4dc7f2c..a2786a6 100644
--- a/debian/xfonts-traditional.prerm
+++ b/debian/xfonts-traditional.prerm
@@ -11,12 +11,20 @@ remove)
if grep '^fixed[ ][ ]*-trad-'; then
cat >&2 <<END
+Removing xfonts-traditional would probably your X server by removing "fixed".
+
You should not remove xfonts-traditional while "fixed" refers to one
of its fonts. You probably want to check the differences between
/etc/X11/fonts/misc/xfonts-base.alias and xfonts-base.alias.not-trad,
and probably replace the former with the latter, and retry the removal.
+
END
- exit 1
+ printf 'Continue anyway ? [n/y] '
+ read x
+ case "$x" in
+ y*|Y*) ;;
+ *) exit 1 ;;
+ esac
fi
;;
diff --git a/debian/xfonts-traditional.templates b/debian/xfonts-traditional.templates
index 9ba84de..046f926 100644
--- a/debian/xfonts-traditional.templates
+++ b/debian/xfonts-traditional.templates
@@ -19,8 +19,11 @@ Description: Configure system to use traditional "fixed"?
If you say "yes", I will edit /etc/X11/fonts/misc/xfonts-base.alias
for you, and save your old file as xfonts-base.alias.not-trad. (Note
that this is a conffile so you may get prompts from dpkg about it in
- the future.) If you say no I will generate xfonts-base-alias.trad
- for you to do what you like with.
+ the future.) This will also make the xfonts-traditional package
+ harder to safely remove.
+ .
+ If you say no I will generate xfonts-base-alias.trad for you to do
+ what you like with.
.
To revert this change, simply change the alias fixed back from
"-trad-..." to "-misc-...", or rename the old file back into place,