View Single Post
  #1   (View Single Post)  
Old 16th January 2010
J65nko J65nko is offline
Join Date: May 2008
Location: Budel - the Netherlands
Posts: 3,506
Default FreeBSD ports conflicts handling


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:


$ cd /usr/ports/something/foo22
$ make
$ pkg_delete foo21-2.1
$ make install


$ 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.
You don't need to be a genius to debug a pf.conf firewall ruleset, you just need the guts to run tcpdump
Reply With Quote