summaryrefslogtreecommitdiff
path: root/guix/import
AgeCommit message (Expand)Author
2015-12-21import: Drop empty list items....* guix/import/cran.scm (listify): Remove empty strings from result list. Ricardo Wurmus
2015-12-11import: cran: Parse DESCRIPTION instead of HTML....* guix/import/cran.scm (description->alist, listify, beautify-description, description->package): New procedures. (table-datum, downloads->url, nodes->text, cran-sxml->sexp): Remove proceduces. (latest-release): Use parsed DESCRIPTION instead of SXML. * tests/cran.scm: Rewrite to match importer. Ricardo Wurmus
2015-12-11import: cran: Match more license strings....* guix/import/cran.scm (string->license): Match more license strings to license symbols. Ricardo Wurmus
2015-12-01import: pypi: Updater silently ignores packages without source....Reported by Andreas Enge <andreas@enge.fr> at <https://lists.gnu.org/archive/html/guix-devel/2015-11/msg00764.html>. * guix/import/pypi.scm (&missing-source-error): New error type. (latest-source-release): Raise it instead of using 'error'. (pypi->guix-package): Guard against it and use 'leave' to report the error. (latest-release): Guard against it and return #f when caught. Ludovic Courtès
2015-11-26import: hackage: Handle CRLF end of line style....* guix/import/hackage.scm (hackage-fetch, hackage->guix-package): Use 'canonical-newline-port'. Federico Beffa
2015-11-26import: hackage: Make parsing of tests and fields more flexible....* guix/import/cabal.scm (is-test): Allow spaces between keyword and parentheses. (is-id): Add argument 'port'. Allow spaces between keyword and column. (lex-word): Adjust call to 'is-id'. Federico Beffa
2015-11-26import: hackage: Make it resilient to missing final newline....* guix/import/cabal.scm (peek-next-line-indent): Check for missing final newline. Federico Beffa
2015-11-26import: hackage: Imporve parsing of tests....* guix/import/cabal.scm (lex-word): Add support for tests with no spaces. (impl): Rewrite. Federico Beffa
2015-11-26import: hackage: Add recognition of 'true' and 'false' symbols....* guix/import/cabal.scm (is-true, is-false, lex-true, lex-false): New procedures. (lex-word): Use them. (make-cabal-parser): Add TRUE and FALSE tokens. (eval): Add entries for 'true and 'false symbols. Federico Beffa
2015-11-04import: pypi: Make downloads silent....* guix/import/pypi.scm (pypi-fetch): Wrap body in 'call-with-output-file' and 'with-error-to-port'. Ludovic Courtès
2015-11-04import: pypi: Add missing copyright line....* guix/import/pypi.scm: Add missing copyright line for bab020d. Ludovic Courtès
2015-11-03import: pypi: add updater...* guix/import/pypi.scm (guix-package->pypi-name, latest-release): New procedures. (%pypi-updater): New variable. * guix/scripts/refresh.scm (%updaters): Add %PYPI-UPDATER. * doc/guix.texi (Invoking guix refresh): Mention PyPI Cyril Roelandt
2015-11-03import: pypi: Use "pypi-uri" instead of building the URL manually....* guix/import/pypi.scm (make-pypi-sexp): Use "pypi-uri". * tests/pypi.scm: Update the tests accordingly. Cyril Roelandt
2015-11-03import: gnu: Update to the (guix upstream) API....This is a followup to 0a7c5a0. * guix/import/gnu.scm (preferred-archive-type): Use 'upstream-source-archive-types' instead of 'gnu-release-archive-types'. (gnu-package->sexp): Use 'upstream-source-urls' et al. Update call to 'download-tarball'. (gnu->guix-package): Use <upstream-source> instead of <gnu-release>. * guix/upstream.scm (upstream-source-archive-types): Export. Ludovic Courtès
2015-10-27upstream: Add 'description' field to 'upstream-updater'....Suggested by Ludovic Courtès <ludo@gnu.org>. * guix/upstream.scm (<upstream-updater>): Use 'define-record-type*'. [description]: New field. (lookup-updater): Adjust accordingly. * guix/gnu-maintenance.scm (%gnu-updater): Likewise. * guix/import/cran.scm (%cran-updater): Likewise. * guix/import/elpa.scm (%elpa-updater): Likewise. * po/guix/POTFILES.in: Add guix/scripts/import/cran.scm and guix/gnu-maintenance.scm. Alex Kost
2015-10-23import: hackage: Update GHC libraries for 7.10.2....Update ghc-standard-libraries to match the output of `ghc-pkg list` when using GHC 7.10.2. * guix/import/hackage.scm (ghc-standard-libraries): Sort and update list of core GHC libraries. Paul van der Walt
2015-10-21import: cran: Add copyright notice....Add notice for commit d882c23. Ludovic Courtès
2015-10-21import: cran: Avoid HTTP redirect....* guix/import/cran.scm (cran-fetch): Add trailing slash in URL to avoid HTTP redirect. Ludovic Courtès
2015-10-21import: cran: Add updater....* guix/import/cran.scm (downloads->url, nodes->text): New procedures. (cran-sxml->sexp): Use them. Remove equivalent local code. (latest-release, cran-package?): New procedures. (%cran-updater): New variable. * guix/scripts/refresh.scm (%updaters): Add %CRAN-UPDATER. * doc/guix.texi (Invoking guix refresh): Mention CRAN. Ludovic Courtès
2015-10-21import: elpa: Add updater....* guix/import/elpa.scm (latest-release, package-from-gnu.org?): New procedures. (%elpa-updater): New variable. * guix/scripts/refresh.scm (%updaters): Add %ELPA-UPDATER. Ludovic Courtès
2015-10-21import: elpa: Use 'http-fetch/cached' to retrieve the archive....* guix/import/elpa.scm (elpa-fetch-archive): Set %HTTP-CACHE-TTL to 6 hours. (call-with-downloaded-file): Use 'http-fetch/cached' instead of 'url-fetch'. Ludovic Courtès
2015-10-06import: snix: Adjust names of license attributes....* guix/import/snix.scm (license-variable): Adjust names to current Nixpkgs. Ludovic Courtès
2015-10-05import: pypi: Remove unused procedure....* guix/import/pypi.scm (join): Remove. Ludovic Courtès
2015-09-21import: cran-sxml->sexp: Use cran-uri in package expression....* guix/import/cran.scm (cran-sxml->sexp): Use the cran-uri procedure in the generated package expression. Ricardo Wurmus
2015-09-01import: gem: Fix minor bug and add unit test....* guix/import/gem.scm (make-gem-sexp): Properly handle an empty list of licenses. When rendering a list of licenses, cons 'list onto the front of the expression. * tests/gem.scm: New file. * Makefile.am (SCM_TESTS): Add it. David Thompson
2015-08-31import: Add 'cran' importer....* guix/import/cran.scm: New file. * guix/scripts/import.scm: Add "cran" to 'importers'. * guix/scripts/import/cran.scm: New file. * tests/cran.scm: New file. * Makefile.am (MODULES): Add 'guix/import/cran.scm' and 'guix/scripts/import/cran.scm'. (SCM_TESTS): Add 'tests/cran.scm'. * doc/guix.texi (Invoking guix import): Document it. * po/guix/POTFILES.in: Add 'guix/scripts/import/cran.scm'. Ricardo Wurmus
2015-08-27import: Add Ruby gem importer....* gnu/scripts/import.scm (importers): Add "gem". * gnu/import/gem.scm: New file. * gnu/scripts/import/gem.scm: New file. * Makefile.am (MODULES): Add them. * guix.texi ("invoking guix import"): Document it. David Thompson
2015-08-27import: pypi: Move generally useful procedures to utils module....* guix/import/pypi.scm (make-pypi-sexp): Factorize license to symbol conversion code. (string->license, snake-case, guix-hash-url): Move from here... * guix/import/utils.scm: ... to here. (license->symbol): New procedure. David Thompson
2015-08-01import: elpa: Improve error message reporting....* guix/import/elpa.scm (filter-dependencies): Fix bug. (call-with-downloaded-file): Add optional parameter 'error-thunk'. (fetch-package-description): Use it. Federico Beffa
2015-07-21import: pypi: Improve warning message....* guix/import/pypi.scm (guess-requirements): Add missing newline and quotes in warning. Ludovic Courtès
2015-07-08import: cabal: Make token recognition case-insensitive....* guix/import/cabal.scm (make-rx-matcher): Add optional parameter FLAG. (is-property, is-flag, is-src-repo, is-exec, is-test-suite, is-benchmark, is-lib, is-else, is-if): Make test case-insensitive. Federico Beffa
2015-07-08import: Add 'elpa' importer....* guix/import/elpa.scm: New file. * guix/scripts/import.scm: Add "elpa" to 'importers'. * guix/scripts/import/elpa.scm: New file. * Makefile.am (MODULES): Add 'guix/import/elpa.scm' and 'guix/scripts/import/elpa.scm'. (SCM_TESTS): Add 'tests/elpa.scm'. * doc/guix.texi (Invoking guix import): Document it. * tests/elpa.scm: New file. * po/guix/POTFILES.in: Add 'guix/scripts/import/elpa.scm'. Federico Beffa
2015-06-24import: pypi: Detect inputs....* guix/import/pypi.scm (python->package-name, maybe-inputs, compute-inputs, guess-requirements): New procedures. * guix/import/pypi.scm (guix-hash-url): Now takes a filename instead of an URL as input. * guix/import/pypi.scm (make-pypi-sexp): Now tries to generate the inputs automagically. * tests/pypi.scm: Update the test. Cyril Roelandt
2015-06-09import: hackage: Refactor parsing code and add new options....* guix/import/cabal.scm: New file. * guix/import/hackage.scm: Update to use the new Cabal parsing module. * tests/hackage.scm: Update tests. * guix/scripts/import/hackage.scm: Add new '--cabal-environment' and '--stdin' options. * doc/guix.texi: ... and document them. * Makefile.am (MODULES): Add 'guix/import/cabal.scm', 'guix/import/hackage.scm' and 'guix/scripts/import/hackage.scm'. (SCM_TESTS): Add 'tests/hackage.scm'. Federico Beffa
2015-04-19import: cpan: Fix license string for Artistic license....* guix/import/cpan.scm (string->license): Remove extraneous "_0" suffix for Artistics licenses. Eric Bavier
2015-04-08import: Add hackage importer....* guix/import/hackage.scm: New file. * tests/hackage.scm: New file. Federico Beffa
2015-02-20import: cpan: Change %corelist into a promise....Fixes compilation failures in 'guix pull'. * guix/import/cpan.scm (%corelist): Change it to a promise by wrapping it with 'delay'. (cpan-module->sexp): Adapt uses of %corelist by wrapping with 'force'. Mark H Weaver
2015-02-18import: cpan: Use cpan mirror url....* guix/import/cpan.scm (cpan-module->sexp)[source-url]: Substitute cpan mirror url. Eric Bavier
2015-02-18import: cpan: Sort inputs....* guix/import/cpan.scm (cpan-module->sexp)[convert-inputs]: Sort returned list of inputs. Eric Bavier
2015-02-18import: cpan: Adjust licenses....* guix/import/cpan.scm (string->license): Add artistic2.0. Use '(package-license perl) for "perl_5" as is our convention. Eric Bavier
2015-02-18import: cpan: Use corelist to filter dependencies....* guix/import/cpan.scm (%corelist): New variable. (module->dist-name, core-module?): New procedures. (cpan-module->sexp)[convert-inputs]: Use them. Include "test" dependencies in converted inputs. * doc/guix.texi (Invoking guix import)[cpan]: Mention corelist filtering. Eric Bavier
2015-01-09import: Add CPAN importer....* guix/import/cpan.scm, guix/scripts/import/cpan.scm, tests/cpan.scm: New files. * Makefile.am (MODULE)[HAVE_GUILE_JSON]: Add them. * guix/scripts/import.scm (importers): Add cpan. * doc/guix.texi (Requirements): Mention `guix import cpan` as a user of guile-json. (Invoking guix import): Document new `guix import cpan` command. Eric Bavier
2015-01-09import: Factorize utility functions....* guix/import/pypi.scm (hash-table->alist, flatten, assoc-ref*, url-fetch, json-fetch): Pull procedures from here into... * guix/import/utils.scm: Here and... * guix/import/json.scm: Here. New file. * Makefile.am (MODULE)[HAVE_GUILE_JSON]: Add it. * guix/import/gnu.scm (file-sha256): Move from here to... * guix/hash.scm: Here. * tests/pypi.scm (pypi->guix-package): Update mock module reference. Eric Bavier
2015-01-09import: gnu: Propagate the key-download argument....* guix/import/gnu.scm (gnu->guix-package): Pass the key-download argument on to gnu-package->sexp. Eric Bavier
2014-11-25import: gnu: Write the hash in nix-base32 format....* guix/import/gnu.scm (gnu-package->sexp): Use 'bytevector->nix-base32-string', not 'bytevector->base32-string'. Ludovic Courtès
2014-11-11import: Add GNU importer....Suggested by Karl Berry <karl@gnu.org> and Andreas Enge <andreas@enge.fr>. * guix/import/gnu.scm, guix/scripts/import/gnu.scm: New files. * Makefile.am (MODULES): Add them. * guix/scripts/import.scm (importers): Add "gnu". * guix/gnu-maintenance.scm (gnu-release-archive-types): New procedure. (download-tarball): Export. Ludovic Courtès
2014-11-05import: pypi: Gracefully handle non-existent packages....Fixes <http://bugs.gnu.org/18831>. Reported by Ian Denhardt <ian@zenhack.net>. * guix/import/pypi.scm (url-fetch, json-fetch, pypi-fetch): Augment docstring to mention #f on failure. (pypi->guix-package): Likewise, and actually return #f on failure. * guix/scripts/import/pypi.scm (guix-import-pypi): Call 'leave' when 'pypi->guix-package' returns #f. Ludovic Courtès
2014-10-29import: snix: Handle license attributes....* guix/import/snix.scm (snix-derivation->guix-package)[license-variable]: Move to... (license-variable): ... here. Handle license attributes. Ludovic Courtès
2014-10-22guix import pypi: Fix a typo in a docstring....* guix/import/pypi.scm (snake-case): Fix documentation. Cyril Roelandt
2014-10-22guix import pypi: do not add "python-" to a package name if it's already there....* guix/import/pypi.scm (make-pypi-sexp): test whether the package name starts with "python-" before modifying it. Cyril Roelandt