Update Debian packaging to 1.5.74.1-1
authorRuss Allbery <rra@stanford.edu>
Wed, 26 May 2010 21:45:22 +0000 (14:45 -0700)
committerDerrick Brashear <shadow@dementia.org>
Thu, 27 May 2010 05:13:54 +0000 (22:13 -0700)
Change-Id: I828f21edffce67eaba6cfdd76e66e754a58e52a0
Reviewed-on: http://gerrit.openafs.org/2037
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

src/packaging/Debian/changelog.in
src/packaging/Debian/control
src/packaging/Debian/import-upstream
src/packaging/Debian/openafs-client.init
src/packaging/Debian/openafs-client.postinst
src/packaging/Debian/openafs-fuse.dirs [new file with mode: 0644]
src/packaging/Debian/openafs-fuse.install [new file with mode: 0644]
src/packaging/Debian/openafs-fuse.links [new file with mode: 0644]
src/packaging/Debian/rules

index 09c36f9..7399576 100644 (file)
@@ -12,6 +12,44 @@ openafs (@DEB_PKGVER@-1~openafs) unstable; urgency=low
 
  -- Russ Allbery <rra@debian.org>  Thu, 08 Apr 2010 13:20:50 -0700
 
+openafs (1.5.74.1-1) experimental; urgency=low
+
+  * New upstream testing release.
+    - Correctly recognize cache version differences in upgrades from 1.4
+      and invalidate the old cache.
+    - Resolve symlinks in fs rmmount.
+    - Include PID in byte-range lock warning.
+  * Preserve the AFS mount point and cache directorys set in
+    /etc/openafs/cacheinfo if the file already exists rather than
+    overwriting them with the defaults.  Thanks, Liam Healy.
+    (Closes: #580077)
+  * In the openafs-client init script, don't assume that AFS is mounted on
+    /afs when unmounting it or killing processes with AFS files open.
+    Instead, parse /etc/mtab to find the AFS mount point.
+  * Move the experimental afsd.fuse AFS FUSE client into openafs-fuse to
+    avoid adding a FUSE dependency in openafs-client.  Document its
+    current limitations in the package description.
+
+ -- Russ Allbery <rra@debian.org>  Tue, 04 May 2010 21:49:52 -0700
+
+openafs (1.5.74-2) experimental; urgency=low
+
+  * Apply upstream deltas:
+    - [e6f6c349] Fixes and clarifications to vos setaddrs man page
+    - [d80382ef] Remove special-case call for KAM_SetPassword on s390
+  * Fix ucontext detection on ppc_linux26, hopefully fixing build failures
+    on the Debian powerpc architecture.
+  * Install afsd.fuse and a man page link for it if the FUSE client build
+    is enabled.
+  * Add build dependency on libfuse-dev and pass --enable-fuse-client to
+    configure so that the new FUSE afsd is built.  Install afsd.fuse into
+    the openafs-client package for the time being; it will move to some
+    other package before being uploaded to unstable so that openafs-client
+    doesn't keep a dependency on libfuse.  There is, as yet, no
+    documentation or init script support for the FUSE implementation.
+
+ -- Russ Allbery <rra@debian.org>  Tue, 20 Apr 2010 18:12:06 -0700
+
 openafs (1.5.74-1) experimental; urgency=low
 
   * New upstream testing release.
@@ -38,6 +76,7 @@ openafs (1.5.73.3-1) experimental; urgency=low
     - Network performance improvements.
     - New libkopenafs library providing a kernel PAG manipulation
       interface (a subset of the API provided by Heimdal's libkafs).
+    - Fix builds on sparc64.  (LP: #181661)
   * Apply upstream deltas:
     - [7d395f17] Improve demand-attach fileserver bos documentation
     - [a763edc3] Make src/rx/rx.c not executable
index d2bcdbf..8bdee81 100644 (file)
@@ -5,7 +5,8 @@ Maintainer: Russ Allbery <rra@debian.org>
 Uploaders: Sam Hartman <hartmans@debian.org>
 Build-Depends: debhelper (>= 7), autoconf, automake, bison, comerr-dev,
  cpio, dblatex, dkms (>= 2.1.1.1), docbook-xsl, doxygen, flex,
- libkrb5-dev, libncurses5-dev, libpam0g-dev, libxml2-utils, perl, xsltproc
+ libfuse-dev, libkrb5-dev, libncurses5-dev, libpam0g-dev, libxml2-utils,
+ perl, pkg-config, xsltproc
 Standards-Version: 3.8.4
 Homepage: http://www.openafs.org/
 Vcs-Git: git://git.debian.org/git/pkg-k5-afs/openafs.git
@@ -28,6 +29,21 @@ Description: AFS distributed filesystem client support
  AFS.  If your site uses Kerberos v5 authentication for AFS, you will also
  want to install openafs-krb5.
 
+Package: openafs-fuse
+Priority: extra
+Architecture: alpha amd64 arm armel i386 ia64 lpia powerpc ppc64 s390 s390x sparc
+Depends: ${shlibs:Depends}, ${misc:Depends}, openafs-client (>= 1.5.74.1)
+Description: AFS distributed file system experimental FUSE client
+ AFS is a distributed filesystem allowing cross-platform sharing of
+ files among multiple computers.  Facilities are provided for access
+ control, authentication, backup and administrative management.
+ .
+ This package provides an experimental FUSE implementation of the AFS
+ client as afsd.fuse.  This currently only provides read-only access to
+ AFS, doesn't work with all of the normal AFS client programs, and must be
+ started manually, but may be of interest in situations where read-only
+ access is sufficient and the kernel module cannot be built.
+
 Package: openafs-kpasswd
 Priority: extra
 Architecture: alpha amd64 arm armel i386 ia64 lpia powerpc ppc64 s390 s390x sparc
index 62a361a..c3a8aad 100755 (executable)
@@ -44,3 +44,4 @@ commit=$(echo "Imported upstream tag $upstream via tarball" | \
 git branch -f upstream-1.5 "$commit"
 git tag "$tag" "$commit"
 git rm -q -r -f "$dir"
+rm -rf "$dir"
index 329cfca..02de249 100755 (executable)
@@ -177,10 +177,13 @@ start_client() {
 # normally called via kill_all_afs.
 kill_afs() {
     signal=$1
-    pids=`/usr/bin/lsof -Fp /afs | sed 's/p//'`
-    if [ -n "$pids" ] ; then
-        kill -$signal $pids > /dev/null 2>&1
-        sleep 1
+    mount=`grep ^'AFS ' /etc/mtab | awk '{ print $2 }'`
+    if [ -n "$mount" ] ; then
+        pids=`/usr/bin/lsof -Fp $mount | sed 's/p//'`
+        if [ -n "$pids" ] ; then
+            kill -$signal $pids > /dev/null 2>&1
+            sleep 1
+        fi
     fi
 }
 
@@ -238,8 +241,8 @@ force-start)
 stop|force-stop)
     $AFS_PRE_SHUTDOWN
     echo -n "Stopping AFS services:"
-    if mount | grep -q '^AFS' ; then
-        umount /afs
+    if grep -q '^AFS ' /etc/mtab ; then
+        umount `grep ^'AFS ' /etc/mtab | awk '{ print $2 }'`
         echo -n " afsd"
     fi
     if pidof /usr/sbin/afsd >/dev/null || pidof /sbin/afsd >/dev/null ; then
index f299168..ee44d53 100644 (file)
@@ -62,8 +62,17 @@ if [ "$1" = configure ] || [ "$1" = reconfigure ] ; then
         fi
     fi
                     
+    # Our config script will have already taken care of extracting the cache
+    # size from the cacheinfo file and using it as the default for the debconf
+    # prompt, but the mount point and cache directory have no debconf prompts.
+    # For those, we need to get the default from the file.
+    mountpoint=/afs
+    cachedir=/var/cache/openafs
+    if [ -r /etc/openafs/cacheinfo ] ; then
+        IFS=: read mountpoint cachedir cachesize < /etc/openafs/cacheinfo
+    fi
     db_get openafs-client/cachesize
-    echo /afs:/var/cache/openafs:$RET >/etc/openafs/cacheinfo
+    echo "${mountpoint}:${cachedir}:${RET}" > /etc/openafs/cacheinfo
 
     echo <<'EOF' > /etc/openafs/afs.conf.client
 # This file is managed by debconf.  You may change the parameters set below,
diff --git a/src/packaging/Debian/openafs-fuse.dirs b/src/packaging/Debian/openafs-fuse.dirs
new file mode 100644 (file)
index 0000000..7276ecd
--- /dev/null
@@ -0,0 +1 @@
+usr/share/doc
diff --git a/src/packaging/Debian/openafs-fuse.install b/src/packaging/Debian/openafs-fuse.install
new file mode 100644 (file)
index 0000000..3f7d62e
--- /dev/null
@@ -0,0 +1 @@
+debian/tmp/usr/sbin/afsd.fuse usr/sbin
diff --git a/src/packaging/Debian/openafs-fuse.links b/src/packaging/Debian/openafs-fuse.links
new file mode 100644 (file)
index 0000000..60cf7ab
--- /dev/null
@@ -0,0 +1 @@
+/usr/share/man/man8/afsd.8.gz usr/share/man/man8/afsd.fuse.8.gz
index 9b6a535..7826b91 100755 (executable)
@@ -39,7 +39,8 @@ HTML_XSL   = /usr/share/xml/docbook/stylesheet/nwalsh/html/chunk.xsl
 # The /usr/share/doc directory for these packages should be a symlink to
 # /usr/share/doc/openafs-client.  Any package on this list must depend on
 # openafs-client.
-DOC_PACKAGES = libpam-openafs-kaserver openafs-dbserver openafs-kpasswd
+DOC_PACKAGES = libpam-openafs-kaserver openafs-dbserver openafs-fuse \
+       openafs-kpasswd
 
 # These are files that we know we don't want to install.  List them so that we
 # can use dh_install --fail-missing and catch anything new that shows up.
@@ -51,7 +52,7 @@ IGNORE = -XAuthLog -Xcompile_et -Xcopyauth -Xdlog -Xdpass -Xfms.log       \
        -Xuss -Xvldb_convert -Xvsys -Xxfs_size_check
 
 # Installed via other means since we have to rename them.
-IGNORE += -Xpam_afs
+IGNORE += -Xafsd.fuse.8 -Xpam_afs
 
 # These variables are used by get-orig-source and to construct dkms.conf.
 # You will need to change TAG to package stable releases instead of
@@ -99,7 +100,7 @@ build-stamp:
            --sysconfdir=/etc --libexecdir=/usr/lib \
            --localstatedir=/var/lib --with-krb5-conf=/usr/bin/krb5-config \
            --enable-supergroups --enable-demand-attach-fs \
-           --enable-disconnected \
+           --enable-disconnected --enable-fuse-client \
            --with-xslt-processor=xsltproc --with-html-xsl=$(HTML_XSL) \
            --enable-debug --enable-debug-lwp $(DEBIAN_OPT_FLAGS) $(SYSTEM)
        chmod a+x config.sub src/libafs/make_kbuild_makefile.pl \