How can I get it and is there some trusted source with hashes to verify the dump?
Thousands of packages.. Creating a static dump of them will be outdated in day. I know what you mean.. But the best bet is to do the effort once, keep them updated and backup before deleting again.
By default, setup.exe will install only the packages in the Base category and their dependencies, resulting in a minimal Cygwin installation. However, this will not include many commonly used tools such as gcc (which you will find in the Devel category). Since setup.exe automatically selects dependencies, be careful not to unselect any required packages. In particular, everything in the Base category is required.
So, if you know which packages you need, its not much of a trouble, because the most important ones will be installed by default. You can always install any package you want after you've installed Cygwin. There is no need to install them all at once go.
Here's the easy way of getting the full Cygwin.
Run the Cygwin setup.exe file (You can download it at cygwin.com). Choose your options and click next until you reach a screen that shows the list of packages.
If your 'select packages' screen looks different from mine, just click the 'View' button near the top-right again and again until the text next to view is 'Category', just like mine.
Update: In the new Cygwin interface, click the drop-down next to the View label in the top left and select Category. Thanks to simlev for the answer.
Next, click the 'Default' next to 'All'.
Now all packages are selected!
(The last step is to just do the rest of the steps the setup program tells you to do.).
If you need to 'update' your current Cygwin to have all the new packages without deleting your old ones etc., then this info from Cygwin.com should be useful:
Once you have an existing Cygwin installation, the setup.exe chooser is also used to manage your Cygwin installation. Information on installed packages is kept in the /etc/setup/ directory of your Cygwin installation; if setup.exe cannot find this directory it will act as if you have no Cygwin installation. If setup.exe finds a newer version of an installed package available, it will automatically mark it to be upgraded. To Uninstall, Reinstall, or get the Source for an existing package, click on Keep to toggle it. Also, to avoid the need to reboot after upgrading, make sure to close all Cygwin windows and stop all Cygwin processes before setup.exe begins to install the upgraded package.
To avoid unintentionally upgrading, use the Pending view to see which packages have been marked for upgrading. If you don't want to upgrade a package, click on the new version number to toggle it until it says Keep. All packages can be set to stay at the installed version by pressing the Keep button in the top right part of the chooser window.
A previous version of each package is usually available, in case downgrading is required to avoid a serious bug in the current version of the package. Packages also occasionally have testing (or "experimental") versions available. Previous and experimental versions can be chosen by clicking on the package's New column until the required version appears.
All available experimental packages can be selected by pressing the Exp in the top right part of the chooser window. Be warned, however, that the next time you run setup.exe it will try to replace all old or experimental versions with the current version, unless told otherwise.
By the way, I installed full Cygwin (except the games and without obsolete, but with some minor [at least I think so] additional required dependencies). The total size is about 5.51 GB for the compressed, downloaded packages, whereas the cygwin software which has all the uncompressed packages is 16.1 GB (Size on disk is 17.1 GB). Both of these are stored in separate directories, so assuming you keep the compressed, downloaded packages this takes a total disk space of about 22 GB. Downloading and installing took me about 10 hours, which should vary of course.
If you have rsync then here is a simple one-line approach.
rsync --partial -va rsync://ftp.jaist.ac.jp/pub/cygwin/release/ /cygdrive/c/archive/cygwin/release/
Just replace source with your local mirror or whatever is the fastest.
I normally have a script, under
/cygdrive/c/archive/cygwin/sync-with-cygwin-mirror.sh so it would update to the latest and greatest :-)
cat > /cygdrive/c/archive/cygwin/sync-with-cygwin-mirror.sh <<"EOF" #!/bin/bash # ### # Choose mirror that is on http://www.cygwin.com/mirrors.html # # "ftp://ftp.jaist.ac.jp/pub/cygwin/" # "ftp://ftp.sunet.se/pub/lang/cygwin/" # "http://mirrors.kernel.org/sourceware/cygwin/" # # Old # "http://sources.redhat.com/cygwin/mirrors.lst" ### rsync --partial -va rsync://ftp.jaist.ac.jp/pub/cygwin/release/ /cygdrive/c/archive/cygwin/release/ # EOF chmod +x /cygdrive/c/archive/cygwin/sync-with-cygwin-mirror.sh
You could also try the
pmcyg tool (SourceForge page), which should run on any machine that has Python-2.x installed on it.
Something of the form:
pmcyg --nogui --all
Will automatically mirror the entire set of
Cygwin packages and installer for the x86 architecture. Adding the
--remove-outdated yes option will allow you to repeatedly update your local mirror as new Cygwin packages are released.
And if you don't want to spend hours downloading it, you can use a simple tool I've created that finds the fastest mirror: Cygwin Mirror Tester