Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Nov 2001 09:24:06 +0100 (CET)
From:      Simon J Mudd <sjmudd@pobox.com>
To:        <questions@freebsd.org>
Subject:   Packaging with ports (was: gv port builds but fails - needing libpng.so.4)
Message-ID:  <Pine.LNX.4.33.0111260851330.1856-100000@phoenix.ea4els.ampr.org>
In-Reply-To: <15361.39173.28696.229731@guru.mired.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 25 Nov 2001, Mike Meyer wrote:

> Simon J Mudd <sjmudd@pobox.com> types:
> > On Mon, 26 Nov 2001, Edwin Groothuis wrote:
> > However I have several duplicate packages installed, amongst them:
> > 
> > kdelibs-2.1.1       Libraries for KDE2
> > kdelibs-2.2_3       Libraries for KDE2
> > 
> > I've in the past found that installing or upgrading ports doesn't tidily 
> > remove the previously installed ports and can cause all sorts of problems.
> 
> You're right - you have to remove the old port/package to get it
> cleaned up tidily. That's usually recommended, but some people would
> rather avoid it because doing so may mean rebuilding a lot of ports
> that depend on it.

I'm still surprised that I'm allowed to install kdelibs-2.2_3 
over kdelibs-2.1.1.  That IMHO shouldn't be allowed.

Those files with different paths aren't affected.
Those files with the same names which differ will effectively wipe out the 
older version.  this conflict effectively makes the stored package 
information wrong and misleading.

There appears also to be no check if "another package uses" each file.
Doing that with each file in the packing list would ensure that "common 
files" weren't deleted, even if you did get into the state I'm in.

> > In cases where the port's configuration files are important (a web o mail
> > server for example), won't the make deinstall remove all these
> > configuration files, thus losing vital information?
> 
> If it does, that's a nono on the port authors part. Ports that require
> configuration are supposed to install sample config files and tell you
> to copy and edit those, or otherwise avoid remove your config
> files. If you find a port that removes configuration information, a
> note to the port author is in order. If you can't recover the removed
> copy from a backup afterwards, then fixing your admin procedures is in
> order.

Ok, this isn't very clear (to me) nor I think explained in the ports 
documentation.  If the sample config files are the ones which are marked 
installed and the real ones aren't marked at all then you are right I 
guess the real config files won't be lost if you make deinstall a package.
I wasn't really clear about this.

> Putting such things in a source code control system makes all this a
> much saner. You branch from the sample file to the real one, then the
> updated is a vendor update and the software handles much of the merge
> work.

I think thats a separate issue.  It obviously makes sense to use a source 
control system when the files are important and are modified on a regular 
basis.  It also makes sense that deinstalling a package doesn't remove 
this "vital" information, though from what you say this doesn't appear to 
be a problem - it was my misunderstanding.

> > While the port system works quite well, I've found it rather lacking 
> > regarding dependency checking, upgrade procedures and son compared to 
> > other packaging mechanisms, of which rpm comes to mind as being the one 
> > I'm most familiar with.
> 
> If that's the case, you're getting into trouble with ports for the
> same reason I hate rpm - you're not really using the tools properly.

Perhaps.  There is certainly a large "culture difference" between FreeBSD 
and Linux, between system setup and use and many other things.

However what rpm and the packages collection try to provide (IMO) are 
basically similar, although maybe attacked from different angles.

I'm not sure what you hate about rpm.  Perhaps you could enlighten me?

I think that perhaps "make install" in ports is rather dangerous.  
there appears to be no checks that the installed software will 
overwrite existing packages or software.  Perhaps this could be 
improved, or am I missing some command to avoid this problem?

> > The fact that the ports allow me to get into the situation I'm in is 
> > really asking for trouble later down the road as I'm seeing now.
> > Is this a valid criticism?
> 
> Based on my experience with rpm, I'd say implying that ports/pkgs are
> worse than rpm is invalid. But the point of your criticism is
> valid. The ports/package/install system are undergoing an overhaul,
> but that isn't far enough along to be used in -current. For now, you

This is what I'd heard. However, while I am subscribed to -current, which 
I follow very briefly, I haven't noticed any talk about the packaging 
(ports) system it's shortcoming and good points and how they are 
considering improving it.

> can use the portupgrade port/pkg to help with the task of maintaining
> the package database.

Ok.  Again thanks for your insight.

Simon
-- 
Simon J Mudd,   Tel: +34-91-408 4878,  Mobile: +34-605-085 219
Madrid, Spain.  email: sjmudd@pobox.com,  Postfix RPM Packager


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.4.33.0111260851330.1856-100000>