Version bump to 1.4.0_rc3
authorStefaan De Roeck <stefaan@gentoo.org>
Mon, 5 Sep 2005 07:50:10 +0000 (07:50 +0000)
committerStefaan De Roeck <stefaan@gentoo.org>
Mon, 5 Sep 2005 07:50:10 +0000 (07:50 +0000)
Package-Manager: portage-2.0.51.22-r2

net-fs/openafs-kernel/ChangeLog
net-fs/openafs-kernel/Manifest
net-fs/openafs-kernel/files/digest-openafs-kernel-1.4.0_rc3 [new file with mode: 0644]
net-fs/openafs-kernel/openafs-kernel-1.4.0_rc3.ebuild [new file with mode: 0644]
net-fs/openafs/ChangeLog
net-fs/openafs/Manifest
net-fs/openafs/files/digest-openafs-1.4.0_rc3 [new file with mode: 0644]
net-fs/openafs/openafs-1.4.0_rc3.ebuild [new file with mode: 0644]

index 7c4d16dca30ce2dd61635b565c66b74bb5ca39a2..be5925eba8d61f59f331040fb85085a3e18140b7 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for net-fs/openafs-kernel
 # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-fs/openafs-kernel/ChangeLog,v 1.7 2005/09/01 23:51:34 stefaan Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-fs/openafs-kernel/ChangeLog,v 1.8 2005/09/05 07:48:34 stefaan Exp $
+
+*openafs-kernel-1.4.0_rc3 (05 Sep 2005)
+
+  05 Sep 2005; Stefaan De Roeck <stefaan.deroeck@gentoo.org>
+  +openafs-kernel-1.4.0_rc3.ebuild:
+  Version bump to 1.4.0_rc3
 
 *openafs-kernel-1.4.0_rc2 (01 Sep 2005)
 
index b1ac9d3e60ff12c169bcfdbd9558f6ebff3fc26c..a386d8955b127f0e823a8ab39854438d9492a23f 100644 (file)
@@ -3,6 +3,8 @@ MD5 59bbb0e897a1a23a82305e12742e9ac6 metadata.xml 398
 MD5 a4552f859ce00bdeffa11204fe7d8122 openafs-kernel-1.2.13.ebuild 1540
 MD5 4b4125b4c4a4d5d3c5b5bde63c2ec185 openafs-kernel-1.3.85.ebuild 1376
 MD5 9e7610ee8b00a013d40a951fab61f48b openafs-kernel-1.4.0_rc2.ebuild 1409
+MD5 9e7610ee8b00a013d40a951fab61f48b openafs-kernel-1.4.0_rc3.ebuild 1409
 MD5 154b7f0bf57bb9377c49d03565366b15 files/digest-openafs-kernel-1.2.13 144
 MD5 783c2d18fada2fa1d874b8aabf98e84d files/digest-openafs-kernel-1.3.85 143
 MD5 4e24ea4a9fc322e49aec4643b8a47756 files/digest-openafs-kernel-1.4.0_rc2 147
