Mailing-List: contact cygwin-apps-help AT sourceware DOT cygnus DOT com; run by ezmlm Sender: cygwin-apps-owner AT sourceware DOT cygnus DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Delivered-To: mailing list cygwin-apps AT sources DOT redhat DOT com Message-ID: <3C00AF34.7070707@ece.gatech.edu> Date: Sun, 25 Nov 2001 03:43:32 -0500 From: Charles Wilson User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.4) Gecko/20011019 Netscape6/6.2 X-Accept-Language: en-us MIME-Version: 1.0 To: Robert Collins CC: cygwin-apps AT sources DOT redhat DOT com Subject: Re: recoverable downloads - opinions sought References: <093e01c1745c$aece3f50$0200a8c0 AT lifelesswks> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Robert Collins wrote: > To do recoverable downloads we need 2 things. > 1) A way to check the file, other than filesize, for integrity. MD5 will > do and IIRC that's already caclulated on sources.redhat. > 2) Code to pickup partway through and carry on. > > For 2) we can either code it internally, or link statically to something > like libcurl, or call out to wget/curl. But if setup used an external library (or program) it would have to be a non-cygwin version, right? > My current mental state: > For creating a mirror aka download only, we have to run on a cygwin-free > system with little or no loss of functionality. Imagine someone on a > corporate network with a dedicated 'net' PC, and cygwin not allowed on > that. > > Using an external helper, via a bootstrap process will be a lot easier, > but will sacrifice the functionality when on a non-cygwin machine. You're assuming that the external helper is a cygwin program, I guess. Ummm...I'm reminded of Dario's rpm-based cygwin distribution. He had a bootstrap phase that installed cygwin(dll, bare minumum tools, rpm itself), and then used rpm to install everything else... If we're going to go with a two phase setup, then his idea makes more sense than continuing to roll our own. The big argument against his plan was (a) two phase is bad (b) why throw away our perfectly good setup tool. Okay, that's two arguments. ;-) > So I'm in favour of internal code/static library linkage. A dynamic > library _could_ be used, but we'd ned to treat it as a special case, not > as a standard isntall-and-log package. Yep. But if it's a special case, then we might as well link it in statically. If it were in a DLL, we can't update it on-the-fly from setup because setup.exe is still using it...so updates of that DLL have to be done manually. Might as well just update setup.exe itself, then, if you're going to do it manually. Therefore, static link. > The alternative to internal/static code is to go down the path of > splitting setup into two builds, but as we'd _still_ have to get the > download-without-cygwin part right, I see no benefit in this. Yep. Might be helpful to review the arguments surrounding Dario's proposal (which he backed up with an actual implementation and, like, documentation and stuff). http://www.helixdigital.com/~alcocer/rpm-installer/ Thread: July, "SETUP WIZARD FOR CYGWIN?XFREE86" cygwin AT cygwin DOT com Thread: July, "RE: RPM installer (was Re: SETUP WIZARD FOR CYGWIN?XFREE86)" cygwin AT cygwin DOT com Also, http://www.cygwin.com/ml/cygwin-apps/2001-07/msg00074.html I seem to remember that in early september Dario actually put together an ISO that embodied his whole rpm-based cygwin dist including a tk/tcl-based 'bootstrap' installer... anyway, I'm just rambling now. --Chuck