Hi all,I tried to use the mkcygwget script to download a cygwin mirror for offline installation. The mkcygwget script generates a script named cygwget to do the heavy lifting of retreiving files. However, I got a "argument list too long" exception from wget, since the generated script has all the files to be downloaded appended to a single wget command.
I've made a slight modification to the mkcygwget script so that the generated cygwget contains a separate wget command for each file to be downloaded. This solved the problem I was having....thought I'd post the modified script to this mailing list in case anyone else was interested.
r, Lance Nehring New Particles Corp http://www.newparticles.com/
#!/bin/bash getBZ2=1 # Validate usage (minimally) if [ $# -ne 1 ]; then echo "mkcygwget: Usage $0 <mirrorURL>" >&2 exit 1 fi mirrorURL="$1" # Dissect the argument to separate the host and directory portions mirrorHost="${mirrorURL%*/}" mirrorDir="${mirrorURL##*/}" ueMirror="$(echo "$mirrorURL" |sed -e 's/:/%3a/g' -e 's|/|%2f|g')" mkdir "$ueMirror" # Retrieve the "setup.ini" file from the mirror # Get the BZip2-compressed form? if [ "$getBZ2" ]; then wget -O "$ueMirror/setup.bz2" "$mirrorHost/setup.bz2" if [ $? -ne 0 ]; then echo "mkwget: Error retrieving \"setup.bz2\" from \"$mirrorHost/setup.bz2\"" >&2 exit 1; fi bzcat "$ueMirror/setup.bz2" >"$ueMirror/setup.ini" rm "$ueMirror/setup.bz2" # Get the uncompressed "setup.ini" file else wget -O "$ueMirror/setup.ini" "$mirrorHost/setup.ini" if [ $? -ne 0 ]; then echo "mkwget: Error retrieving \"setup.ini\" from \"$mirrorHost/setup.ini\"" >&2 exit 1; fi fi # Use the "setup.ini" file to produce a download script wgetprefix="wget -x -nH --cut-dirs=1 $mirrorURL" ( echo -e '#!/bin/sh\n' echo -e "cd \"$ueMirror\"\n" sed -n -e "/^install: / s|^install: \([^ ]*\) .*|\t$wgetprefix/\1 |p" "$ueMirror/setup.ini" echo ) >|cygwget chmod +x cygwget
smime.p7s
Description: S/MIME Cryptographic Signature