From owner-freebsd-questions@FreeBSD.ORG Mon Jun 5 16:43:54 2006 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9C9AF16AC60 for ; Mon, 5 Jun 2006 16:43:54 +0000 (UTC) (envelope-from mikhailg@webanoide.org) Received: from overlord.navalradio.cl (overlord.navalradio.cl [201.236.67.146]) by mx1.FreeBSD.org (Postfix) with ESMTP id 190B943D45 for ; Mon, 5 Jun 2006 16:43:53 +0000 (GMT) (envelope-from mikhailg@webanoide.org) Received: from [192.168.0.4] (ppp110-20.lns1.hba1.internode.on.net [150.101.110.20]) (authenticated bits=0) by overlord.navalradio.cl (8.13.4/8.13.4) with ESMTP id k55GhQ2X002960; Mon, 5 Jun 2006 12:43:40 -0400 (CLT) (envelope-from mikhailg@webanoide.org) Message-ID: <44845F1A.9030807@webanoide.org> Date: Tue, 06 Jun 2006 02:43:06 +1000 From: Mikhail Goriachev Organization: Webanoide User-Agent: Thunderbird 1.5.0.4 (Macintosh/20060530) MIME-Version: 1.0 To: RW References: <200606050111.30606.list-freebsd-2004@morbius.sent.com> <4484108B.9000302@webanoide.org> <200606051507.18147.list-freebsd-2004@morbius.sent.com> In-Reply-To: <200606051507.18147.list-freebsd-2004@morbius.sent.com> X-Enigmail-Version: 0.94.0.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-100.0 required=5.0 tests=USER_IN_WHITELIST autolearn=ham version=3.1.1 X-Spam-Checker-Version: SpamAssassin 3.1.1 (2006-03-10) on overlord.navalradio.cl Cc: freebsd-questions@freebsd.org Subject: Re: difference between deinstall and pkg_delete? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Jun 2006 16:44:04 -0000 RW wrote: > 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 > similar name. Ah, now I see what you mean about cookies. I guess this is valid when you don't want to clean a port. In my case, I install and clean it right away... the cookie disappears in the process. make install clean pkg_deinstall make install clean Is this the only issue between pkg_delete and make deinstall? Cheers, Mikhail. -- Mikhail Goriachev Webanoide Telephone: +61 (0)3 62252501 Mobile Phone: +61 (0)4 38255158 E-Mail: mikhailg@webanoide.org Web: http://www.webanoide.org PGP Key ID: 0x4E148A3B PGP Key Fingerprint: D96B 7C14 79A5 8824 B99D 9562 F50E 2F5D 4E14 8A3B