summaryrefslogtreecommitdiff
path: root/methods/disk.update
diff options
context:
space:
mode:
authorIan Jackson <ian@chiark.chu.cam.ac.uk>1996-04-04 01:58:40 +0100
committerIan Jackson <ian@chiark.chu.cam.ac.uk>1996-04-04 01:58:40 +0100
commit1b80fb16c22db72457d7a456ffbf1f70a8dfc0a5 (patch)
treec0ee53eba4e71f4c246ee9e45fbd90e931bbd1f9 /methods/disk.update
downloaddpkg-1b80fb16c22db72457d7a456ffbf1f70a8dfc0a5.tar.gz
dpkg (1.1.4); priority=MEDIUM
* Allow overwriting of conflicting packages being removed. (Bug#2614.) * a.out control file says Pre-Depends: libc4 | libc. (Bug#2640.) * ELF control file and libc dependencies changed to use finalised scheme. * ELF control file and libc dependencies for i386 only. (Bug#2617.) * Guidelines say use only released libraries and compilers. * Install wishlist as /usr/doc/dpkg/WISHLIST. * Remove spurious entries for Guidelines in info dir file. * dpkg-deb --build checks permissions on control (DEBIAN) directory. * Spaces in control file fields not copied by dpkg-split. (Bug#2633.) * Spaces in split file part control data ignore. (Bug#2633.) * Portability fixes, including patch from Richard Kettlewell. * Fixed minor configure.in bug causing mangled GCC -W options. -- Ian Jackson <ian@chiark.chu.cam.ac.uk> Thu, 4 Apr 1996 01:58:40 +0100
Diffstat (limited to 'methods/disk.update')
-rw-r--r--methods/disk.update71
1 files changed, 71 insertions, 0 deletions
diff --git a/methods/disk.update b/methods/disk.update
new file mode 100644
index 000000000..68a525923
--- /dev/null
+++ b/methods/disk.update
@@ -0,0 +1,71 @@
+#!/bin/sh
+
+set -e
+vardir="$1"
+method=$2
+option=$3
+
+cd "$vardir/methods/disk"
+
+. ./shvar.$option
+
+if [ -z "$p_main_packages" -a -z "$p_ctb_packages" -a \
+ -z "$p_nf_packages" -a -z "$p_lcl_packages " ]
+then
+ echo '
+No Packages files available, cannot update available packages list.
+Hit RETURN to continue. '
+ read response
+ exit 0
+fi
+
+xit=1
+trap '
+ rm -f packages-{main,ctb,nf,lcl}
+ if [ -n "$umount" ]
+ then
+ umount "$umount" >/dev/null 2>&1
+ fi
+ exit $xit
+' 0
+
+if [ -n "$p_blockdev" ]
+then
+ umount="$p_mountpoint"
+ mount -rt "$p_fstype" -o nosuid,nodev "$p_blockdev" "$p_mountpoint"
+fi
+
+if [ -n "$p_nfs" ]
+then
+ umount="$p_mountpoint"
+ mount -rt nfs "$p_nfs" -o nosuid,nodev "$p_mountpoint"
+fi
+
+for f in main ctb nf lcl
+do
+ eval 'this_packages=$p_'$f'_packages'
+ if [ -z "$this_packages" ]; then continue; fi
+ case "$p_mountpoint" in
+ */ ) packagesfile="$p_mountpoint$this_packages" ;;
+ '' ) packagesfile="$this_packages" ;;
+ * ) packagesfile="$p_mountpoint/$this_packages" ;;
+ esac
+ case "$packagesfile" in
+ *.gz | *.Z | *.GZ | *.z)
+ echo -n "Uncompressing $packagesfile ... "
+ zcat <"$packagesfile" >packages-$f
+ echo done.
+ dpkg --merge-avail packages-$f
+ ;;
+ '')
+ ;;
+ *)
+ dpkg --merge-avail "$packagesfile"
+ ;;
+ esac
+done
+
+echo -n 'Update OK. Hit RETURN. '
+read response
+
+xit=0