Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Dec 2005 23:06:35 +1030
From:      "Daniel O'Connor" <doconnor@gsoft.com.au>
To:        freebsd-current@freebsd.org
Cc:        Chris Gilbert <Chris@lainos.org>, Brian Candler <B.Candler@pobox.com>
Subject:   Re: Fast releases demand binary updates.. (Was: Release schedule for	2006 )
Message-ID:  <200512212306.36473.doconnor@gsoft.com.au>
In-Reply-To: <20051221100944.GA54932@uk.tiscali.com>
References:  <43A266E5.3080103@samsco.org> <200512180107.03841.Chris@lainos.org> <20051221100944.GA54932@uk.tiscali.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart1524423.b3c9pLnKG7
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

On Wed, 21 Dec 2005 20:39, Brian Candler wrote:
> I recently tried to upgrade Mozilla from 1.0.7 to the current ports versi=
on
> (1.5.something) on a FreeBSD 5.4 box. This fell over in all sorts of ways,
> and I ended up having to portupgrade almost everything. That then broke me
> in all sorts of other ways, like finding that 'unison' was upgraded and i=
ts
> protocol was no longer compatible with 'unison' on other systems, so they
> needed upgrading too. Plus I had to remember to abort the upgrade before =
it
> started rebuilding openoffice, to avoid my system becoming polluted with
> java...
>
> I have no problem with libraries called libgtk.so.400 or whatever, but the
> whole point of this scheme is that it should be possible to have multiple
> versions installed at the same time.

In an ideal world this would all Just Work (tm).
Unfortunately, developers don't have infinite resources so you experience=20
problems like you are seeing.

It doesn't help that there is almost no binary compatibility between variou=
s=20
releases of libraries (GNOME is really good for doing this in my experience=
).

> So, if the new Mozilla port really requires the newest version of gtk, th=
en
> it should simply go build that version of gtk and install it alongside my
> existing version, so all the ports linked against the older versions
> continue to work. Setting FORCE_PKG_REGISTER might do this, but if that
> works so well, why is it not the default? And then there are various flags
> to portupgrade / pkg_install which explicitly tell them to leave stale
> versions of shared libraries around, 'just in case' they are needed.

I think the reason it isn't the default is because it pollutes your disk wi=
th=20
multiple copies of things that may not be necessary. In a lot of cases it=20
will cause weird errors (eg one binary ends up with more than one version o=
f=20
a library linked to it at run time because its dependents weren't all=20
upgraded)

> I think Dragonfly have some good ideas, like using the filesystem to build
> a virtual library environment on the fly. That is, when an application ru=
ns
> it sees a /lib directory populated with only the libraries it needs, and
> the exact versions of them. Extending this so that it is possible to have
> multiple versions of the same application (/usr/bin/foo) installed, for
> instant upgrade and rollback, would be even better. (I know there are
> existing solutions which install lots of symlinks, and some ideas can
> probably be taken from those too)

I don't see how this can fix the problem where you have a program that depe=
nds=20
on 2 libraries and each of those depend another library. If they are linked=
=20
to 2 different versions of that 3rd library you can get very odd behaviour.

This *is* an annoying problem, but the solutions are far from simple..
(Lots more man power would help)

=2D-=20
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C

--nextPart1524423.b3c9pLnKG7
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (FreeBSD)

iD8DBQBDqUxU5ZPcIHs/zowRAqSHAKCH+LZXoXxRfWeqD8vBty1+Ql+3TwCghq8t
dgpZKgG+Svaup9/LebISUwA=
=wyNX
-----END PGP SIGNATURE-----

--nextPart1524423.b3c9pLnKG7--



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