+MD5 923022c8ef5c25c5cae5ced4da170bfd files/digest-openafs-kernel-1.4.0_rc3 147
diff --git a/net-fs/openafs-kernel/files/digest-openafs-kernel-1.4.0_rc3 b/net-fs/openafs-kernel/files/digest-openafs-kernel-1.4.0_rc3
new file mode 100644 (file)
index 0000000..bca3a5e
--- /dev/null
@@ -0,0 +1,2 @@
+MD5 5cf435d42242a30490906a5e4e8ae9bf openafs-1.4.0-rc3-src.tar.bz2 10978405
+MD5 dfca6186129259559b8c491b1d6072c6 openafs-gentoo-0.2a.tar.bz2 17761
diff --git a/net-fs/openafs-kernel/openafs-kernel-1.4.0_rc3.ebuild b/net-fs/openafs-kernel/openafs-kernel-1.4.0_rc3.ebuild
new file mode 100644 (file)
index 0000000..4b1a8bc
--- /dev/null
@@ -0,0 +1,50 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-fs/openafs-kernel/openafs-kernel-1.4.0_rc3.ebuild,v 1.1 2005/09/05 07:48:34 stefaan Exp $
+
+inherit eutils linux-mod versionator toolchain-funcs
+
+PATCHVER=0.2a
+MY_PN=${PN/-kernel}
+MY_PV=${PV/_/-}
+MY_P=${MY_PN}-${MY_PV}
+S=${WORKDIR}/${MY_P}
+DESCRIPTION="The OpenAFS distributed file system kernel module"
+HOMEPAGE="http://www.openafs.org/"
+SRC_URI="http://openafs.org/dl/${MY_PN}/candidate/${MY_PV}/${MY_P}-src.tar.bz2
+       mirror://gentoo/${MY_PN}-gentoo-${PATCHVER}.tar.bz2
+       http://dev.gentoo.org/~stefaan/distfiles/${MY_PN}-gentoo-${PATCHVER}.tar.bz2"
+
+LICENSE="IPL-1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~x86"
+
+PATCHDIR=${WORKDIR}/gentoo/patches/$(get_version_component_range 1-2)
+
+pkg_setup() {
+       linux-mod_pkg_setup
+}
+
+src_unpack() {
+       unpack ${A}; cd ${S}
+
+       EPATCH_SUFFIX="patch" epatch ${PATCHDIR}
+}
+
+src_compile() {
+       econf --with-linux-kernel-headers=${KV_DIR} || die "Failed: econf"
+       ARCH="$(tc-arch-kernel)" make only_libafs || die "Failed: make"
+}
+
+src_install() {
+       MOD_SRCDIR=$(expr ${S}/src/libafs/MODLOAD-*)
+       if [ ! -e ${MOD_SRCDIR}/libafs.${KV_OBJ} ]; then
+               cp ${MOD_SRCDIR}/libafs-*.${KV_OBJ} ${MOD_SRCDIR}/libafs.${KV_OBJ} \
+                       || die "Couldn't find compiled kernel module"
+       fi
+
+       MODULE_NAMES='libafs(openafs:$MOD_SRCDIR)'
+
+       linux-mod_src_install
+}
+
index a70c219312957dd56f70d810ddf9eaeb8c95f338..64af0887edd10a27a4bb33a41d7575e4483fb561 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for net-fs/openafs
 # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-fs/openafs/ChangeLog,v 1.51 2005/09/02 16:50:36 stefaan Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-fs/openafs/ChangeLog,v 1.52 2005/09/05 07:50:10 stefaan Exp $
+
+*openafs-1.4.0_rc3 (05 Sep 2005)
+
+  05 Sep 2005; Stefaan De Roeck <stefaan.deroeck@gentoo.org>
+  +openafs-1.4.0_rc3.ebuild:
+  Version bump to 1.4.0_rc3
 
 *openafs-1.4.0_rc2-r1 (02 Sep 2005)
 *openafs-1.2.13-r2 (02 Sep 2005)
index 7a59bac6ad50b9a52b354a24080c7e7cc1c0bd49..e5055fb5463549803dc51d028d6e94ab7bb3f91f 100644 (file)
@@ -3,6 +3,7 @@ MD5 59bbb0e897a1a23a82305e12742e9ac6 metadata.xml 398
 MD5 724bc6d7494376e988f9b32ef90071ba openafs-1.2.13-r2.ebuild 9986
 MD5 3880fe8a3b787d05f3cce22e553aa715 openafs-1.2.13.ebuild 8637
 MD5 161bd598fc762eca1bab7390fc9e531f openafs-1.3.85.ebuild 8711
+MD5 890571336f60c8cf54277a0cd33ac725 openafs-1.4.0_rc3.ebuild 10407
 MD5 92fd49421614bc6c108b0e77b7c349d9 openafs-1.2.13-r1.ebuild 9869
 MD5 9106d1f894ff97e7f12f6bca2efec680 openafs-1.2.10-r1.ebuild 2426
 MD5 890571336f60c8cf54277a0cd33ac725 openafs-1.4.0_rc2-r1.ebuild 10407
