X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org MIME-Version: 1.0 In-Reply-To: <4D97DF02.1050009@cygwin.com> References: <4D97DF02 DOT 1050009 AT cygwin DOT com> Date: Sun, 3 Apr 2011 08:53:41 +0100 Message-ID: Subject: Re: Suggestions to setup.exe From: Andy Koppe To: cygwin AT cygwin DOT com Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 3 April 2011 03:44, Larry Hall (Cygwin) wrote: > On 4/2/2011 12:44 PM, Tony wrote: >> >> Hi. I just installed this package here which brought with it a ton of >> dependancies. Why can't setup.exe, when I want to uninstall this >> package, also uninstall all the dependancies? Please make the next >> Cygwin release support "clean uninstalls". > > That's not as easy as it might initially sound. =C2=A0Uninstalling all > dependencies > might result in other utilities not working, since these dependencies cou= ld > be > shared. =C2=A0Determining the dependencies to install is easier than dete= rmining > those that are safe to uninstall. =C2=A0So that's by way of explanation f= or why > you > see the behavior you currently see from 'setup.exe' when uninstalling a > package. =C2=A0That said, it is possible to figure out which dependencies= could > safely be uninstalled. It depends. ;) When uninstalling a package, it sure makes sense to uninstall all the packages that depend on it, since they would stop working anyway. So for example, removing the libX11 runtime would be a quick way to remove all X11 programs. However, removing a package because an uninstalled package depends on is not generally a good idea, even if no other package depends on it. That's because the user might still require it, either directly or perhaps through a program they've built from source. For example, mintty depends on cygutils (for its postinstall script), but removing mintty doesn't mean that the user no longer wants to run cygstart&Co. Other package managers address this by keeping a record of which packages were requested explicitly by the user and which were installed implicitly as dependencies of other packages. Even then, the user might come to depend on packages that were only installed implicitly, so there's still scope for uninstalling packages accidentally, but at least there's a simple remedy: explicitly request such packages and it won't happen again. In any case, improving support for uninstalling stuff isn't exactly a new suggestion, and as usual, the real problem is: http://www.cygwin.com/acronyms/#SHTDI Andy -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple