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 Date: Thu, 27 Jan 2005 13:41:28 -0800 (PST) From: "Peter A. Castro" To: Adam Heinz cc: "'cygwin AT cygwin DOT com'" Subject: Re: How to (easily) install multiple versions of the same package (from a repository)? In-Reply-To: <46566A3075DDD311969100E0811031EC066AB27A@euclid.dessci> Message-ID: References: <46566A3075DDD311969100E0811031EC066AB27A AT euclid DOT dessci> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-IsSubscribed: yes On Thu, 27 Jan 2005, Adam Heinz wrote: > Greetings! Hi Adam, > I manage the company standard Cygwin installation process, which is simple: > > 1. I populate a Cygwin repository on one of our internal servers (using > setup.exe). > 2. Users install everything from that server (using setup.exe). > > This installs the most recent versions of all packages on the repository, > which has worked fine, except that it looks like I'm going to need to be > able to provide multiple versions of the same package for backwards > compatibility. > > When you ask the Cygwin setup program to install a different version of an > installed package, it uninstalls the installed version, so our current > installation process will not support multiple versions. > > I'm looking into automated install options, but haven't found any silver > bullets yet. > http://www.cygwin.com/ml/cygwin/2004-07/msg01061.html As you know doubt know, the Cygwin project doesn't support older releases of Cygwin software, save for the "prev" and "test" versions, relative to what is the "current" version. That being said, there are options reguarding handling this, but they will not be supported by the Cygwin list and will require work on your end to maintain. To really answer your question depends on weither you are interested in keeping multiple versions of just a few packages or the entire Cygwin distribution. If it's the former, then it will likely involve keeping multiple copies of setup.ini in separate versioned/dated directories where you edit each setup.ini to contain the desired version of the specific packages. This could possibly be automated. As for pulling the packages, themselves, I'd suggest picking a mirror from the official list and using wget to grab successive versions of those packages as they come out on a semi-regular basis and keeping them in a common repository. This is somewhat how I maintain the Cygwin Time Machine, only I pull all packages and keep a revision of setup.ini to go with it (and it's automated). > I'd really like to end up with a Unix-style environment, i.e. using symlinks > to point python to python_2_4_0.exe and python_2_3 to python_2_3_4.exe. I'd That can lead to problems. Cygwin's setup (pretty much and package based architecture for that matter) doesn't allow for more than one version of any package to be installed at the same time. Too much potential for file overlay to occur. To keep your sanity intact, it would be better for your users to de-install and re-install as needed. > like to do this in such a way that the setup burden is entirely on my > shoulders and that everyone else has an extremely trivial setup process. It can be. If you keep several versioned/date directories, each with an edited setup.ini, you can simply point your users to that specific directory to install from to get the specific version of those packages. Then it's just a matter of telling your users what path to use when running setup. You might want to look at the Time Machine to see if it provides the kind of thing you are thinking of or not. I can give more details on this if you need them. However, if you really want several versions installed at the same time, that's going to be a problem and will be a huge amount of work (for you). > Any suggestions? Is there any scripting-level mechanism for installing > Cygwin packages individually? 'fraid not. [Oh, I should also state that discussions concerning older versions of Cygwin and their distribution are somewhat considered off-topic. :] > Adam Heinz -- Peter A. Castro or "Cats are just autistic Dogs" -- Dr. Tony Attwood -- 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/