portmaster -- preserving added files?

Kimmo Paasiala kpaasial at gmail.com
Thu Sep 26 20:20:11 UTC 2013


On Thu, Sep 26, 2013 at 10:14 PM, Gary Aitken <freebsd at dreamchaser.org> wrote:
> 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
>

I was referring to untracked files that have not been installed via
the ports system or packages. However, it seems impossible to convince
software writers that /usr and /usr/local might be read-only at
run-time :/

-Kimmo


More information about the freebsd-ports mailing list