Dislike the way port conflicts are handled now

Sergio de Almeida Lenzi lenzi.sergio at gmail.com
Sat Jan 16 13:07:25 UTC 2010


Em Sáb, 2010-01-16 às 07:00 -0500, b. f. escreveu:

> On Fri, Jan 15, 2010 at 11:57:35PM -0500, Greg Larkin typed:
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> >
> > Craig Whipp wrote:
> > >
> > > On Jan 15, 2010, at 9:44 AM, Kirk Strauser wrote:
> > >
> > >> Until recently, it seems like port dependencies were handled at
> > >> installation time. Lately, they're handled any time I try to do
> > >> anything with a port. I absolutely detest the new behavior. Example
> > >> cases:
> > >>
> > >> OLD WAY:
> > >>
> > >> $ cd /usr/ports/something/foo22
> > >> $ make
> > >> $ pkg_delete foo21-2.1
> > >> $ make install
> > >>
> > >> NEW WAY
> > >>
> > >> $ cd /usr/ports/something/foo22
> > >> $ make
> > >> ===>  foo22 conflicts with installed package(s): foo21-2.1
> > >> $ make fetch
> > >> ===>  foo22 conflicts with installed package(s): foo21-2.1
> > >> $ curse --type=copious
> > >> $ pkg_delete foo21-2.1
> > >> $ make install
> > >>
> > >> This isn't just a hypothetical pain in the butt. An example was being
> > >> unable to build databases/mysql51-client because
> > >> mysql-client-5.0.something was installed. I understand not being able
> > >> to *install* it, but to be prevented from *building* it? In most
> > >> circumstances, I want to be able to delete the old package and install
> > >> the new one with minimal downtime. As another example, can you imagine
> > >> not being able to even run "make fetch" on something huge like
> > >> OpenOffice until you uninstalled the old version?
> > >>
> > >> In the mean time, I've been editing the port's Makefile to remove the
> > >> CONFLICTS line long enough to finish building. That's not very helpful
> > >> for those ports that don't actually build until you run "make
> > >> install", but at least I can get the distfile download out of the way.
> > >> --

Besides. when port XXXX is installed, and you try to build YYYY, 
the YYYY ports gets the include files from filesystem (thus getting XXXX
for includes...) 
this makes you break YYYY, or worst... make a port that is a mix of
both... that
for sure is not what you want...

This way (the new way) forces you to delete the package before build. 
it is radical, but it is safer... that is why I choose FreeBSD....


Sergio


More information about the freebsd-questions mailing list