portmaster -- preserving added files?

Gary Aitken freebsd at dreamchaser.org
Thu Sep 26 19:24:24 UTC 2013


On 09/26/13 12:39, Kimmo Paasiala wrote:
> On Thu, Sep 26, 2013 at 9:25 PM, Scot Hetzel <swhetzel at gmail.com> wrote:
>> On Thu, Sep 26, 2013 at 11:35 AM, Gary Aitken <freebsd at dreamchaser.org> wrote:
>>> Is portmaster supposed to retain files which it did not install when updating /
>>> reinstalling a port?
>>>
>>> For example, jave extensions are normally installed by placing a jar file in
>>>   /usr/local/openjdk6/jre/lib/ext/
>>>
>>> When reinstalling, these are wiped out.
<snip>
>> The problem is not with portmaster, as it runs the pkg or pkg_install
>> commands to remove the port.  If you have files that are missing after
>> uninstalling a port, then you'll need to check what that port is
>> doing.  Most likely the port has a @dirrm instead of an @dirrmtry for
>> that directory in it's pkg-plist file.
>>
>> I had a look at the java/openjdk6/Makefile, and it creates the list of
>> directories to remove with @dirrm instead of @dirrmtry.  So it looks
>> like the issue is with java/openjdk6 removing that directory.
<snip>
> It's a larger problem with no clear solution. What the programs that
> install additional files after the initial installation should do is
> to use /var/db/xyz for the additional files so that they are contained
> in a separate directory alltogether.
<snip>

That presumes all additional files are installed via the ports mechanism,
or at least know about it, which is highly unlikely.  With plugins of
various types and machine-independent binaries like java .class files 
abounding, requiring every add-on to be installed by the ports mechanism 
isn't likely to work in the long run.

I can see how a program installed by the ports mechanism should use the
mechanism you're advocating, but I don't think it applies to all cases.

In this case, it was a mysql driver, obtained as a binary (.jar of 
java .class files).  But things like gimp plugins have the same issue.

Gary



More information about the freebsd-ports mailing list