@@ -23,3 +24,4 @@ MD5 9554c33f806d3f69d9497d6c56d55b4e files/openafs-pinstall-execve.patch 1766
 MD5 28ae5081e8e323cd402a659ac5e0730c files/openafs-typechange.patch 1371
 MD5 a1b6ea45c7ab974a743757727b6ea8ce files/digest-openafs-1.2.13-r2 144
 MD5 1575dfbf4bdd9cd86ff444b5bed1c959 files/digest-openafs-1.4.0_rc2-r1 222
+MD5 c34ff780d55a6cb8a4776f42ab0daa74 files/digest-openafs-1.4.0_rc3 222
diff --git a/net-fs/openafs/files/digest-openafs-1.4.0_rc3 b/net-fs/openafs/files/digest-openafs-1.4.0_rc3
new file mode 100644 (file)
index 0000000..4f507bf
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 5cf435d42242a30490906a5e4e8ae9bf openafs-1.4.0-rc3-src.tar.bz2 10978405
+MD5 6fe3dc4a8b3b2ce551dff3f6bbe954b0 openafs-1.4.0-rc3-doc.tar.bz2 2596924
+MD5 873d0ced47710170589ac797808a1598 openafs-gentoo-0.2b.tar.bz2 17242
diff --git a/net-fs/openafs/openafs-1.4.0_rc3.ebuild b/net-fs/openafs/openafs-1.4.0_rc3.ebuild
new file mode 100644 (file)
index 0000000..c977b67
--- /dev/null
@@ -0,0 +1,324 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-fs/openafs/openafs-1.4.0_rc3.ebuild,v 1.1 2005/09/05 07:50:10 stefaan Exp $
+
+inherit flag-o-matic eutils toolchain-funcs versionator
+
+PATCHVER=0.2b
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+S=${WORKDIR}/${MY_P}
+DESCRIPTION="The OpenAFS distributed file system"
+HOMEPAGE="http://www.openafs.org/"
+SRC_URI="http://openafs.org/dl/${PN}/candidate/${MY_PV}/${MY_P}-src.tar.bz2
+       doc? ( http://openafs.org/dl/${PN}/candidate/${MY_PV}/${MY_P}-doc.tar.bz2 )
+       mirror://gentoo/${PN}-gentoo-${PATCHVER}.tar.bz2
+       http://dev.gentoo.org/~stefaan/distfiles/${PN}-gentoo-${PATCHVER}.tar.bz2"
+
+LICENSE="IPL-1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~x86"
+IUSE="debug kerberos pam doc"
+
+RDEPEND="=net-fs/openafs-kernel-${PV}*
+       pam? ( sys-libs/pam )
+       kerberos? ( virtual/krb5 )"
+
+PATCHDIR=${WORKDIR}/gentoo/patches/$(get_version_component_range 1-2)
+CONFDIR=${WORKDIR}/gentoo/configs
+SCRIPTDIR=${WORKDIR}/gentoo/scripts
+
+src_unpack() {
+       unpack ${A}; cd ${S}
+
+       # Apply patches to apply chosen compiler settings, fix the hardcoded paths
+       # to be more FHS friendly, and the fix the incorrect typecasts for va_arg
+       EPATCH_SUFFIX="patch" epatch ${PATCHDIR}
+}
+
+src_compile() {
+       # cannot use "use_with" macro, as --without-krb5-config crashes the econf
+       local myconf=""
+       if use kerberos; then
+               myconf="--with-krb5-conf=$(type -p krb5-config)"
+       fi
+
+       econf \
+               $(use_enable pam) \
+               $(use_enable debug) \
+               --enable-largefile \
+               ${myconf} || die econf
+
+       emake -j1 all_nolibafs || die "Build failed"
+}
+
+src_install() {
+       make DESTDIR=${D} install_nolibafs || die "Installing failed"
+
+       # pam_afs and pam_afs.krb have been installed in irregular locations, fix
+       if use pam; then
+               dodir /$(get_libdir)/security
+               mv ${D}/usr/$(get_libdir)/pam_afs* ${D}/$(get_libdir)/security
+       fi
+
+       # compile_et collides with com_err.  Remove it from this package.
+       rm ${D}/usr/bin/compile_et
+
+       # avoid collision with mit_krb5's version of kpasswd
+       mv ${D}/usr/bin/kpasswd ${D}/usr/bin/kpasswd_afs
+       mv src/man/kpasswd.1 src/man/kpasswd_afs.1
+
+       # install manuals
+       doman src/man/*.?
+
+       use kerberos && doman src/aklog/aklog.1
+       use pam && doman src/pam/pam_afs.5
+
+       # minimal documentation
+       dodoc ${CONFDIR}/README ${CONFDIR}/ChangeLog*
+
+       # documentation package
+       if use doc; then
+               cp -pPR doc/* ${D}/usr/share/doc/${P}
+       fi
+
+       # Gentoo related scripts
+       newconfd ${CONFDIR}/afs-client afs-client
+       newconfd ${CONFDIR}/afs-server afs-server
+       newinitd ${SCRIPTDIR}/afs-client afs-client
+       newinitd ${SCRIPTDIR}/afs-server afs-server
+
+       # used directories: client
+       keepdir /etc/openafs
+       keepdir /var/cache/openafs
+
+       # used directories: server
+       keepdir /etc/openafs/server
+       diropts -m0700
+       keepdir /var/lib/openafs
+       keepdir /var/lib/openafs/db
+       keepdir /var/lib/openafs/logs
+}
+
+migrate_to_fhs() {
+       # conventions:
+       # only automatically migrate if the destination directories are
+       # as of yet non-existant
+
+       # path translations
+       local oldafsconfdir=${ROOT}usr/afs/etc
+       local newafsconfdir=${ROOT}etc/openafs/server
+       local oldviceetcdir=${ROOT}usr/vice/etc
+       local newviceetcdir=${ROOT}etc/openafs
+       local oldafslocaldir=${ROOT}usr/afs/local
+       local newafslocaldir=${ROOT}var/lib/openafs
+       local oldafsdbdir=${ROOT}usr/afs/db
+       local newafsdbdir=${ROOT}var/lib/openafs/db
+
+       # detect Transarc afsconfdir
+       local afsconfdir=0
+       [ ! -L ${oldafsconfdir} -a -d ${oldafsconfdir} -a ! -e ${newafsconfdir} ] && afsconfdir=1
+
+       # detect Transarc viceetcdir
+       local viceetcdir=0
+       local viceetcsoftlink=0
+       if [ -d ${oldviceetcdir} -a ! -e ${newviceetcdir} ]; then
+               if [ ! -L ${oldviceetcdir} ]; then
+                       viceetcdir=1
+               else
+                       if [ $(readlink ${oldviceetcdir}) = /etc/afs ]; then
+                               viceetcdir=1
+                               viceetcsoftlink=1
+                       fi
+               fi
+       fi
+
+       # detect Transarc afslocaldir
+       local afslocaldir=0
+       [ ! -L ${oldafslocaldir} -a -d ${oldafslocaldir} -a ! -e ${newafslocaldir} ] && afslocaldir=1
+
+       # detect Transarc afsdbdir
+       local afsdbdir=0
+       [ ! -L ${oldafsdbdir} -a -d ${oldafsdbdir} -a ! -e ${newafsdbdir} ] && afsdbdir=1
+
+       # detect Transarc afsbosconfigdir
+       local afsbosconfigdir=0
+       [ ${afslocaldir} = 1 -a -f ${oldafslocaldir}/BosConfig ] && afsbosconfigdir=1
+
+       # any of these?
+       local any=$((${afsconfdir}+${viceetcdir}+${afsdbdir}+${afslocaldir}))
+
+       # No migration needed?  Then bail out
+       if [ ${any} = 0 ]; then
+               return 0
+       fi
+
+       # Root not / ?  Then do not attempt automatic migration
+       if [ "$ROOT" != "/" ]; then
+               ewarn Old-style configuration files found, but not migrating
+               ewarn because installation rootdir is not /
+               ebeep 5
+               return 0
+       fi
+
+       # detect whether an installation with old config files is running
+       local pid
+       if pid=$(pgrep -n -U 0 bosserver) &>/dev/null; then
+               # find location of executable
+               if ! executable=$(readlink /proc/${pid}/exe); then
+                       die "Couldn't execute readlink on bosserver process"
+               fi
+               # if executable is not located in /usr/sbin, assume Transarc locations
+               if [[ $executable != ${ROOT}usr/sbin/* ]]; then
+                       ewarn "Found a running process with the name \"bosserver\" and pid ${pid}"
+                       ewarn "that is not located in /usr/sbin.  This suggests a running"
+                       ewarn "OpenAFS-server with traditional TransARC path conventions."
+                       ewarn "This installation procedure aims to migrate old"
+                       ewarn "configuration files to new FHS-conform locations."
+                       ewarn "Please stop the running server and reattempt the upgrade"
+                       die "Installation aborted because of running OpenAFS server"
+               fi
+       fi
+
+       # warn about migration
+       ewarn
+       ewarn "OpenAFS configuration/data-files have been found in old"
+       ewarn "TransARC-style locations, for which the standard FHS equivalents"
+       ewarn "do not exist yet.  "
+       ewarn "Following procedure will copy those files to the new locations such"
+       ewarn "that, given a previously working configuration, both server"
+       ewarn "and client should restart without problems.  Files will be copied"
+       ewarn "only, and not removed from the old locations.  For assistance"
+       ewarn "in removing the old files, consult the documentation in"
+       ewarn "/usr/share/openafs/gentoo"
+       ewarn "Will continue in 30 seconds, press Ctrl-C to abort"
+       ewarn
+       ebeep 10
+       epause 20
+
+       # fortunately, there's no overlap between the old locations and the new ones
+
+       # afsconfdir: migrate /usr/afs/etc to /etc/openafs/server
+       if [ ${afsconfdir} = 1 ]; then
+               mkdir -m 755 -p ${newafsconfdir}
+               cp ${oldafsconfdir}/* ${newafsconfdir}
+       fi
+
+       # viceetcdir: migrate /usr/vice/etc (likely a link to /etc/afs) to /etc/openafs
+       if [ ${viceetcdir} = 1 ]; then
+               mkdir -m 755 -p ${newviceetcdir}
+               cp ${oldviceetcdir}/* ${newviceetcdir}
+       fi
+
+       # afslocaldir: migrate /usr/afs/local to /var/lib/openafs
+       if [ ${afslocaldir} = 1 ]; then
+               mkdir -m 700 -p ${newafslocaldir}
+               cp ${oldafslocaldir}/* ${newafslocaldir}
+
+               # afsbosconfigdir: migrate /usr/afs/local/BosConfig to /etc/openafs/BosConfig
+               if [ ${afsbosconfigdir} = 1 ]; then
+                       sed -i \
+                               -e 's:/usr/afs/bin/:/usr/libexec/openafs/:g' \
+                               -e 's:/usr/afs/etc:/etc/openafs/server:g' \
+                               -e 's:/usr/afs/bin:/usr/bin:g' \
+                               ${newafslocaldir}/BosConfig
+                       if [ -d ${newviceetcdir} ]; then
+                               mv ${newafslocaldir}/BosConfig ${newviceetcdir}
+                       else
+                               ewarn
+                               ewarn "No ${newviceetcdir} found, couldn't move BosConfig there,"
+                               ewarn "it will remain in ${newafslocaldir}.  Please investigate"
+                               ewarn "before attempting to start the server"
+                               ewarn
+                               ebeep 3
+                       fi
+               fi
+       fi
+
+       # afsdbdir: migrate /usr/afs/db to /var/lib/openafs/db
+       if [ ${afsdbdir} = 1 ]; then
+               mkdir -m 700 -p ${newafsdbdir}
+               cp ${oldafsdbdir}/* ${newafsdbdir}
+       fi
+
+       ewarn "Migration finished"
+       ewarn "Please remember to manually migrate disk-cache (if present)"
+       ewarn "Alter /etc/openafs/cacheinfo to do so"
+       ebeep 5
+}
+
+migrate_configfile() {
+       local oldconfigfile=${ROOT}etc/conf.d/afs
+       local newconfigfile=${ROOT}etc/conf.d/afs-client
+
+       if [ -f ${oldconfigfile} -a ! -e ${newconfigfile} ]; then
+               cp ${oldconfigfile} ${newconfigfile}
+       fi
+}
+
+pkg_preinst() {
+       migrate_to_fhs
+       migrate_configfile
+
+       ## Somewhat intelligently install default configuration files
+       ## (when they are not present)
+       # CellServDB
+       if [ ! -e ${ROOT}etc/openafs/CellServDB ] \
+               || grep "GCO Public CellServDB" ${ROOT}etc/openafs/CellServDB &> /dev/null
+       then
+               cp ${CONFDIR}/CellServDB ${IMAGE}etc/openafs
+       fi
+       # cacheinfo: use a default location cache, 50 megabyte in size
+       # (should be safe for about any root partition, the user can increase
+       # the size as required)
+       if [ ! -e ${ROOT}etc/openafs/cacheinfo ]; then
+               echo "/afs:/var/cache/openafs:50000" > ${IMAGE}etc/openafs/cacheinfo
+       fi
+       # ThisCell: default to "openafs.org"
+       if [ ! -e ${ROOT}etc/openafs/ThisCell ]; then
+               echo "openafs.org" > ${IMAGE}etc/openafs/ThisCell
+       fi
+}
+
+pkg_postinst() {
+       # See bug 9849
+       # Create afs mountpoint
+       mkdir /afs 2>/dev/null
+
+       einfo
+       einfo "For browsing global Cells, please get CellServDB from"
+       einfo "/usr/share/doc/${PF} and put in /etc/openafs.  Then start"
+       einfo "using /etc/init.d/afs right away."
+       einfo "For more functionality, look at the limited README in the"
+       einfo "same directory, or turn to the more elaborate procedures"
+       einfo "described on http://www.openafs.org (quick beginnings)"
+       einfo "After initial server setup, you can edit /etc/conf.d/afs"
+       einfo "to enable the BOS Server."
+       einfo ""
+       einfo "To use AFS fully, you need either to start:"
+       einfo "1. kaserver, which is included with openafs but as it is"
+       einfo "based on kerberos4, it is not recommended."
+       einfo "2. app-crypt/kth-krb, but as it is also based on kerberos4 protocol,"
+       einfo "   you can keep passwords replicated in contrast to kaserver, but still"
+       einfo "   don't waste your time here."
+       einfo "3. app-crypt/heimdal, which is kerberos5 distribution written in Europe,"
+       einfo "   so no US export restrictions apply (*recommended*, compatible with"
+       einfo "   MIT krb5, see below)."
+       einfo "   BTW: if you need kerberos4 backwards compatibility,"
+       einfo "   heimdal can be compiled with --with-krb4 switch to provide it, but"
+       einfo "   app-crypt/kth-krb must be installed so that heimdal's configure"
+       einfo "   can find it. Beware that krb4 approach is not considered"
+       einfo "   safe anymore, so do not install kth-krb unless you really need it."
+       einfo "4. app-crypt/mit-krb5, if export restrictions allow you to do so."
+       einfo
+
+       epause 20
+       ebeep 5
+}
+
+pkg_prerm() {
+       # See bug 9849
+       # Remove afs mountpoint
+       rmdir /afs 2>/dev/null
+}
+