difference between deinstall and pkg_delete?
list-freebsd-2004 at morbius.sent.com
Mon Jun 5 07:07:54 PDT 2006
On Monday 05 June 2006 12:07, Mikhail Goriachev wrote:
> RW wrote:
> > On Friday 02 June 2006 08:53, Mikhail Goriachev wrote:
> >> Jon Falconer wrote:
> >>> Greetings,
> >>> I see in the man page for ports the following:
> >>> reinstall Use this to restore a port after using
> >>> pkg_delete(1) when you should have used deinstall.
> >>> So I'm wondering what is the difference between pkg_delete and using
> >>> "make deinstall" from within the ports directory? What does "make
> >>> deinstall" do that pkg_delete does not do? What does pkg_delete do that
> >>> "make deinstall" does not do?
> >> Hi,
> >> This will point you in the right direction:
> >> http://www.bsdforums.org/forums/archive/index.php/t-29467.html
> > Actually I think that points in wrong direction. There is a lot of
> > misinformation about this that is repeated ad-nauseum.
> > Most ports use the standard deinstall target which calls pkg_delete;
> > there is only one port in the whole tree that defines it own deinstall
> > target, and that one installs its own versions of the pkg_* utilities.
> > The port system uses a series of cookie files to keep track of what has
> > been done. For example if you type "make && make" the port will only
> > build once, because the first make sets the "build cookie". There is also
> > an Install cookie which leads to a problem when you go through the
> > sequence
> > make install
> > pkg_delete
> > make install
> > because pkg_delete doesn't know about the port cookies. The deinstall and
> > reinstall targets both delete the cookie and so using one or the other
> > avoids the problem.
> > In practice this is virtually a non-issue since most people, and all
> > build tools, will do a make clean at some point in the sequence.
> Right, so pkg_deinstall is the way to go then, isn't? Logically, there
> is a difference between pkg_delete and pkg_deinstall. Personally, I use
> the latter.
The question was about the difference between "make deinstall" and pkg_delete.
pkg_deinstall (installed by the portupgrade port) is simply a ruby wrapper
for pkg_delete that provides globbing and recursion. There is no particular
correpondence between pkg_deinstall and "make deinstall" except for the
More information about the freebsd-questions