Concern about using pkg_delete -r
Robert Noland
rnoland at FreeBSD.org
Fri Oct 24 03:15:13 UTC 2008
On Thu, 2008-10-23 at 22:41 -0400, Josh Rickmar wrote:
> 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
> >> case.
> >>
> >> What about for pkg_deinstall (part of portupgrade)? According to its
> >> man page, it has two options, --recursive (-r) and --upward-recursive
> >> (-R).
> >> 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"
> >> it.
> >
> > Semantically, it is an inverted tree... i.e. the root is at the top.
> >
> >
> > robert.
>
> OK, I guess that makes sense.
>
> >
> >> So, if that is the case, would pkg_deinstall -R pkgA remove pkgB or
> >> not?
> >>
> >
>
> 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
> prevent this?
The removal of ports which are required by some other port will fail.
robert.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20081024/37e024e3/attachment.pgp
More information about the freebsd-ports
mailing list