Concern about using pkg_delete -r
joshua_rickmar at eumx.net
Fri Oct 24 02:41:28 UTC 2008
On Thu, October 23, 2008 10:30 pm, Robert Noland wrote:
> On Thu, 2008-10-23 at 22:25 -0400, Josh Rickmar wrote:
>> On Thu, October 23, 2008 10:05 pm, Stephen Montgomery-Smith wrote:
>>> Josh Rickmar wrote:
>>>> I'm hoping that this list covers port tools as well as the usual
>>>> discussions about the actual ports. If not, please CC this to the
>>>> proper list.
>>>> I want to use pkg_delete to remove an installed port, but also want
>>>> to remove its orphaned dependencies along with it. After looking at
>>>> the pkg_delete(1) man page, the -r flag seems to be the option to
>>>> use for this job. My concern, though, is about the wording:
>>>>> In addition to specified packages, delete all
>>>>> packages that depend on those packages as well.
>>>> Does this mean that if I pkg_delete -r pkgA, than pkgB (a
>>>> dependency) will be removed with it, even though it is dependency of
>>>> pkgC? Or is pkg_delete (or pkg_deinstall) smart enough to
>>>> understand this dependency and keep pkgB installed?
>>>> If in this scenario pkgB would be deleted, should an extra warning
>>>> be added to the man page so that users know that using this flag
>>>> could potentially break their other ports?
>>> I think you have the dependency relationship the wrong way around.
>>> If you do "pkg_delete -r pkgA", and pkgA is a dependency of pkgB (not
>>> the other way around as you have it), then pkgB will be deleted.
>> Ah, my bad. Yeah, after re-reading the wording it seems that is the
>> What about for pkg_deinstall (part of portupgrade)? According to its
>> man page, it has two options, --recursive (-r) and --upward-recursive
>> Maybe it's just a little bit late, but what /exactly/ is the difference?
>> It sounds like the --upward-recursive option would be better called
>> --downward-recursive, since it will remove the ports/packages "below"
> Semantically, it is an inverted tree... i.e. the root is at the top.
OK, I guess that makes sense.
>> So, if that is the case, would pkg_deinstall -R pkgA remove pkgB or
Well, I tested using pkg_deinstall -rRn, and if I were to remove the -n
flag, it would be uninstalling ports all the way down to gettext. Not
good. So, it would be removing 'pkgB' with this option. Any way to
To send me a personal email, please place [personal] in the Subject line.
More information about the freebsd-ports