Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Where is the bare cygwin package list located and how do I manipulate it programmatically or from a shell or with a different method than the gui? I know the gui (setup.exe), and I'd love to go one or more levels deeper.

I can retrieve a list of selected/installed packages ( http://serverfault.com/questions/83456/cygwin-package-management ), but how do I write it back or to a different machine?

What I have in mind is when I install a new windows I would like to start with my package list in text form, an apply or inject it somehow to the new system.

Where is it? In the registry? In a binary file? in a local database?

Or has anybody done this, is there a tool, a tutorial? The essence of what I want is to manipulate the selected package list with something else than the gui. It is ok for me to use the gui for the setup process. So I could imagein manipulating the package List and then run setup.exe and just click through it.

Note: I do not want to manipulate the list of already installed packages but of packages that "should be installed". But if htis is not possible, maybe there is some workaround. E.g add an outdated version as installed and the installer will then install the new version.

share|improve this question
add comment

2 Answers

up vote 1 down vote accepted

I found a good way to do it at jessies: http://software.jessies.org/salma-hayek/cygwin-setup.html

On the initial install don't select any packages.

From Cygwin 1.7 onwards it is possible to install extra packages with the -P switch. From a cmd window:

setup.exe -q -P openssh,python,ruby,vim

This is an example that would install just these packages.

share|improve this answer
    
This is not exactly what I asked for in the questions, but I believe it is not possible. using the -P switch comes close. –  user12096 Apr 1 '10 at 22:07
add comment

This is also not exactly what you asked for in the question, but it's the first half of it: The list of packages that are currently installed is stored as /etc/setup/installed.db, and the list of files for each package are listed in /etc/setup/*.gz files.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.