diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2012-01-09 20:32:00 +0000 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2012-01-09 20:32:00 +0000 |
commit | 4ff07717b0e4435f1f15fd5fcb762301be8822d0 (patch) | |
tree | 48d8bdc5bff0631ae7cc7d19a5c043793b3f001f /debian | |
parent | be2a62a61efbfa8beab7807b4de28c250d1054f6 (diff) |
wip maint scripts
Diffstat (limited to 'debian')
-rw-r--r-- | debian/xfonts-traditional.config | 32 | ||||
-rw-r--r-- | debian/xfonts-traditional.postinst | 35 | ||||
-rw-r--r-- | debian/xfonts-traditional.postrm | 10 | ||||
-rw-r--r-- | debian/xfonts-traditional.prerm | 10 | ||||
-rw-r--r-- | debian/xfonts-traditional.templates | 7 |
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, |