summaryrefslogtreecommitdiff
path: root/debian/new/bash.postinst
diff options
context:
space:
mode:
Diffstat (limited to 'debian/new/bash.postinst')
-rw-r--r--debian/new/bash.postinst27
1 files changed, 27 insertions, 0 deletions
diff --git a/debian/new/bash.postinst b/debian/new/bash.postinst
new file mode 100644
index 0000000..834ac87
--- /dev/null
+++ b/debian/new/bash.postinst
@@ -0,0 +1,27 @@
+#! /bin/bash -e
+
+if [ "$1" = configure ] && [ -n "$2" ] && dpkg --compare-versions "$2" lt 2.05b-4; \
+then
+ div=$(dpkg-divert --list /bin/sh)
+ if [ -n "$div" ] && [ -z "${div%%* by bash}" ]; then
+ # paranoia
+ ln -sf dash /bin/sh
+ rm -f /bin/sh.distrib
+
+ dpkg-divert --remove /bin/sh
+ fi
+
+ div=$(dpkg-divert --list /usr/share/man/man1/sh.1.gz)
+ if [ -n "$div" ] && [ -z "${div%%* by bash}" ]; then
+ # paranoia
+ ln -sf dash.1.gz /usr/share/man/man1/sh.1.gz
+ rm -f /usr/share/man/man1/sh.1.gz.distrib
+
+ dpkg-divert --remove /usr/share/man/man1/sh.1.gz
+ fi
+fi
+
+# the symlink is in the package now. So this should never happen ...
+if [ ! -e /bin/sh ]; then
+ ln -s dash /bin/sh
+fi