[27709] in Source-Commits

home help back first fref pref prev next nref lref last post

locker-support commit: Update packaging and bump version

daemon@ATHENA.MIT.EDU (Jonathan D Reed)
Wed Feb 12 16:24:11 2014

Date: Wed, 12 Feb 2014 16:24:03 -0500
From: Jonathan D Reed <jdreed@MIT.EDU>
Message-Id: <201402122124.s1CLO3A6009152@drugstore.mit.edu>
To: source-commits@MIT.EDU

https://github.com/mit-athena/locker-support/commit/17e8cc2159baa6ad59303045b6b7bbbfed93f9bb
commit 17e8cc2159baa6ad59303045b6b7bbbfed93f9bb
Author: Jonathan Reed <jdreed@mit.edu>
Date:   Wed Feb 12 13:18:39 2014 -0500

    Update packaging and bump version
    
    - Delete debathena-locker-utils packaging, we're not using it.
    - Rename debathena-python-locker-support to debathena-locker-support
    - Install the scripts in /usr/bin for later packaging by the
      various binary packages
    - Add binary packaging for attach, athdir, and quota
    - Bump version to 10.4 to work around hilarious versionsed dependency
      issues with quota-config and other packages.  We have other versions
      as high as 10.3, so we go to 10.4.  Athena does not go up to 11.
    - Bump source/format to 3.0 (quilt)
    - Add manpages

 debian/changelog                               |    6 +
 debian/control                                 |   43 +++++--
 debian/debathena-athdir.install                |    1 +
 debian/debathena-athdir.manpages               |    1 +
 debian/debathena-attach.install                |    3 +
 debian/debathena-attach.manpages               |    4 +
 debian/debathena-locker-support.install        |    1 +
 debian/debathena-locker-utils.install          |    1 -
 debian/debathena-python-locker-support.install |    1 -
 debian/debathena-quota.install                 |    1 +
 debian/debathena-quota.manpages                |    1 +
 debian/rules                                   |    2 +-
 debian/source/format                           |    2 +-
 man/add.1                                      |  174 ++++++++++++++++++++++++
 man/athdir.1                                   |  171 +++++++++++++++++++++++
 man/attach.1                                   |  133 ++++++++++++++++++
 man/detach.1                                   |  117 ++++++++++++++++
 man/fsid.1                                     |  111 +++++++++++++++
 man/quota.debathena.1                          |  112 +++++++++++++++
 setup.py                                       |    2 +-
 20 files changed, 873 insertions(+), 14 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 5e3ee9e..d8162fa 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+debathena-locker-support (10.4-0debathena1) UNRELEASED; urgency=low
+
+  * Bump version to 10.4 to work around legacy versioned-dependency issues
+
+ -- Jonathan Reed <jdreed@mit.edu>  Wed, 12 Feb 2014 13:22:22 -0500
+
 debathena-locker-support (1.0) unstable; urgency=low
 
   * Initial Release.
diff --git a/debian/control b/debian/control
index e163a05..b6fb831 100644
--- a/debian/control
+++ b/debian/control
@@ -5,7 +5,7 @@ Maintainer: Debathena Project <debathena@mit.edu>
 Build-Depends: debhelper (>= 7.0.50~), python, python-support
 Standards-Version: 3.9.3
 
-Package: debathena-python-locker-support
+Package: debathena-locker-support
 Architecture: all
 Depends: ${misc:Depends},
  ${python:Depends},
@@ -15,12 +15,37 @@ Description: Python modules for Athena's "locker" framework
  This package provides the "locker" and "athdir" modules,
  for use with debathena-pyhesiodfs and more
 
-Package: debathena-locker-utils
+Package: debathena-attach
 Architecture: all
