From owner-freebsd-stable Tue Aug 20 15:28:40 2002 Delivered-To: freebsd-stable@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2E53D37B400 for ; Tue, 20 Aug 2002 15:28:36 -0700 (PDT) Received: from starship.alienwebshop.com (starship.alienwebshop.com [209.58.150.193]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8CE2943E6E for ; Tue, 20 Aug 2002 15:28:35 -0700 (PDT) (envelope-from karlsson@panix.com) Received: by starship.alienwebshop.com (Postfix, from userid 1007) id 10A95BB20; Tue, 20 Aug 2002 18:28:35 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by starship.alienwebshop.com (Postfix) with ESMTP id 0F2963F12 for ; Tue, 20 Aug 2002 18:28:35 -0400 (EDT) Date: Tue, 20 Aug 2002 18:28:35 -0400 (EDT) From: Lukas Karlsson To: freebsd-stable@freebsd.org Subject: pkg_update problem. Message-ID: <20020820181333.E29597-100000@starship.alienwebshop.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG I've been trying to use pkg_update to upgrade ports on my FreeBSD 4.6.2 Stable system. The process I've been using is: cd /usr/ports/dirt/portname make clean make make package pkg_update portname-1.2.3.tbz The behavior is basically that all the files in the original package file the MD5 checksum, but it deletes them anyway. Then it fails to remove all the files, because they don't exist (because it's already deleted them). Then it fails to update the +REQUIRED_BY file, because it has the version number wrong. Here is an example output for me attempting to upgrade p5-Storable: > sudo pkg_update p5-Storable-2.04.tbz Updating p5-Storable packages to version 2.04. pkg_delete: `/usr/local/lib/perl5/5.6.1/man/man3/Storable.3.gz' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/Storable.so' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/_freeze.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/_retrieve.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/_store.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/_store_fd.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/autosplit.ix' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/fd_retrieve.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/freeze.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/lock_nstore.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/lock_retrieve.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/lock_store.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/nfreeze.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/nstore.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/nstore_fd.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/retrieve.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/store.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/store_fd.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/thaw.al' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/Storable.pm' fails original MD5 checksum - deleted anyway. pkg_delete: `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/.packlist' fails original MD5 checksum - deleted anyway. pkg_delete: unable to completely remove directory '/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable' pkg_delete: couldn't entirely delete package (perhaps the packing list isincorrectly specified?) pkg_delete: file `/usr/local/lib/perl5/5.6.1/man/man3/Storable.3.gz' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/Storable.pm' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/.packlist' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/Storable.bs' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/Storable.so' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/_freeze.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/_retrieve.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/_store.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/_store_fd.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/autosplit.ix' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/fd_retrieve.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/freeze.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/lock_nstore.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/lock_retrieve.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/lock_store.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/nfreeze.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/nstore.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/nstore_fd.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/retrieve.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/store.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/store_fd.al' doesn't really exist pkg_delete: file `/usr/local/lib/perl5/site_perl/5.6.1/mach/auto/Storable/thaw.al' doesn't really exist pkg_delete: couldn't entirely delete package (perhaps the packing list isincorrectly specified?) pkg_add: package bsdpan-CPAN-1.61 has no origin recorded pkg_add: package bsdpan-DB_File-1.803 has no origin recorded pkg_add: package bsdpan-Pod-LaTeX-0.54 has no origin recorded pkg_add: package bsdpan-Term-Cap-1.07 has no origin recorded pkg_add: package bsdpan-Test-1.20 has no origin recorded pkg_add: package bsdpan-Text-Soundex-2.20 has no origin recorded pkg_add: package bsdpan-Text-Tabs+Wrap-2001.0929 has no origin recorded Can't open /var/db/pkg/p5-Storable-2.04./+REQUIRED_BY, No such file or directory > It's the last line that leads me to believe that the pkg version isn't being set properly. A quick look at the source for pkg_update shows this: sub get_version($) { my ($pkg) = @_; $pkg =~ /(.+)-([0-9\.]+)/; if (! $2) { return($pkg, ""); } else { return ($1, $2); } } The regular expression there is not correct, if you assum that package filenames will be of the form: some-package-1.2.3.tbz as they are output by "make package." Perhaps: $pkg =~ /(.+)-([0-9\.]+\.)/; or $pkg =~ /(.+)-([0-9\.]+[0-9])/; would be more appropriate. Though I'm sure there's an even better fix for that part of the problem. However, even after attempting to fix that regular expression, the package installation still failed (minus the last line, which didn't generate an error). I will be happy to look into this more, but the first thing I really wanted to find out is am I the only person having this problem? /l ----------------------------------------------------------------------------- Lukas Karlsson karlsson@panix.com Cambridge, MA http://lukwam.com/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message