Our package system: "Fundamentally Flawed" - A Linux User.

Dan Nelson dnelson at allantgroup.com
Sun Jul 18 23:40:51 PDT 2004


In the last episode (Jul 19), Travis Poppe said:
> Say for example I have a copy of gettext-0.13 on my system and one of
> the binary packages I'm attempting to install was compiled and linked
> against gettext-0.12?
> 
> Instead of downloading and installing the other version of gettext
> along with the existing one as to not break the linked libs (because
> gettext-0.13 uses a different library name) like it should, pkg_add
> only gives a warning and an assumption that the install went well.
> 
> Now, the user goes to run the package and gets a big fat error:
> libintl.so.X not found.
> 
> For a user like myself, this is no problem. I can recognize the error
> and figure out how to fix it manually. For a user considering
> switching to FreeBSD from Linux, this is considered a "fundamental
> flaw" in our package system and may lead to a very annoying flame
> war. Can this be fixed? Why hasn't it been fixed? Am I doing
> something wrong? Has it been fixed?

Portupgrade should handle this correctly; when deleting old packages
during an upgrade, it moves the shared libraries to compat/pkg so old
binaries can still use them.  If passed -PP, portupgrade will only use
packages (with one -P, it will try and fetch a package but if it can't
or the package is too old, it will build from source).

Portupgrade is not in the base system because it requires Ruby, and
scripting languages (apart from Bourne shell script :) change far too
often to be in the base system.  They're better off as ports so they
can be updated more frequently.

I'll let someone else answer your questions about frequency of port
builds and why pkg_add doesn't fetch the latest ones.  You can take a
look at http://bento.freebsd.org and/or http://pointyhat.freebsd.org to
see when the last full package buld was.

-- 
	Dan Nelson
	dnelson at allantgroup.com


More information about the freebsd-questions mailing list