Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 2 Nov 2014 10:24:55 +0100
From:      Marc UBM <ubm.freebsd@googlemail.com>
To:        current@FreeBSD.org
Subject:   Re: pkg 1.4 freeze please test test test!
Message-ID:  <20141102102455.30d42f85ff81e079788eae06@gmail.com>
In-Reply-To: <20141101224549.GG15967@ivaldir.etoilebsd.net>
References:  <20141028231933.GG26796@ivaldir.etoilebsd.net> <20141101161332.b9c8fc19bf9fc54f73bc5c00@gmail.com> <20141101224549.GG15967@ivaldir.etoilebsd.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 1 Nov 2014 23:45:49 +0100
Baptiste Daroussin <bapt@FreeBSD.org> wrote:

Thanks for the quick reply! :-)

[...]

> > 
> > The update is failing for me with:
> > 
> > .../usr/ports/ports-mgmt/pkg-devel# make all install clean
> > ===>  Installing for pkg-1.4.0.a3
> > ===>  Checking if pkg already installed
> > pkg-static: sqlite error while executing DROP INDEX
> > packages_unique;CREATE UNIQUE INDEX packages_unique ON packages(name);
> > in file pkgdb.c:2246: UNIQUE constraint failed: packages.name *** Error
> > code 74
> > 
> > Stop.
> > make[1]: stopped in /usr/ports/ports-mgmt/pkg-devel
> > *** Error code 1
> > 
> > Stop.
> > make: stopped in /usr/ports/ports-mgmt/pkg-devel
> > 
> > 
> > 
> > portmaster fails with:
> > root@ubm:/usr/ports/ports-mgmt/pkg-devel# portmaster -d pkg
> >         ===>>> No ORIGIN in /var/db/pkg/pkgconf-0.9.7/+CONTENTS
> > 
> > 
> > ===>>> Cannot continue
> > ===>>> Aborting update
> > 
> > ===>>> Killing background jobs
> > Terminated
> > ===>>> Exiting
> > 
> > make.conf related options:
> > 
> > #enable pkgng (might be superfluous)
> > WITH_PKGNG=yes
> > #enable PKGNG devel
> > WITH_PKGNG=devel
> > 
> > Am I doing something wrong?
> 
> You are doing nothing wrong but that probably means you have ancient packages
> that never got upgraded (in the old time it was allowed to have 2 packages
> installed with the same name) we have fixed that over the time and that is why
> we had unicity set to origin as a hack for a while, we are now moving to unique
> name so you have to make sure that all your installed packages are up to date
> before moving to new pkg.

Hmm, that seems highly unlikely. I'm upgrading my ports pretty
regularily (maybe lagging two or three months behind at the worst).
I also was running with pkg 1.4.a16 before the upgrade failed.
Bootstrapping the stable version works (just tried that) - but if I try
going from pkg-1.3.8_3 to pkg-devel, it fails with exactly the same
error.

Even if by chance there is a single ancient package on my system that
was never upgraded (something discontinued with no dependencies like
e.g. multimedia/xmms comes to mind) - should that really stop users from
upgrading to 1.4? And if yes, shouldn't there be a way to tell the
users what the offending package is?

> At least make sure you do not have 2 packages with the same name.
> 
> Concerning portmaster I have no idea why it now thinks you are not using
> pkg :(

Once pkg-1.3.8_3 is bootstrapped, portmaster tries using pkg again, but
then (predictably) fails with:

===>   An older version of pkg is already installed (pkg-1.3.8_3)
      You may wish to ``make deinstall'' and install this port again
      by ``make reinstall'' to upgrade it properly.
      If you really wish to overwrite the old port of pkg
      without deleting it first, set the variable "FORCE_PKG_REGISTER"
      in your environment or the "make install" command line.
*** Error code 1

So I guess the portmaster script checks if any version of pkg is
installed and if none is found, it falls back to the pre-pkg ports
management.

Bye
Marc




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20141102102455.30d42f85ff81e079788eae06>