From: Akos P. <ak...@pi...> - 2001-09-01 01:12:46
|
On 31 Aug 2001 12:25:24 +1000, Steve Cassidy wrote: > Taking on the suggestion that TIP55 should consider the form of a repository > and the installation mechanism I've been putting together some code to trial > this idea. I've packaged up a small number of extensions and built a cgi > interface to the repository. Please visit: > > http://www.shlrc.mq.edu.au/~steve/cgi-bin/cantcl.cgi Thank you for the pioneering work, this test setup really highlights the big issues. Some random observations: - Bootstrapping. The installer has to be distributed with the core, together with an unzipper/VFS package - We have some nice tools to deal with ZIP files - It was surprising to see that nobody actually needed the DESCRIPTION files except Steve's script which was used to create the web site index - Bootstrapping 2: Where to start looking for packages? - Proxy support in the installer - would be nice to have - Multiple platforms... oh yes. And - back to the original TIP - some conclusions, regarding file formats: - ZIP is a good candidate for the archive file format - Separating the platforms could make installation easier - The DESCRIPTION file is processed when building up the package depot, and it is not touched during installation Finally, considering a hypothetical Very Advanced Installer, some things I miss from the original proposal: - An index, which lists available packages in a depot - Optional pre- and postinstall scripts - Dependencies - An up-to-date list of mirror depots So let's get dirty; here is how I imagine a Tcl package depot: index.tcl (depot contents for the installer) mirrors.tcl (list of mirror depots) packages/ bwidget/ 1.3.1/ description.xml (or .txt or .tcl...) preinstall.tcl (pre-install script, optional) postinstall.tcl (post-install script, optional) dependencies.tcl (dependencies script, optional) common.zip (platform-independent stuff, optional) i386-linux-generic.zip (platform dependent files, optional) i386-windows-nt.zip ... (more platforms) ... (more versions) ... (more packages) As of what's in the ZIP files: I don't care! Whatever needs to be there for making the package work (assuming the ZIPs are extracted to the package directory, somewhere on the Tcl library path). At least a pkgIndex.tcl in common.zip or in the platform ZIPs. - Akos. -- Akos Polster mailto:ak...@pi... http://akos.pipacs.com |