Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm 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 Message-ID: <434D1DA2.9040803@equate.dyndns.org> Date: Wed, 12 Oct 2005 15:28:50 +0100 From: Chris Taylor Reply-To: cygwin AT cygwin DOT com User-Agent: Debian Thunderbird 1.0.7 (X11/20051001) MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: Why is setup.exe so difficult? Am I missing something? References: <6 DOT 1 DOT 2 DOT 0 DOT 2 DOT 20051012083603 DOT 0485aec0 AT 127 DOT 0 DOT 0 DOT 1> In-Reply-To: <6.1.2.0.2.20051012083603.0485aec0@127.0.0.1> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Matt England wrote: > > The biggest question: why do myself and everyone else in my software > development group that I manage (as well as everyone else with whom I've > spoken over the years regarding cygwin) find cygwin's setup.exe so > perplexing? I used to find it confusing, and difficult to use.. Then the way of addressing the views was changed a bit, and you were given the ability to maximise the setup window. > > And why does everyone else in this community for which I write > (cygwin AT cygwin DOT com) seem to have no problems with it? Or maybe they do? Perhaps we're all using a newer version? > > Here are some example problems scenarios: > > * Installing/updating a subversion package > > I want to install or update a subversion package for my cygwin system. > I tried for about 15 minutes to figure out how to do this (and get a > specific rev of svn--1.2.3-1) to no avail. The organization of the > modes and views and lists of setup.exe to be are extremely > unintuitive--I've never understood them, and I think I've been using > cygwin for about 5 years now. It's not like I'm a rookie. This one is easy. Here are some steps for it. Apologies if it reads like an idiots guide, I spend too much time around (l)users, who most definitely need things as simplistic as possible, so it's become a habit :( 1) Run setup 2) Select Install from Internet (or you could Download without Installing, so as to mirror the packages) 3) Pick your mirror - i use http://www.mirror.ac.uk 4) Click View once, to select Full view. Make sure Curr is selected. 5) Scroll down to the packages beginning with s, and click on the Skip by subversion once, it will select 1.2.3-1. 6) Click View again to select Partial - verify that subversion is in the list. 7) Click Next until done. Subversion is now installed. > > * Installing a full cygwin set > > The only way I get by with cygwin is to always attempt a "full" download > and hope for the best. However, a full download of cygwin, at least > with our controlled setup.exe, is NOT a full download! We had to write > a user-installation page just to make sure the installation user had to > manually select all the packages in the supposed "full" cygwin install > (about 3-4 packages were missing in the list). What gives? How are you telling setup to select all packages? After getting the mirror list, are you clicking on the 'Default' by All, so that it reads Install? If so, then yes, this does leave some packages not downloaded. I've just checked this myself. This may be a bug, or it may be because they duplicate other packages or conflict with them? I couldn't say. If you need them though, after selecting Install, click View 4 times - it should now read Not Installed. You will now be able to change each of these packages to Install. > > * Duplication a cygwin environment from machine to machine > > This is critical for development consistency. We had to download the > entire package set, > Best way to do this is to maintain a local mirror - I think there may be some documentation on how to do this.. Otherwise, download all the packages you need for your environment using setup (Download without Installing), and then always use "Install from Local Directory" to install. This will probably require you to map drives, or at least have readily accessible network shares, but should solve the problem. > * Figure out which things to install and which ones to not > > This is the worst thing of them all. I always feel like an idiot > whenever I step into setup.exe And in this, you're no different from anyone else that doesn't know what all the packages do. I've been using cygwin and linux for around 6 years now, and I still don't know what half of the things are for - especially when it comes to the dependancies.. I still hope that some day someone will port apt-get to cygwin, along with the apt-utils.. I'd assume it's possible, as we already have the packages in a list format (setup.bz2), but I don't know nearly enough to attempt this myself.. (hint hint folks ;) > > > I could probably provide a longer list with much more detail. However, > empathy for these issues I suspect are rather binary: one either > completely understands what I'm talking about, or they think that I > simply haven't read the docs well enough and that they can use setup.exe > just fine. Yes, I'm sure you'll see both cases in the responses - hopefully this one is helpful to you :) > > There's also the "setup.exe is an extremely powerful and flexible" > utility argument. I'll grant anyone this argument; it seems rather > capable...I guess...** if someone can figure out how to use it. ** I > see flexibility coming at the price of understanding. Given what it does, it is powerful, but not as flexible as it might be. To be honest, the limitations are imposed by package management as a whole, at least to some extent.. Or that's my opinion anyway. > > > I have attempted to read several different user guides on the setup.exe > installation process. None of them I have seen thus far address the > questions and problems I have with setup.exe. But let's say there is a > document out there that explains all the setup.exe nuances and helps a > user like me to "see the light." Why does one require such a document > (and a side note: why has it been so hard for me to find?)? Why not > simply make a more-intuitive flavor of the user experience for > installation and upgrades? How do you define categories that match what every user needs? You can't. It's a literal impossibility, as no two users will ever want the same. It forces you to either give users limited choice, thus giving them packages they have no interest in, or absolutely do not want (see debian's tasksel for an example), or to give them complete choice (see dselect, also from debian). setup.exe takes the latter route, though is vastly more presentable (for now) than dselect. Obviously, as the number of packages grows, something may need to be done to further organise them, but it works reasonably well just now. > I'm not trying to impress someone with my "resume." I'm simply trying > to convey the fact that 1) I think I am a reasonably-capable > technologist, and 2) I FIND cygwin's setup.exe *THE* MOST > DIFFICULT-TO-USE PROGRAM IN ALL THE SOFTWARE I CURRENTLY USE TODAY. Have you ever played with dselect? Or aptitude? :P (I find dselect relatively easy now, I must say, but aptitude drives me nuts). > > It's disappointing, because beyond the install-and-update process, I > generally find cygwin a pleasure to use. First of all, it's free of > charge; further, the software-module updates are fantastics (I subscribe > to the package-update-notification list, and like how the module/app > stakeholders pretty much update many things just as soon as they are > available; note the recent OpenSSL and Subversion updates). These and > other things enable my business to be quite productive. > > But if this community and the cygwin developers are going to go to such > great lengths to make such a comprehensive and robust unix-on-windows > system, why not make a better > installation-and-upgrade-package-management system? See above. > > Here's a thought: Why not just keep the setup.exe as it is, support all > the users who I'm sure have mastered it by now and probably love it (for > I doubt something like that would not have lasted this long without a > devoted user set), and simply build an additional install-and-upgrade > program that uses the same "back-end" technology/interfaces and presents > something different to the user? Possibly something for the future.. However there are always those time constraints, and so on.. Remember, this is pretty much entirely a volunteer project... Anyway. I hope this helps you understand setup better, and find it easier to use.. Or at least more tolerable ;) Chris / EqUaTe -- Chris Taylor IT Manager Catz Club Tel: 02074723338 Mob: 07795444733 Fax: 02074331720 4 Daleham Mews London NW3 5DB -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/