[asdf-install-devel] [PATCH] extracting tarballs
Gary King
gwking at metabang.com
Wed Jul 12 14:06:56 UTC 2006
Hi Shawn,
Thanks. This is a great idea. I've been working (very slowing!) on
extending Nathan Froyd's tar lisp stuff to non-SBCL lisps so I'm glad
that you're actually doing it!
On Jul 12, 2006, at 8:13 AM, Sean Ross wrote:
> Hi,
>
> I've got a patch for asdf-install which modifies the way that asdf-
> install
> attempts to extract tarballs. It exports the variable *tar-
> extractors* which
> is a list of functions which take a target directory and a pathname
> identifying the path to the tarball. Functions on this list can either
> extract the tarball or return nil to try the next function.
>
> This is mainly to enable a foreign package to push a CL version of
> 'tar xzf' (which should be released soon) onto this list allowing
> windows users to asdf-install packages sans Cygwin.
>
> I'm pretty new to darcs so please let me know if there is a problem
> with the patch.
>
> Cheers,
> Sean.
>
>
>
>
>
> New patches:
>
> [tar-extractor
> sean at guruhut.com**20060712115010] {
> hunk ./asdf-install/asdf-install.asd 32
> - :version "0.5.5"
> + :version "0.5.6"
> hunk ./asdf-install/defpackage.lisp 16
> + #:*tar-extractors*
> hunk ./asdf-install/installer.lisp 351
> +(defun extract-using-tar (to-dir tarball)
> + (if (probe-file (tar-command))
> + (return-output-from-program (tar-command)
> + (tar-arguments to-dir tarball))
> + (warn "Cannot find tar command ~S." (tar-command))))
> +
> +(defvar *tar-extractors*
> + '(extract-using-tar))
> +
> +(defun extract (to-dir tarball)
> + (or (some #'(lambda (extractor) (funcall extractor to-dir tarball))
> + *tar-extractors*)
> + (error "Unable to extract tarball ~A." tarball)))
> +
> hunk ./asdf-install/installer.lisp 369
> - (let* ((tar (return-output-from-program (tar-command)
> - (tar-arguments source packagename)))
> + (let* ((tar (extract source packagename))
> }
>
> Context:
>
> [bumped version
> Gary King <gwking at metabang.com>**20060614213119]
> ['Rationalized' adding paths to the registry slightly; also added
> restart to allow for continued installation in the complete absence
> of a signature file
> Gary King <gwking at metabang.com>**20060614212938]
> [Rearranged exported symbols slightly to reduce the number of #+s
> Gary King <gwking at metabang.com>**20060614212852]
> [upped version
> Gary King <gwking at metabang.com>**20060608200301]
> [Trying to normalize lambda list of install to better support
> atoms and lists and keyword arguments for the future
> Gary King <gwking at metabang.com>**20060607153319]
> [#+ignored some SBCL stuff in deprecated b/c it caused redefinition
> errors
> Gary King <gwking at metabang.com>**20060607153204]
> [Refactoring; improving *central-registry* management so that the
> ones we add in installer are evaluated immediately instead of later.
> Gary King <gwking at metabang.com>**20060603021926]
> [Removed version file
> Gary King <gwking at metabang.com>**20060603021833]
> [More proof that I can't count!
> Gary King <gwking at metabang.com>**20060518172201]
> [moving things around some more
> Gary King <gwking at metabang.com>**20060517203334]
> [moved things around
> Gary King <gwking at metabang.com>**20060517202852]
> [Added tests and style sheet
> Gary King <gwking at metabang.com>**20060517184550]
> [Moved preference loading code to bottom of file
> Gary King <gwking at metabang.com>**20060517184448]
> [Worked on website
> Gary King <gwking at metabang.com>**20060517184432]
> [Started new style sheet for tutorial
> Gary King <gwking at metabang.com>**20060517184351]
> [Exported condition names
> Gary King <gwking at metabang.com>**20060517184323]
> [Updated version number
> Gary King <gwking at metabang.com>**20060517184255]
> [Moved some things out of deprecated and into dead-letter
> Gary King <gwking at metabang.com>**20060516193044]
> [Adding ASDF-Install version printing to load-op
> Gary King <gwking at metabang.com>**20060508175721]
> [Moved the install anyways restart to the correct level
> Gary King <gwking at metabang.com>**20060503172003]
> [Changed signature of install form to a system or list of systems
> plus keyword arguments. Added :propagate argument which, if true,
> forces a reinstallation of all the dependent systems.
> Gary King <gwking at metabang.com>**20060501144213]
> [Rearranged PGP key verification with more restarts and (i think)
> clearer logic; also split asdf-install into more files for easier
> source code comprehension
> Gary King <gwking at metabang.com>**20060430010828]
> [Recording latest changes from CCLAN
> Gary King <gwking at metabang.com>**20060321150538]
> [Recording latest changes from CCLAN
> Gary King <gwking at metabang.com>**20060320221648]
> [Recording latest changes from CCLAN
> Gary King <gwking at metabang.com>**20060320221419]
> [Recording latest changes from CCLAN
> Gary King <gwking at metabang.com>**20060320203430]
> [Patch from Robert Goldman <rpgoldman at sift.info>. This helps ASDF-
> Install work better with Allegro < 8 (which apparently doesn't like
> #+ #+). It also fixes the long standing bug of ASDF-Install of not
> creating a new trusted-UID file if one doesn't already exist.
> Gary King <gwking at metabang.com>**20060130122801]
> [Created website
> Gary King <gwking at metabang.com>**20060130120615]
> [Added rebuild script
> Gary King <gwking at metabang.com>**20060128174701]
> [Added files from CCLAN
> Gary King <gwking at metabang.com>**20060128174630]
> Patch bundle hash:
> fd1c31d7a91a855b710dd388ea282a8d3352cac6
>
> _______________________________________________
> asdf-install-devel mailing list
> asdf-install-devel at common-lisp.net
> http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-install-devel
--
Gary Warren King
metabang.com [http://www.metabang.com/]
(413) 885 9127 * (206) 338-4052 [Fax]
gwking on #lisp (occasionally)
More information about the asdf-install-devel
mailing list