resolvconf: rewrite and fix this stupid package #28

Merged
merged 2 commits into from Aug 24, 2012
@@ -1,8 +1,27 @@
(
+ # move the package to /usr
+ sedit "s@\(PATH=.*\)@\1:/usr/bin@" bin/resolvconf &&
+ sedit "s@\(PATH=/sbin:/bin\)@\1:/usr/bin@" etc/resolvconf/update.d/libc &&
+ sedit "s@\(/lib/resolvconf/list-records\)@/usr\1@" etc/resolvconf/update.d/* &&
+
prepare_install &&
- install -m755 bin/resolvconf bin/list-records /bin/ &&
+
+ install -Dm0755 bin/resolvconf /usr/bin/ &&
+ install -Dm0755 bin/list-records /usr/lib/resolvconf/list-records &&
+
cp -rv etc/resolvconf /etc/ &&
+ ln -sf /var/run/resolvconf/ /etc/resolvconf/run &&
+
+ # backup original resolv.conf
+ if [ ! -e /etc/resolv.conf ] || [ ! -L /etc/resolv.conf ]; then
+ if [ -e /etc/resolv.conf ]; then
+ mv /etc/resolv.conf /etc/resolvconf/resolv.conf.d/original
+ fi &&
+ # /etc/resolv.conf is protected and will not be listed in install
+ ln -s /etc/resolvconf/run/resolv.conf /etc/resolv.conf
+ fi &&
+
install -m644 man/resolvconf.8 /usr/share/man/man8/ &&
install -m644 man/interface-order.5 /usr/share/man/man5/
@@ -0,0 +1,8 @@
+resolvconf --create-runtime-directories &&
+resolvconf -u &&
+resolvconf --enable-updates &&
+
+# provide the old resolvconf entries until the file is regenerated
+if [ -e /etc/resolvconf/resolv.conf.d/original ]; then
+ cat /etc/resolvconf/resolv.conf.d/original >> /etc/resolv.conf
+fi
@@ -0,0 +1,10 @@
+resolvconf --wipe-runtime-directories &&
+rmdir "`readlink /etc/resolvconf/run`" &&
+
+if [ -L /etc/resolv.conf ] && [ "`readlink /etc/resolv.conf`" = "/etc/resolvconf/run/resolv.conf" ]; then
+ rm /etc/resolv.conf
+fi &&
+
+if [ -e /etc/resolvconf/resolv.conf.d/original ]; then
+ cp /etc/resolvconf/resolv.conf.d/original /etc/resolv.conf
+fi
@@ -0,0 +1,3 @@
+d /var/run/resolvconf 0755 root root
+d /var/run/resolvconf/interface 0755 root root
+f /var/run/resolvconf/enable-updates 0644 root root