-Depends: ${misc:Depends},
- ${python:Depends},
- debathena-python-locker-support,
-Description: Userland utilities for the Athena "locker" framework
- This package provides the "attach", "detach", "fsid", "athdir", and
- "quota" commands, though it does not install them in locations
- searched by the user's path, by default.
+Provides: attach
+Depends: debathena-locker-support, ${misc:Depends}, ${python:Depends}
+Description: Athena utility to attach a remote file system to the workstation
+ The attach utility is a filesystem-independent utility which allows you
+ to attach a filesystem to a directory hierarchy on a workstation.
+ Currently supported filesystem types are AFS, NFS, and UFS.
+
+Package: debathena-athdir
+Architecture: all
+Provides: athdir
+Depends: debathena-locker-support, ${misc:Depends}, ${python:Depends}
+Description: Utility to find machine-specific directories using Athena conventions
+ The athdir utility is used to locate specific types of files in an
+ Athena locker.  It knows about all the conventions for compatibility
+ with older operating system versions and processor types, and is the
+ preferred way to determine the correct directory in a locker in which
+ to find binaries or other architecture-dependent files.
+
+Package: debathena-quota
+Architecture: all
+Depends: debathena-locker-support, ${misc:Depends}, ${python:Depends}
+Suggests: debathena-quota-config
+Description: Print disk usage and quota limits
+ Quota displays a user's disk usage and limits on local and NFS mounted
+ file systems, as well as AFS lockers that have been attached. If a user
+ is specified (by name or by id), quota will return information on disk
+ usage and limits for that user. Normal users can only check their own
+ quotas. The super-user may check any quota on local filesystems.
+ .
+ This package installs quota as /usr/bin/quota.debathena.  If you want
+ /usr/bin/quota to point there, install the debathena-quota-config
+ package.
diff --git a/debian/debathena-athdir.install b/debian/debathena-athdir.install
new file mode 100644
index 0000000..b98d36f
--- /dev/null
+++ b/debian/debathena-athdir.install
@@ -0,0 +1 @@
+usr/bin/athdir
diff --git a/debian/debathena-athdir.manpages b/debian/debathena-athdir.manpages
new file mode 100644
index 0000000..61ed475
--- /dev/null
+++ b/debian/debathena-athdir.manpages
@@ -0,0 +1 @@
+man/athdir.1
diff --git a/debian/debathena-attach.install b/debian/debathena-attach.install
new file mode 100644
index 0000000..6254098
--- /dev/null
+++ b/debian/debathena-attach.install
@@ -0,0 +1,3 @@
+usr/bin/attach
+usr/bin/detach
+usr/bin/fsid
diff --git a/debian/debathena-attach.manpages b/debian/debathena-attach.manpages
new file mode 100644
index 0000000..3d817f2
--- /dev/null
+++ b/debian/debathena-attach.manpages
@@ -0,0 +1,4 @@
+man/attach.1
+man/add.1
+man/detach.1
+man/fsid.1
diff --git a/debian/debathena-python-locker-support.install b/debian/debathena-locker-support.install
similarity index 100%
rename from debian/debathena-python-locker-support.install
rename to debian/debathena-locker-support.install
diff --git a/debian/debathena-locker-utils.install b/debian/debathena-locker-utils.install
deleted file mode 100644
index bfa227e..0000000
--- a/debian/debathena-locker-utils.install
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib/debathena-locker-utils/*
diff --git a/debian/debathena-quota.install b/debian/debathena-quota.install
new file mode 100644
index 0000000..41910da
--- /dev/null
+++ b/debian/debathena-quota.install
@@ -0,0 +1 @@
+usr/bin/quota.debathena
diff --git a/debian/debathena-quota.manpages b/debian/debathena-quota.manpages
new file mode 100644
index 0000000..b56bcf7
--- /dev/null
+++ b/debian/debathena-quota.manpages
@@ -0,0 +1 @@
+man/quota.debathena.1
diff --git a/debian/rules b/debian/rules
index 88c6366..ec73975 100755
--- a/debian/rules
+++ b/debian/rules
@@ -5,4 +5,4 @@
 	dh --with-python2 $@
 
 override_dh_auto_install:
-	dh_auto_install -- --install-scripts=/usr/lib/debathena-locker-utils
+	dh_auto_install -- --install-scripts=/usr/bin
diff --git a/debian/source/format b/debian/source/format
index d3827e7..163aaf8 100644
--- a/debian/source/format
+++ b/debian/source/format
@@ -1 +1 @@
-1.0
+3.0 (quilt)
diff --git a/man/add.1 b/man/add.1
new file mode 100644
index 0000000..03288eb
--- /dev/null
+++ b/man/add.1
@@ -0,0 +1,174 @@
+.\" $Id: add.1,v 1.10 2001-03-17 16:51:54 ghudson Exp $
+.\"
+.\" Copyright 1997 by the Massachusetts Institute of Technology.
+.\"
+.\" Permission to use, copy, modify, and distribute this
+.\" software and its documentation for any purpose and without
+.\" fee is hereby granted, provided that the above copyright
+.\" notice appear in all copies and that both that copyright
+.\" notice and this permission notice appear in supporting
+.\" documentation, and that the name of M.I.T. not be used in
+.\" advertising or publicity pertaining to distribution of the
+.\" software without specific, written prior permission.
+.\" M.I.T. makes no representations about the suitability of
+.\" this software for any purpose.  It is provided "as is"
+.\" without express or implied warranty.
+.\"
+.TH ADD 1
+.SH NAME
+add \- attach a filesystem, add it to your path and manpath
+
+.SH SYNOPSIS
+add [-f] [-r] [-q] [-w] [-a \fIattachopts\fP] filesystemname filesystemname ...
+
+add [-f] [-r] pathname pathname ...
+
+add [-p]
+
+.SH DESCRIPTION
+\fIadd\fR is an alias provided by the standard Athena dotfiles.  It is
+intended to make the process of using software that is stored in
+remote filesystems easier.  In normal use, it requires one argument,
+the name of a filesystem to \fIadd\fR.  In that case, it adds the
+appropriate binary directory (arch/sun4x_56/bin, decmipsbin, etc.) to
+the end of your command search path so that you can find programs in
+the locker, and adds the man directory to your MANPATH so that
+\fIman\fR can find manpages that may be installed in that filesystem.
+In addition, if no binary directory matches the current system, the
+\fIATHENA_SYS_COMPAT\fR environment variable (see below) may be
+consulted for a list of compatible binary directories.  (See
+.BR lockers (7)
+for suggestions on how to organize and maintain
+lockers.)
+
+A pathname (starting with a ``.'' or ``/'') may be specified in place
+of a filesystem name. In this case, the string is added directly to
+the path rather than being interpreted as a lockername and resolved
+into a pathname. Note that filesystem names and pathnames may not be
+mixed in a single invocation of add.
+
+When no arguments are used, \fIadd\fR will print out the (possibly
+abbreviated) value of the user's PATH variable.
+
+\fIadd\fR may also take multiple filesystem arguments. In this case,
+\fIadd locker1 locker2 locker3\fR is functionally equivalent to,
+though more efficient than, \fIadd locker1; add locker2; add
+locker3\fR. Thus when adding lockers to the front of your PATH, they
+will appear as \fIlocker3 locker2 locker1\fR at the front of your
+PATH.
+
+\fIadd\fR may be used interactively while logged in, or in your
+~/.environment file.
+
+Typing "alias add" in your C shell will reveal that it is an alias
+which evaluates the output of a special invocation of
+.BR attach (1)\fP.
+Note that Bourne shell output is also available.
+
+.SH OPTIONS
+\fIadd\fR accepts the following options:
+.TP 9
+.B \-f
+\fIadd\fR normally adds lockers to the end of your path. This option
+causes it to add lockers to the front of your path instead. If the
+locker is already in your path but not at the front, it will be moved
+there. However, when -f is used in your ~/.environment file, it does
+not affect lockers already in your path.
+
+This feature is useful when you want to cause programs in the lockers
+to replace programs found in other places, such as on the system
+packs. You usually want lockers added to the end of your path,
+however, to prevent the possibility of locker maintainers replacing
+important binaries with things you don't expect.
+.TP 9
+.B \-r
+This option causes \fIadd\fR to remove the specified lockers or
+pathnames from your path.
+.TP 9
+.B \-w
+This option causes \fIadd\fR to warn you in the event a locker you have
+asked to be added does not support your platform, or if a platform from
+\fIATHENA_SYS_COMPAT\fR (see below) is used.  In the former case, a
+binary directory will not be added to your PATH, but if a man
+directory exists it will still be added to your MANPATH. \fIadd\fR
+normally says nothing in either case.
+.TP 9
+.B \-p
+This option causes \fIadd\fR to print the contents of the user's PATH. In
+the case where a path element is of the form /mit/foo/arch/$ATHENA_SYS/bin,
+\fIadd\fR substitutes the string {add foo} for that path element. This
+serves to shorten and make more readable the user's PATH. In addition,
+if a path element is using compatibility, such as a sun4x_56 system
+having a sun4x_55 directory in its path, an asterisk will be added, as
+in {add foo*}.
+.TP 9
+.B \-P athena_path
+This option is used for supporting the use of \fIadd\fR in the user's
+~/.environment file. The user normally need never specify this option
+as that is taken care of by a special version of the alias that is in
+effect when the .environment file is run. This option is used to pass
+the \fIathena_path\fR shell variable to \fIadd\fR on the command line,
+and cause \fIadd\fR to modify that variable in its output instead of
+the environment variable PATH as it normally does. In the C shell
+case, \fIathena_path\fR is space-separated, and so must be quoted in
+the shell in order to be passed to \fIadd\fR as a single argument. In
+the Bourne shell case, \fIathena_path\fR is colon-separated, so this
+isn't necessary.
+.TP 9
+.B \-a
+This option causes \fIadd\fR to pass all remaining options on the command
+line directly to \fIattach\fR. This is useful for passing flags meant to
+be interpreted by \fIattach\fR and not by \fIadd\fR.
+.TP 9
+.B \-b
+This option causes \fIadd\fR to produce output suitable for interpretation
+by the Bourne shell. Note that this option is only intended for use by
+shell aliases or subroutines which call attach directly. Using this option
+explicitly on the command line with the C shell add alias will cause the
+alias to fail.
+.TP 9
+.B \-q
+This option is obsolete.
+.SH VARIABLES
+The shell variable \fIadd_flags\fR may be set to specify default flags
+that \fIadd\fR is intended to use for all commands. For example, if
+you desire that attach always give warnings for lockers that do not
+have binary directories supporting your platform, you might put a
+``set add_flags = "-w"'' in your ~/.cshrc.mine file.
+
+The environment variable \fIATHENA_SYS\fR is used to determine the
+sysname value when determining path names for new-style paths.
+
+The environment variable \fIATHENA_SYS_COMPAT\fR is a colon-separated
+list of fallback sysname values which are known to be generally
+compatible with the current system. Thus, on a Solaris 2.6 machine,
+\fIATHENA_SYS\fR may be set to sun4x_56, with \fIATHENA_SYS_COMPAT\fR
+set to sun4x_55:sun4m_54. Then if there is no arch/sun4x_56 directory
+available, arch/sun4x_55 will be checked, etc.
+
+.SH NOTE
+Most of the work of the \fIadd\fR alias is done by
+.BR attach (1)\fR,
+by giving it the option \fI-Padd\fR.
+
+.SH FILES
+.PP
+/usr/athena/lib/init/cshrc    global Athena cshrc file
+.br
+~/.cshrc                      user's cshrc file
+~/.environment                user's environment file
+
+.SH "SEE ALSO"
+attach(1), athdir(1), man(1), csh(1), lockers(7)
+
+.SH BUGS
+All of \fIadd\fR's visible output is sent to stderr. The stdout pipe
+is use strictly for the output of commands the shell is intended to
+evaluate.
+
+.SH AUTHORS
+Craig Fields, MIT Information Systems
+.br
+Dan Winship, MIT Information Systems
+.PP
+Copyright 1998 Massachusetts Institute of Technology
diff --git a/man/athdir.1 b/man/athdir.1
new file mode 100644
index 0000000..eac90b4
--- /dev/null
+++ b/man/athdir.1
@@ -0,0 +1,171 @@
+.TH ATHDIR 1 "7 March 1998"
+.ds ]W MIT Athena
+.SH NAME
+athdir \- find machine specific directories using Athena conventions
+.SH SYNOPSIS
+.nf
+athdir \fIlockerpath\fR [\fItype\fR]
+
+athdir [-t \fItype\fR] [-p \fIlockerpath\fR ...] [-e] [-c] [-l] [-i | -d]
+       [-r \fIrecsep\fR] [-f \fIformat\fR] [-s \fIsysname\fR] [-m \fImachtype\fR]
+.fi
+.SH DESCRIPTION
+\fIathdir\fR provides the most reliable way to determine the location
+in a locker of specific types of machine dependent files. While in C
+shell scripts the shell variable \fIbindir\fR is typically available,
+that information is not available in all environments (such as
+makefiles) and not necessarily as reliable, as it contains no
+intelligence. Similarly, while the environment variable
+\fIATHENA_SYS\fR is widely available, attempting to use it in
+makefiles or resource files may fail on older lockers that have not
+yet been upgraded to use the new conventions, or in lockers that have
+not been updated to support the latest operating system releases. (See
+\fIlockers\fR(7) for more information on locker directory
+conventions.)
+
+In the first invocation shown above, \fIathdir\fR does not accept
+command line options other than the two listed, and they must be in
+the listed order. If \fItype\fR is not specified, ``bin'' is assumed.
+
+In the second invocation above, no particular option is required,
+though at least one option is.  \fItype\fR has no default value, and
+the options may be specified in any order.
+.SH EXAMPLES
+\fIathdir\fR may be used to find directories for any sort of machine
+dependent or potentially machine dependent files. In its most common
+form, it should be used to replace \fImachtype\fR(1) (as in
+``/mit/locker/`machtype`bin''). For example,
+
+     set path=($path `athdir /mit/locker`)
+
+will append ``/mit/locker/arch/pmax_ul4/bin'' to the user's search
+path if the locker supports that as the machine specific binary
+directory, or ``/mit/locker/decmipsbin'' otherwise. Note that in this
+case, no type argument is specified, so ``bin'' is assumed. The
+example is shorthand for using `athdir /mit/locker bin`. Similarly,
+one might have in one's .twmrc file:
+
+    "meow"   f.exec "`athdir /mit/sipb`/oneko &"
+
+to replace:
+
+    "meow"   f.exec "/mit/sipb/`machtype`bin/oneko &"
+
+The rest of this manual page will probably not be of interest to most
+users, but may be of interest to developers.
+
+Another useful application for \fIathdir\fR is in makefiles. For
+example, suppose you wish to build a program against the x11 locker.
+You might start with
+
+     INCLUDES = `athdir /mit/x11 include`
+     LIBS = `athdir /mit/x11 lib`
+
+to find the appropriate directories in the locker. For dependencies
+on multiple lockers, you might have
+
+     INCLUDES = `athdir -t include -p /mit/motif /mit/x11`
+     LIBS = `athdir -t lib -p /mit/motif /mit/x11`
+
+which might resolve to
+
+     INCLUDES = /mit/motif/include /mit/x11/include
+     LIBS = /mit/motif/sun4lib /mit/x11/arch/sun4m_53/lib
+
+Note that this example allows for the possibility of machine dependent
+include files as well as libraries.
+
+In general, \fItype\fRs are treated as random strings by
+\fIathdir\fR. \fIathdir\fR checks the locker first for
+arch/$ATHENA_SYS/\fItype\fR. Next it checks for arch/COMPAT/\fitype\fR,
+where COMPAT iterates over the values in $ATHENA_SYS_COMPAT.
+Then it checks for `machtype`\fItype\fR. Finally it looks for \fItype\fR
+alone. Exceptions to this rule are cases where
+a convention is never expected to be used, or where a convention is
+explicitly discouraged and has never been supported. Note that if any
+future conventions arise, \fIathdir\fR will know about them and act
+accordingly. Thus, in theory, the usage of \fIathdir\fR should be
+forward compatible, and is encouraged.
+.SH OPTIONS
+\fIathdir\fR provides a few options for modifying its default behavior
+and providing other useful information.
+.TP 8
+.B \-e
+This option causes \fIathdir\fR to not engage in potentially annoying
+editorial behavior. It will not implement the above mentioned
+exceptions on conventions not expected or discouraged.
+.TP 8
+.B \-c
+This option causes \fIathdir\fR to not check for the usage of
+different possible conventions, and simply return output in the form
+of currently favored convention (arch). This is useful, for example,
+in makefiles that may wish to ``\fImkdir\fR -p'' target directories.
+.TP 8
+.B \-d
+This option, when used with \-c, tells \fIathdir\fR that you wish it
+to use the favored machine dependent directory convention when
+returning a pathname. \fIathdir\fR makes assumptions, based on
+\fItype\fR, what kind of directory should be returned. For example, if
+the \fItype\fR were ``include,'' \fIathdir\fR would ordinarily return
+something like ``/mit/locker/include.'' If you specify \-d, it would
+return ``/mit/locker/arch/$ATHENA_SYS/include'' instead.
+.TP 8
+.B \-i
+This option, when used with \-c, tells \fIathdir\fR that you wish it
+to use the favored machine independent directory convention when
+returning a pathname. This is basically the reverse of the \-d option.
+\fIathdir\fR, when it does not recognize a \fItype\fR, assumes the
+type to be machine dependent, so \-i may be used to override that.
+.TP 8
+.B \-l
+This option causes \fIathdir\fR to list the locations it would look
+for the \fItype\fR of directory requested, rather than looking in them
+and returning a single value. If a directory path is not specified,
+\fIathdir\fR will output a ``%p'' in its place; if a \fItype\fR is not
+specified, a ``%t'' will be output in its place, and all three above
+mentioned possibilities will be output.
+.TP 8
+.B \-f \fIformat\fR
+This option passes a format string to \fIathdir\fR to be used as a
+style for searching for directories. It is used as the preferred
+path style, with the built-in styles as fallbacks. It makes the following
+substitutions:
+
+        %p   path (as passed by -p)
+        %t   type (as passed by -t)
+        %s   sysname
+        %m   machtype value
+
+For example, the arch convention uses the string %p/arch/%s/%t. When
+making the substitution for %s, \fIATHENA_SYS_COMPAT\fR values will be
+substituted after the \fIATHENA_SYS\fR value as necessary.
+.TP 8
+.B \-r \fIrecsep\fR
+Specify the record separator when multiple paths are output. By default this
+is a newline. It may be useful to specify it to be a space or colon on
+various occasions.
+.TP 8
+.B \-s \fIsysname\fR
+This option allows a command line override for the \fIATHENA_SYS\fR
+value used in generating new style machine directories.
+.TP 8
+.B \-m \fImachtype\fR
+This option allows a command line override for the \fImachtype\fR
+value used in generating old style machine directories.
+.SH VARIABLES
+The environment variable \fIATHENA_SYS\fR is used to determine the
+sysname value when determining path names for new style paths, unless
+overridden by the \-s option.
+
+The environment variable \fIATHENA_SYS_COMPAT\fR is a colon-separated
+list of fallback sysname values which are known to be generally
+compatible with the current system. Thus, on a Solaris 2.6 machine,
+\fIATHENA_SYS\fR may be set to sun4x_56, with \fIATHENA_SYS_COMPAT\fR
+set to sun4x_55:sun4m_54. Then if there is no arch/sun4x_56 directory
+available, arch/sun4x_55 will be checked, etc.
+.SH SEE ALSO
+machtype(1), lockers(7), mkdir(1)
+.SH AUTHOR
+Craig Fields, MIT Information Systems
+.br
+Copyright (c) 1995, Massachusetts Institute of Technology
diff --git a/man/attach.1 b/man/attach.1
new file mode 100644
index 0000000..7cad2dc
--- /dev/null
+++ b/man/attach.1
@@ -0,0 +1,133 @@
+.\" $Id: attach.1,v 1.16 2004-08-11 15:20:17 ghudson Exp $
+.\"
+.\" Copyright 1997 by the Massachusetts Institute of Technology.
+.\"
+.\" Permission to use, copy, modify, and distribute this
+.\" software and its documentation for any purpose and without
+.\" fee is hereby granted, provided that the above copyright
+.\" notice appear in all copies and that both that copyright
+.\" notice and this permission notice appear in supporting
+.\" documentation, and that the name of M.I.T. not be used in
+.\" advertising or publicity pertaining to distribution of the
+.\" software without specific, written prior permission.
+.\" M.I.T. makes no representations about the suitability of
+.\" this software for any purpose.  It is provided "as is"
+.\" without express or implied warranty.
+.\"
+.TH ATTACH 1
+.SH NAME
+attach \- attach a remote file system to your workstation
+.SH SYNOPSIS
+.TP 8
+attach
+[-v | -q | -p] [-z | -h] locker ...
+.PP
+.nf
+attach -l \fIfilesystem\fP
+.fi
+.SH DESCRIPTION
+.I attach
+is a filesystem-independent utility which allows you attach a
+filesystem to a directory hierarchy on your workstation. Currently,
+the only supported filesystem type is AFS.
+
+.B NOTE: 
+.I attach 
+is provided mainly for compatibility with previous versions of Athena.
+With Debathena, \fI/mit\fP is auto-mounted, so you can access any path
+under \fI/mit\fP without explicitly attaching the locker.
+
+Attach looks up the \fIfilesystem\fP in
+.BR Hesiod (3)
+to retrieve the file system type, the server host, the name by which
+the file system is known to the server (e.g., an NFS server
+mountpoint), and the default mount point and mode (read-only,
+read-write). 
+
+By default,
+.I attach
+will attempt to make sure the user is authenticated to the remote
+filesystem, by getting tokens in the appropriate cell for an AFS
+locker.
+
+The following arguments to \fIattach\fP modify its behavior. Default
+options are marked as such. Unless otherwise marked, all arguments are
+processed \fIin order\fP. Thus, if a -v option is followed by a -q
+option, the -q option will take precedence (for any lockers that
+appear after the -q on the command line). The long and short forms of
+each option function identically.
+
+If no arguments are given to \fIattach\fP, a list of the currently
+attached filesystems will be printed.
+
+.TP 8
+.I --verbose (-v)
+Display verbose information about a mounted filesystem, such as the
+AFS path or NFS server and the server's filesystem name, if the attach
+is successful. This is the default. Use of this option automatically
+supresses the --printpath option.
+.TP 8
+.I --quiet (-q)
+Don't display verbose information.  Error messages will still be printed.
+.TP 8
+.I --printpath (-p)
+\fIattach\fP normally prints a status message on its standard output
+indicating the success or failure of the attach operation. This flag
+causes the pathname of the mounted filesystem to be printed instead.
+This was used by the old "add" aliases. Use of this option
+automatically surpresses the -verbose option.
+.TP 8
+.I --zephyr (-z)
+Subscribe to
+.BR Zephyr (1)
+messages about the server host.  This is the default.
+.TP 8
+.I --nozephyr (-h)
+Don't subscribe to
+.BR Zephyr (1)
+messages about the server host.
+.PP
+If the default mount-point for a filesystem (or the mount-point
+specified with the -m option) does not exist, it is created.  Any
+directories in the path that do not exist are also created.  If a
+directory can't be created, the attach fails.  When the filesystem is
+detached, any directories that were created during the attach are
+deleted, if possible.
+
+.SH DIAGNOSTICS
+If \fIattach\fP is unable to initalize the locker library, it will
+exit with status 1. If \fIattach\fP encounters a problem attaching a
+locker, it will continue trying to attach any remaining lockers on the
+command line, but eventually exit with status 2.
+
+.SH FILES
+/etc/athena/attach.conf
+.br
+/var/athena/attachtab/
+.br
+
+.SH BUGS
+NFS and RVD lockers are no longer supported.
+
+.SH FEATURES
+NFS and RVD lockers are no longer supported.
+
+.SH "SEE ALSO"
+add(1), detach(1)
+
+.SH AUTHORS
+SIPB Debathena Project
+.PP
+Previous versions by:
+.br
+Dan Winship, MIT Information Systems
+.br
+Robert French, Project Athena
+.br
+Theodore Ts'o, Project Athena
+.br
+John Carr, Project Athena
+.br
+Richard Basch, Project Athena
+.PP
+Copyright 1988, 1990, 1998 Massachusetts Institute of Technology
diff --git a/man/detach.1 b/man/detach.1
new file mode 100644
index 0000000..98e24a0
--- /dev/null
+++ b/man/detach.1
@@ -0,0 +1,117 @@
+.\" $Id: detach.1,v 1.10 1999-07-26 17:21:27 danw Exp $
+.\"
+.\" Copyright 1997 by the Massachusetts Institute of Technology.
+.\"
+.\" Permission to use, copy, modify, and distribute this
+.\" software and its documentation for any purpose and without
+.\" fee is hereby granted, provided that the above copyright
+.\" notice appear in all copies and that both that copyright
+.\" notice and this permission notice appear in supporting
+.\" documentation, and that the name of M.I.T. not be used in
+.\" advertising or publicity pertaining to distribution of the
+.\" software without specific, written prior permission.
+.\" M.I.T. makes no representations about the suitability of
+.\" this software for any purpose.  It is provided "as is"
+.\" without express or implied warranty.
+.\"
+.TH DETACH 1
+.SH NAME
+detach \- detach a remote file system from your workstation
+.SH SYNOPSIS
+.nf
+detach [-v | -q] [-y | -n] [-z | -h] [-x | -e] [-O] filesystem ...
+detach [options] mountpoint ...
+detach [options] [-t type] [-C] [-a | -H host ...]
+.fi
+.SH DESCRIPTION
+.I detach
+performs the appropriate filesystem-dependent operations to
+disassociate a filesystem which was attached using
+.BR attach (1)
+from the workstation.
+
+The \fI-a\fP form is used to detach all attached filesystems from the
+workstation. This is typically run when the workstation reactivates,
+so as to flush all user mounted filesystems from the workstation.
+
+The following options are available in
+.I detach\fP:
+
+.TP 8
+.I --verbose (-v)
+Display verbose information about the success of the detach.  This is
+the default.
+.TP 8
+.I --quiet (-q)
+Don't display verbose information.
+.TP 8
+.I --all (-a)
+Attempt to detach all filesystems which had been attached using the
+\fIattach\fP command.
+.TP 8
+.I --unmap (-y)
+Attempt to remove authentication for the user from the filesystem
+server.  The authentication will be removed even if the detach fails.
+This is the default.
+.TP 8
+.I --nomap (-n)
+Do not attempt to remove authentication for the user from the
+filesystem server.
+.TP 8
+.I --zephyr (-z)
+Remove \fIZephyr\fP subscription information about the server host.
+This is the default.
+.TP 8
+.I --nozephyr (-h)
+Don't remove \fIZephyr\fP subscription information about the server host.
+.TP 8
+.I --type \fIfilesystem-type\fP (-t \fIfilesystem-type\fP)
+Used with the --all option to detach all filesystems of a particular
+type.  If not specified, the --all option will detach all filesystems.
+.TP 8
+.I --explicit (-e)
+Change the behavior of \fIdetach\fP such that the \fIfilesystem\fP is
+now interpreted as \fIhost:directory\fP (in the case of NFS) or
+\fIhost:pack\fP (in the case of RVD) instead of as a Hesiod name.
+Type --type option can be used to specify the filesystem type.
+.TP 8
+.I --noexplicit (-x)
+Tell \fIdetach\fP to interpret the \fIfilesystem\fP as a Hesiod name.
+This is the default.
+.TP 8
+.I --override (-O)
+This option allows the trusted users to force a filesystem to be
+detached, even if it was attached by another user or locked.
+.TP 8
+.I --host \fIhost\fP (-H \fIhost\fP)
+Requests detach to detach all remote filesystems whose fileserver
+matches the specified host.
+.TP 8
+.I --clean (-C)
+This option indicates that the specified filesystems should be detached
+if they are not wanted by anyone who is in \fI/etc/passwd\fP.
+
+.SH DIAGNOSTICS
+If \fIdetach\fP is unable to initalize the locker library, it will
+exist with status 1. If \fIdetach\fP encounters a problem detaching a
+locker, it will continue trying to detach any remaining lockers on the
+command line, but eventually exit with status 2. (This does not apply
+to \fIdetach -a\fP or \fIdetach -H\fP, which will exit with status 0
+if they successfully detach any locker.)
+
+.SH FILES
+/etc/athena/attach.conf
+.br
+/var/athena/attachtab/
+
+.SH "SEE ALSO"
+attach(1), attach.conf(5)
+
+.SH AUTHOR
+Dan Winship, MIT Information Systems
+.PP
+based on the original detach by
+.br
+Robert French, Project Athena
+.PP
+Copyright 1988, 1998 Massachusetts Institute of Technology
diff --git a/man/fsid.1 b/man/fsid.1
new file mode 100644
index 0000000..f96d413
--- /dev/null
+++ b/man/fsid.1
@@ -0,0 +1,111 @@
+.\" $Id: fsid.1,v 1.10 2000-01-31 15:57:59 danw Exp $
+.\"
+.\" Copyright 1997 by the Massachusetts Institute of Technology.
+.\"
+.\" Permission to use, copy, modify, and distribute this
+.\" software and its documentation for any purpose and without
+.\" fee is hereby granted, provided that the above copyright
+.\" notice appear in all copies and that both that copyright
+.\" notice and this permission notice appear in supporting
+.\" documentation, and that the name of M.I.T. not be used in
+.\" advertising or publicity pertaining to distribution of the
+.\" software without specific, written prior permission.
+.\" M.I.T. makes no representations about the suitability of
+.\" this software for any purpose.  It is provided "as is"
+.\" without express or implied warranty.
+.\"
+.TH FSID 1
+.SH NAME
+fsid \- Perform authorization functions to remote file servers
+.SH SYNOPSIS
+.nf
+fsid [-q | -v] [-m | -p | -r | -u] [ filesystem | host ] ...
+fsid [-q | -v] [-m | -p | -r | -u] -f filesystem ...
+fsid [-q | -v] [-m | -p | -r | -u] -h host ...
+fsid [-q | -v] [-m      |      -u] -c cell ...
+fsid [-q | -v] [-m | -p | -r | -u] -a
+.fi
+
+.SH DESCRIPTION
+\fIfsid\fP is used to authenticate to remote filesystems that have
+been brought local with
+.BR attach (1)\fP.
+.PP
+If no option specifying otherwise is given, you may pass either
+filesystems or hostnames on the command line.
+.PP
+The following arguments to \fIfsid\fP modify its default behavior.
+All arguments are processed \fIin order\fP.  Thus, if a -u option is
+followed by a -m option, the -m option will take precedence.
+
+.TP 8
+.I --verbose (-v)
+Display verbose information about the mapping operation.  This is the
+default.
+.TP 8
+.I --quiet (-q)
+Don't display verbose information.
+.TP 8
+.I --map (-m)
+Set the mapping function to "map user". This is the default, and
+is used to authenticate a user to a filesystem or server using
+Kerberos.
+.TP 8
+.I --unmap (-u)
+Set the mapping function to "unmap user".  This is used to remove an
+authentication mapping.
+.TP 8
+.I --purge (-p)
+Set the mapping function to "purge host".  This is used to remove all
+mappings associated with the user's host from the remote server. This
+option may only be used by trusted users. (This only has any effect
+for NFS servers.)
+.TP 8
+.I --purgeuser (-r)
+Set the mapping function to "purge user".  This is used to remove all
+mappings associated with the user on the host.  It requires that the
+user have Kerberos tickets. (This only has any effect for NFS
+servers.)
+.TP 8
+.I --filsys (-f)
+Perform the current mapping operation for the servers associated with
+the indicated filesystems.
+.TP 8
+.I --cell \fIcell\fP (-c \fIcell\fP)
+Authenticate the user to the specified AFS cell.
+.TP 8
+.I --host \fIhost\fP (-h \fIhost\fP)
+Authenticate the user to the specified NFS server host.
+.TP 8
+.I --all (-a)
+Perform the current mapping operation for all filesystems attached by
+the user. (For "purge" and "purge user", the operation is performed
+for all filesystems in the attachtab.) If the environment variable
+\fIFSID_EXTRA_CELLS\fR is defined, \fIfsid\fR will treat it as a
+space-separated list of additional AFS cells to authenticate or
+unauthenticate to.
+
+.SH DIAGNOSTICS
+If \fIfsid\fP is unable to initalize the locker library, it will exist
+with status 1. If \fIfsid\fP encounters a problem performing a mapping
+operation, it will continue trying to work with each remaining
+argument on the command line, but eventually exit with status 2. (This
+does not apply to \fIfsid -a\fP, which will exit with status 0 if it
+successfully maps any locker or host.)
+
+.SH FILES
+/etc/athena/attach.conf
+.br
+/var/athena/attachtab
+
+.SH "SEE ALSO"
+attach(1)
+
+.SH AUTHOR
+Dan Winship, MIT Information Systems
+.PP
+based on the original fsid by
+.br
+Robert French, Project Athena
+.PP
+Copyright 1988, 1998, Massachusetts Institute of Technology
diff --git a/man/quota.debathena.1 b/man/quota.debathena.1
new file mode 100644
index 0000000..0e1a2b0
--- /dev/null
+++ b/man/quota.debathena.1
@@ -0,0 +1,112 @@
+.\" $Id: quota.1,v 1.13 2007-08-22 18:10:28 ghudson Exp $
+.\"
+.\" Copyright 1997 by the Massachusetts Institute of Technology.
+.\"
+.\" Permission to use, copy, modify, and distribute this
+.\" software and its documentation for any purpose and without
+.\" fee is hereby granted, provided that the above copyright
+.\" notice appear in all copies and that both that copyright
+.\" notice and this permission notice appear in supporting
+.\" documentation, and that the name of M.I.T. not be used in
+.\" advertising or publicity pertaining to distribution of the
+.\" software without specific, written prior permission.
+.\" M.I.T. makes no representations about the suitability of
+.\" this software for any purpose.  It is provided "as is"
+.\" without express or implied warranty.
+.\"
+.TH QUOTA 1
+.SH NAME
+quota \- display disk usage and limits
+.SH SYNOPSIS
+.TP 8
+quota [\-v] [\-a | \-f filesystem [\-f filesystem ...]] [\-u] [user]
+.SH DESCRIPTION
+.I Quota
+displays a user's disk usage and limits on local and NFS mounted file
+systems, as well as AFS lockers that have been attached. If a user is
+specified (by name or by id), \fIquota\fP will return information on
+disk usage and limits for that user. Normal users can only check their
+own quotas. The super-user may check any quota on local filesystems.
+.PP
+\fIQuota\fP, without the \fB\-a\fP or \fB\-f\fP options, only
+processes local and NFS filesystems on which the user has an assigned
+quota, and those AFS filesystems that the user has attached and to
+which the user has write access at the filesystem's top-level
+directory. Without any options, \fIquota\fP displays warnings about
+those filesystems where usage is over quota. With AFS filesystems,
+warnings are displayed when 90% of the volume's quota has been
+reached.
+.SH OPTIONS
+.IP \fB\-a\fP
+This option specifies that all attached filesystems should be processed,
+regardless of who attached them and the user's ability to write to the
+filesystem.  Warnings or status messages that may result from the use of
+this option do not necessarily indicate that the user may be able to
+alter the usage or otherwise affect the situation.  Quota information is
+a representation of a user's limits should he have write access; it does
+not indicate that such write access exists.
+.IP \fB\-v\fP
+This option will display usages and limits for the user on all
+processed file systems where quotas exist. On NFS or local file
+systems, everyone has a "soft" limit for disk space usage (given in
+the first
+.B quota
+column) and a
+"hard" limit (given in the first
+.B limit
+column).  The amount of space
+currently in use is shown in the
+.B usage
+column.  These values
+are measured in kilobytes.
+.IP
+When the "soft" limit is exceeded, the
+.B limit
+column will be marked with \fB<<\fP. If the higher "hard" limit is
+reached, you will no longer be able to write anything into the
+directory.
+.IP
+In addition, there is a quota and limit on the number of inodes (files and
+directories) that may exist.  Each file or directory counts as a single inode
+(the sum total of which is listed in the
+.B files
+column).  The soft and hard
+limits for inodes are similar to those for disk space usage, except that when
+the "hard" limit is reached, you will not be able to create new subdirectories
+or files within that filesystem.
+.IP
+If no quotas for the user (or groups that the user is a member of) exist
+on any mounted file systems, nothing will be displayed.
+.IP
+In an AFS locker, there is no quota on the number of files you can
+create as long as your disk usage remains under quota.
+.PP
+.IP "\fB\-f\fP filesystem"
+With this option, quota information will be returned on any specified
+filesystems.  The filesystem must be specified as the mount-point or as
+the Hesiod name by which it was attached.  A single filesystem name
+must be present with each \fB\-f\fP option.  For example, a typical
+command to check one's home directory quota would be:
+.PP
+.RS 16
+quota -v -f $USER
+.RE
+.IP
+Up to 16 `\fB\-f\fP filesystem' pairs may be specified.  If the given
+filesystem name doesn't match any mounted filesystems, a suitable
+error message to that effect is printed.
+.IP
+Note that the user will always be warned about quota problems on lockers
+that are explicitly specified with -f, whether or not they have write
+access to the filesystem.  Quota is a representation of limits that the
+user would have should he have write access; it does not indicate if
+such write access exists.
+.PP
+.IP \fB\-u\fP
+This option indicates that user quotas, and not group quotas, are to
+be reported verbosely. Group quotas are no longer supported, so this
+option is now equivalent to the \fB\-v\fP option.
+.SH FILES
+/var/athena/attachtab/
+.SH "SEE ALSO"
+quotactl(2), quotaon(1m), edquota(1m), rquotad(1m)
diff --git a/setup.py b/setup.py
index e342d30..9532408 100644
--- a/setup.py
+++ b/setup.py
@@ -1,7 +1,7 @@
 from distutils.core import setup
 
 setup(name='locker-support',
-      version='1.0',
+      version='10.4',
       author='Debathena Project',
       author_email='debathena@mit.edu',
       py_modules=['locker', 'athdir'],

home help back first fref pref prev next nref lref last post