Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 10 Apr 2010 15:45:20 -0700
From:      Tim Kientzle <kientzle@freebsd.org>
To:        Julian Elischer <julian@elischer.org>
Cc:        ports@freebsd.org, FreeBSD Current <current@freebsd.org>
Subject:   Re: ports and PBIs
Message-ID:  <4BC0FF80.4000907@freebsd.org>
In-Reply-To: <4BC0E9AE.1000904@elischer.org>
References:  <4BBFD502.1010507@elischer.org>	<r2w6201873e1004092011y829fe434w724ccde9cbf78e2c@mail.gmail.com>	<o2z11167f521004092328z50ed9c9zde0294a344439709@mail.gmail.com>	<x2i7d6fde3d1004100020oc8be3c51ree5f1e4b07b99f45@mail.gmail.com>	<4BC03ABA.6090309@elischer.org>	<q2q7d6fde3d1004100335ucf424ae0gbfcdba950fd68767@mail.gmail.com> <4BC0CC6F.7010009@freebsd.org> <4BC0E9AE.1000904@elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Julian Elischer wrote:
> On 4/10/10 12:07 PM, Tim Kientzle wrote:
>> [1] Actually, PBI might work just fine even for
>> embedded if we address the disk bloat issue. One
>> approach would be to make
>> /Package/Bar/libfoo-2.8.7.so
>> a symlink or hardlink to
>> /Package/Shared/libfoo-2.8.7.so-<MD5-hash>
>> This gives easy sharing of identical files.
> 
> yeah that's more or less what we were thinking..
> hardlinks allow you to garbage collect when the last pbi that needs 
> something is replaced/removed.

The point of /Package/Shared in this design is
basically that it provides a list of all of
the files that can be shared, so you
avoid doing a full disk search to identify other
places that might have this file.  You could
accomplish the same goal by building and
storing a database of sharable files somewhere,
of course.

(Curiously, no one has mentioned filesystem-level
deduping yet as the "big hammer" solution...  ;-)

The LD_LIBRARY_PATH issue is the most interesting
problem here.  I don't immediately see a solution that
doesn't include teaching ld-elf.so.1 about some form
of per-application library path.

Tim



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