You are not logged in.

#1 2008-05-22 02:47:38

arew264
Member
From: Friendswood, Texas, US
Registered: 2006-07-01
Posts: 394
Website

/lib: exists in filesystem

I'm trying to install a package I built from the AUR (OpenAFS), and I got the strangest error:

[arew264@lagbox OpenAFS]$ ls
PKGBUILD                         openafs-1.4.7-src.tar.bz2  openafs.rc  src
openafs-1.4.7-2-i686.pkg.tar.gz  openafs.install            pkg
[arew264@lagbox OpenAFS]$ sudo pacman -A openafs-1.4.7-2-i686.pkg.tar.gz
loading package data...
checking dependencies...
(1/1) checking for file conflicts                   [#####################] 100%
error: failed to prepare transaction (conflicting files)
openafs: /lib exists in filesystem

errors occurred, no packages were upgraded.
[arew264@lagbox OpenAFS]$ find ./pkg
./pkg
./pkg/etc
./pkg/etc/rc.d
./pkg/etc/rc.d/openafs
./pkg/etc/openafs
./pkg/etc/openafs/CellServDB
./pkg/etc/openafs/cacheinfo
./pkg/etc/openafs/cachedir
./pkg/etc/openafs/ThisCell
./pkg/etc/openafs/afs.conf.client
./pkg/etc/openafs/afs.conf
./pkg/lib
./pkg/lib/modules
./pkg/lib/modules/2.6.24-ARCH
./pkg/lib/modules/2.6.24-ARCH/fs
./pkg/lib/modules/2.6.24-ARCH/fs/libafs.ko
./pkg/usr
./pkg/usr/bin
./pkg/usr/bin/fs
./pkg/usr/bin/up
./pkg/usr/bin/bos
./pkg/usr/bin/pts
./pkg/usr/bin/sys
./pkg/usr/bin/afsmonitor
./pkg/usr/bin/cmdebug
./pkg/usr/bin/dlog
./pkg/usr/bin/klog
./pkg/usr/bin/knfs
./pkg/usr/bin/aklog
./pkg/usr/bin/dpass
./pkg/usr/bin/scout
./pkg/usr/bin/rxgen
./pkg/usr/bin/unlog
./pkg/usr/bin/kpasswd-openafs
./pkg/usr/bin/livesys
./pkg/usr/bin/xstat_cm_test
./pkg/usr/bin/pagsh.krb
./pkg/usr/bin/kpwvalid
./pkg/usr/bin/translate_et
./pkg/usr/bin/compile_et-openafs
./pkg/usr/bin/pagsh-openafs
./pkg/usr/bin/udebug
./pkg/usr/bin/tokens
./pkg/usr/bin/xstat_fs_test
./pkg/usr/bin/klog.krb
./pkg/usr/bin/tokens.krb
./pkg/usr/lib
./pkg/usr/lib/afs
./pkg/usr/lib/afs/libprocmgmt.a
./pkg/usr/lib/afs/libafsutil.a
./pkg/usr/lib/afs/libkasadmin.a
./pkg/usr/lib/afs/libafsadminutil.a
./pkg/usr/lib/afs/libnull.a
./pkg/usr/lib/afs/libprot.a
./pkg/usr/lib/afs/libbubasics.a
./pkg/usr/lib/afs/libvldb.a
./pkg/usr/lib/afs/libvlib.a
./pkg/usr/lib/afs/libptsadmin.a
./pkg/usr/lib/afs/libfsprobe.a
./pkg/usr/lib/afs/libclientadmin.a
./pkg/usr/lib/afs/libcom_err.a
./pkg/usr/lib/afs/libxstat_cm.a
./pkg/usr/lib/afs/libxstat_fs.a
./pkg/usr/lib/afs/libaudit.a
./pkg/usr/lib/afs/libvolser.a
./pkg/usr/lib/afs/libcfgadmin.a
./pkg/usr/lib/afs/util.a
./pkg/usr/lib/afs/vlib.a
./pkg/usr/lib/afs/libafsint.a
./pkg/usr/lib/afs/libkauth.a
./pkg/usr/lib/afs/libbosadmin.a
./pkg/usr/lib/afs/libacl.a
./pkg/usr/lib/afs/libbos.a
./pkg/usr/lib/afs/libcmd.a
./pkg/usr/lib/afs/libdir.a
./pkg/usr/lib/afs/libvosadmin.a
./pkg/usr/lib/afs/libgtx.a
./pkg/usr/lib/afs/libsys.a
./pkg/usr/lib/afs/libusd.a
./pkg/usr/lib/afs/libkauth.krb.a
./pkg/usr/lib/afs/libauth.krb.a
./pkg/usr/lib/afs/libauth.a
./pkg/usr/lib/afs/libbudb.a
./pkg/usr/lib/afs/libbutm.a
./pkg/usr/lib/afs/libbxdb.a
./pkg/usr/lib/libafsrpc.so
./pkg/usr/lib/librxkad.a
./pkg/usr/lib/libafsauthent.a
./pkg/usr/lib/libuafs.a
./pkg/usr/lib/libubik.a
./pkg/usr/lib/libafsrpc.so.1
./pkg/usr/lib/librx.a
./pkg/usr/lib/libafssetpag.so.1.0
./pkg/usr/lib/libafsrpc.so.1.1
./pkg/usr/lib/libafsauthent.so.1
./pkg/usr/lib/libafsauthent.so
./pkg/usr/lib/pam_afs.so.1
./pkg/usr/lib/librxstat.a
./pkg/usr/lib/libafsauthent.so.1.0
./pkg/usr/lib/libafssetpag.so.1
./pkg/usr/lib/libafsrpc.a
./pkg/usr/lib/openafs
./pkg/usr/lib/openafs/libafs-2.6.24-ARCH.mp.ko
./pkg/usr/lib/libdes.a
./pkg/usr/lib/libjuafs.a
./pkg/usr/lib/liblwp.a
./pkg/usr/lib/libafssetpag.so
./pkg/usr/lib/pam_afs.krb.so.1
./pkg/usr/sbin
./pkg/usr/sbin/fms
./pkg/usr/sbin/kas
./pkg/usr/sbin/kdb
./pkg/usr/sbin/uss
./pkg/usr/sbin/vos
./pkg/usr/sbin/afsd
./pkg/usr/sbin/butc
./pkg/usr/sbin/vsys
./pkg/usr/sbin/kdump
./pkg/usr/sbin/vldb_convert
./pkg/usr/sbin/rmtsysd
./pkg/usr/sbin/rxdebug
./pkg/usr/sbin/backup
./pkg/usr/sbin/copyauth
./pkg/usr/sbin/fstrace
./pkg/usr/sbin/kpwvalid
./pkg/usr/sbin/bosserver
./pkg/usr/sbin/ka-forwarder
./pkg/usr/sbin/kadb_check
./pkg/usr/sbin/restorevol
./pkg/usr/sbin/voldump
./pkg/usr/sbin/volinfo
./pkg/usr/sbin/vldb_check
./pkg/usr/sbin/prdb_check
./pkg/usr/sbin/bos_util
./pkg/usr/sbin/read_tape
./pkg/usr/sbin/pt_util
./pkg/usr/share
./pkg/usr/share/licenses
./pkg/usr/share/licenses/openafs
./pkg/usr/share/licenses/openafs/LICENSE
./pkg/usr/libexec
./pkg/usr/libexec/openafs
./pkg/usr/libexec/openafs/salvager
./pkg/usr/libexec/openafs/ptserver
./pkg/usr/libexec/openafs/kaserver
./pkg/usr/libexec/openafs/upclient
./pkg/usr/libexec/openafs/upserver
./pkg/usr/libexec/openafs/vlserver
./pkg/usr/libexec/openafs/fileserver
./pkg/usr/libexec/openafs/buserver
./pkg/usr/libexec/openafs/volserver
./pkg/usr/include
./pkg/usr/include/rx
./pkg/usr/include/rx/rx_clock.h
./pkg/usr/include/rx/rx.h
./pkg/usr/include/rx/rxkad_prototypes.h
./pkg/usr/include/rx/xdr_prototypes.h
./pkg/usr/include/rx/rx_packet.h
./pkg/usr/include/rx/rx_queue.h
./pkg/usr/include/rx/xdr.h
./pkg/usr/include/rx/rx_misc.h
./pkg/usr/include/rx/rx_null.h
./pkg/usr/include/rx/rx_user.h
./pkg/usr/include/rx/rxkad.h
./pkg/usr/include/rx/rx_prototypes.h
./pkg/usr/include/rx/rx_globals.h
./pkg/usr/include/rx/rx_event.h
./pkg/usr/include/rx/rx_multi.h
./pkg/usr/include/rx/fcrypt.h
./pkg/usr/include/rx/rx_lwp.h
./pkg/usr/include/rx/rx_pthread.h
./pkg/usr/include/rx/rxstat.h
./pkg/usr/include/afs
./pkg/usr/include/afs/ptint.h
./pkg/usr/include/afs/gtxtextobj.h
./pkg/usr/include/afs/gtxobjdict.h
./pkg/usr/include/afs/namei_ops.h
./pkg/usr/include/afs/gtxobjects.h
./pkg/usr/include/afs/kauth.h
./pkg/usr/include/afs/mit-sipb-cr.h
./pkg/usr/include/afs/afs_lhash.h
./pkg/usr/include/afs/debug.h
./pkg/usr/include/afs/afsint.h
./pkg/usr/include/afs/remote.h
./pkg/usr/include/afs/rxgen_consts.h
./pkg/usr/include/afs/unified_afs.h
./pkg/usr/include/afs/gtxcurseswin.h
./pkg/usr/include/afs/nfsclient.h
./pkg/usr/include/afs/acl.h
./pkg/usr/include/afs/afs.h
./pkg/usr/include/afs/cmd.h
./pkg/usr/include/afs/afs_kasAdmin.h
./pkg/usr/include/afs/dir.h
./pkg/usr/include/afs/xfsattrs.h
./pkg/usr/include/afs/icl.h
./pkg/usr/include/afs/ktc.h
./pkg/usr/include/afs/nfs.h
./pkg/usr/include/afs/usd.h
./pkg/usr/include/afs/errors.h
./pkg/usr/include/afs/ptuser.h
./pkg/usr/include/afs/xstat_cm.h
./pkg/usr/include/afs/xstat_fs.h
./pkg/usr/include/afs/afs_stats.h
./pkg/usr/include/afs/afs_clientAdmin.h
./pkg/usr/include/afs/kaport.h
./pkg/usr/include/afs/ktime.h
./pkg/usr/include/afs/viceinode.h
./pkg/usr/include/afs/pthread_nosigs.h
./pkg/usr/include/afs/cellconfig.h
./pkg/usr/include/afs/gtxlightobj.h
./pkg/usr/include/afs/afs_ptsAdmin.h
./pkg/usr/include/afs/gtxkeymap.h
./pkg/usr/include/afs/budb_client.h
./pkg/usr/include/afs/afscbint.h
./pkg/usr/include/afs/afs_utilAdmin.h
./pkg/usr/include/afs/gtxX11win.h
./pkg/usr/include/afs/afssyscalls.h
./pkg/usr/include/afs/gtxwindows.h
./pkg/usr/include/afs/auth.h
./pkg/usr/include/afs/cnvldb.h
./pkg/usr/include/afs/softsig.h
./pkg/usr/include/afs/afs_sysnames.h
./pkg/usr/include/afs/budb.h
./pkg/usr/include/afs/butc.h
./pkg/usr/include/afs/butm.h
./pkg/usr/include/afs/butx.h
./pkg/usr/include/afs/prerror.h
./pkg/usr/include/afs/netutils.h
./pkg/usr/include/afs/fs_stats.h
./pkg/usr/include/afs/gtxframe.h
./pkg/usr/include/afs/keys.h
./pkg/usr/include/afs/osi_inode.h
./pkg/usr/include/afs/afs_atomlist.h
./pkg/usr/include/afs/fileutil.h
./pkg/usr/include/afs/pthread_glock.h
./pkg/usr/include/afs/vlserver.h
./pkg/usr/include/afs/vl_opcodes.h
./pkg/usr/include/afs/partition.h
./pkg/usr/include/afs/prserver.h
./pkg/usr/include/afs/kautils.h
./pkg/usr/include/afs/gtxdumbwin.h
./pkg/usr/include/afs/pterror.h
./pkg/usr/include/afs/sysctl.h
./pkg/usr/include/afs/afsutil.h
./pkg/usr/include/afs/ihandle.h
./pkg/usr/include/afs/stds.h
./pkg/usr/include/afs/venus.h
./pkg/usr/include/afs/vice.h
./pkg/usr/include/afs/afs_cfgAdmin.h
./pkg/usr/include/afs/osi_vfs.h
./pkg/usr/include/afs/afs_Admin.h
./pkg/usr/include/afs/ptserver.h
./pkg/usr/include/afs/procmgmt.h
./pkg/usr/include/afs/error_table.h
./pkg/usr/include/afs/param.h
./pkg/usr/include/afs/afsutil_prototypes.h
./pkg/usr/include/afs/afs_args.h
./pkg/usr/include/afs/voldefs.h
./pkg/usr/include/afs/vnode.h
./pkg/usr/include/afs/vldbint.h
./pkg/usr/include/afs/gtxtextcb.h
./pkg/usr/include/afs/audit.h
./pkg/usr/include/afs/packages.h
./pkg/usr/include/afs/prs_fs.h
./pkg/usr/include/afs/prclient.h
./pkg/usr/include/afs/afs_bosAdmin.h
./pkg/usr/include/afs/tcdata.h
./pkg/usr/include/afs/exporter.h
./pkg/usr/include/afs/fsprobe.h
./pkg/usr/include/afs/bnode.h
./pkg/usr/include/afs/volint.h
./pkg/usr/include/afs/afs_vosAdmin.h
./pkg/usr/include/afs/volser.h
./pkg/usr/include/afs/volume.h
./pkg/usr/include/afs/dirpath.h
./pkg/usr/include/afs/bubasics.h
./pkg/usr/include/afs/assert.h
./pkg/usr/include/afs/budb_errs.h
./pkg/usr/include/afs/gtxinput.h
./pkg/usr/include/afs/fssync.h
./pkg/usr/include/afs/bosint.h
./pkg/usr/include/afs/print.h
./pkg/usr/include/afs/ptclient.h
./pkg/usr/include/afs/bumon.h
./pkg/usr/include/afs/com_err.h
./pkg/usr/include/des.h
./pkg/usr/include/lwp.h
./pkg/usr/include/ubik_int.h
./pkg/usr/include/preempt.h
./pkg/usr/include/timer.h
./pkg/usr/include/des_odd.h
./pkg/usr/include/des_prototypes.h
./pkg/usr/include/lock.h
./pkg/usr/include/ubik.h
./pkg/usr/include/potpourri.h
./pkg/usr/include/mit-cpyright.h
./pkg/usr/include/des_conf.h
./pkg/.PKGINFO
./pkg/.INSTALL
[arew264@lagbox OpenAFS]$

What's different here that would cause pacman to throw this error for a directory? I don't understand this at all.
Do I dare use pacman -Af, or will it wipe my kernel modules?

Last edited by arew264 (2008-05-22 02:48:39)

Offline

#2 2008-05-22 20:44:15

arew264
Member
From: Friendswood, Texas, US
Registered: 2006-07-01
Posts: 394
Website

Re: /lib: exists in filesystem

After untarring the package, what's happening is that the package folder contains /lib/modules/2.6.24-ARCH/fs/libafs.ko, but the actial pkg.tar.gz file contains /lib, a binary file. What would cause that change in packaging?

Offline

#3 2008-05-23 10:55:35

combo
Member
Registered: 2004-09-22
Posts: 28

Re: /lib: exists in filesystem

You should inform us about package creation steps.

Offline

#4 2008-05-23 11:25:22

Stefan Husmann
Member
From: Germany
Registered: 2007-08-07
Posts: 1,391

Re: /lib: exists in filesystem

Not sure but what about pacman -U?

Offline

#5 2008-05-26 18:43:06

arew264
Member
From: Friendswood, Texas, US
Registered: 2006-07-01
Posts: 394
Website

Re: /lib: exists in filesystem

Here's the PKGBUILD:

# Contributor: Szymon Chachulski szym-at-mit-dot-edu
pkgname=openafs
pkgver=1.4.7
pkgrel=2
pkgdesc="An open source client for the AFS distributed file system"
arch=('i686' 'x86_64')
url="http://www.openafs.org"
license=('custom:"IBM Public License Version 1.0"')
depends=(heimdal)
makedepends=(bison flex)
backup=(etc/openafs/ThisCell 
        etc/openafs/cacheinfo 
    etc/openafs/afs.conf 
    etc/openafs/afs.conf.client 
    etc/openafs/CellServDB)
install=openafs.install
source=(http://openafs.org/dl/openafs/$pkgver/$pkgname-$pkgver-src.tar.bz2
        openafs.rc) 
md5sums=('66175f6b3da12874e57180635802c483'
         '85fa92bdd773085c850ced56fbb76021')


build() {
  cd $startdir/src/$pkgname-$pkgver

  # fix autoconf cludge (gentoo bug #218234)
  sed -i 's/^AC_\(AIX\|MINIX\)$//' acinclude.m4

  ./regen.sh
  ./configure --prefix=/usr --sysconfdir=/etc --with-krb5-conf

  sed -i 's/all: aklog asetkey/all: aklog/' $startdir/src/$pkgname-$pkgver/src/aklog/Makefile || return 1
  sed -i 's/${DESTDIR}${afssrvbindir}\/asetkey//' $startdir/src/$pkgname-$pkgver/src/aklog/Makefile || return 1

  make || return 1
  make DESTDIR=$startdir/pkg install || return 1

  mv $startdir/pkg/usr/bin/compile_et $startdir/pkg/usr/bin/compile_et-openafs
  mv $startdir/pkg/usr/bin/kpasswd $startdir/pkg/usr/bin/kpasswd-openafs
  mv $startdir/pkg/usr/bin/pagsh $startdir/pkg/usr/bin/pagsh-openafs

  _kernelver=$(uname -r)

  mkdir -p $startdir/pkg/lib/modules/$_kernelver/fs
  mkdir -p $startdir/pkg/etc/rc.d
  mkdir -p $startdir/pkg/etc/openafs/cachedir
  mkdir -p $startdir/pkg/usr/share/licenses/$pkgname

  cp $startdir/pkg/usr/lib/openafs/libafs-$_kernelver.mp.ko $startdir/pkg/lib/modules/$_kernelver/fs/libafs.ko || \
  cp $startdir/pkg/usr/lib/openafs/libafs-$_kernelver.ko    $startdir/pkg/lib/modules/$_kernelver/fs/libafs.ko || return 1

  cp $startdir/src/$pkgname.rc $startdir/pkg/etc/rc.d/$pkgname
  chmod u+x $startdir/pkg/etc/rc.d/$pkgname

  cp $startdir/src/$pkgname-$pkgver/src/WINNT/install/wix/CellServDB $startdir/pkg/etc/$pkgname/
  cp $startdir/src/$pkgname-$pkgver/src/afsd/afs.conf.linux $startdir/pkg/etc/$pkgname/afs.conf

  cat >> $startdir/pkg/etc/$pkgname/afs.conf.client << EOF
AFS_CLIENT=true
AFS_AFSDB=true
AFS_CRYPT=true
AFS_DYNROOT=true
AFS_FAKESTAT=true
EOF

  cat >> $startdir/pkg/etc/$pkgname/cacheinfo << EOF
/afs:/etc/openafs/cachedir:30000
EOF

  cat >> $startdir/pkg/etc/$pkgname/ThisCell << EOF
andrew.cmu.edu
EOF

  chmod 700 $startdir/pkg/etc/$pkgname/cachedir
  chown root.root $startdir/pkg/etc/$pkgname/cachedir

  cp $startdir/src/$pkgname-$pkgver/src/LICENSE $startdir/pkg/usr/share/licenses/$pkgname
}

Everything works as expected except the /lib directory tree is turned into a binary file (/lib). I ended up getting it to install by copying .INSTALL and .PKGINFO into the pkg directory and running tar -czf openafs[versioninfo].pkg.tar.gz * .INSTALL .PKGINFO (I have to suffix those two because * doesn't grab hidden files).
I'm pretty sure this is a bug because everything is fine in the pkg directory, but the pkg.tar.gz file is wrong.

Offline

#6 2008-05-27 05:21:23

szym
Member
Registered: 2007-11-16
Posts: 14

Re: /lib: exists in filesystem

Hello, I'm the contributor. I have experienced the very same bug: everything builds perfectly, but the tarball has /lib screwed up. However, other people I asked to test it had no problems with it. I think it's a problem with fakeroot.

Offline

#7 2008-05-27 07:10:11

AndyRTR
Developer
From: Magdeburg/Germany
Registered: 2005-10-07
Posts: 1,641

Re: /lib: exists in filesystem

use in either makepkg.conf or in your PKGBUILD

options=(!emptydirs)

Offline

#8 2008-05-27 23:26:29

arew264
Member
From: Friendswood, Texas, US
Registered: 2006-07-01
Posts: 394
Website

Re: /lib: exists in filesystem

I added that to the PKGBUILD and it had no effect.

Offline

#9 2008-06-30 13:50:48

clera
Member
Registered: 2007-10-19
Posts: 5

Re: /lib: exists in filesystem

Anybody figure this out?

If I download the PKGBUILD and run makepkg, the /pkg/lib produced is fine, but when I extract the package archive lib is somehow turned into a file.

If I then run makepkg -R, the new archive produced is correct (/lib is present as a directory in the tarball).

Why would makepkg get it right the second time but not the first ???

Offline

Board footer

Powered by FluxBB