summaryrefslogtreecommitdiff
path: root/guix/import
AgeCommit message (Collapse)Author
2016-12-20import: github: Use 'json-fetch'.Ludovic Courtès
* guix/import/github.scm (json-fetch*): Remove. (latest-released-version): Adjust accordingly.
2016-12-20import: pypi: Match new 'pypi-uri' domain in updater.Marius Bakke
* guix/import/pypi.scm (pypi-package?): Match pypi.io domain.
2016-12-17import cran: Handle HTTP errors.Ricardo Wurmus
Fixes <http://bugs.gnu.org/23479>. * guix/import/cran.scm (fetch-description): Return #f in case of HTTP errors.
2016-12-17import cran: Add recursive importer.Ricardo Wurmus
* guix/import/cran.scm (recursive-import): New variable. (cran->guix-package): Memoize the procedure.
2016-12-17import cran: Ignore default R packages.Ricardo Wurmus
* guix/import/cran.scm (default-r-packages): New variable. (description->package): Drop default R packages from list of inputs.
2016-12-17import cran: description->package: Also return package dependencies.Ricardo Wurmus
* guix/import/cran.scm (description->package): Return package dependencies in addition to generated package expression.
2016-12-17import cran: Move guix-name to top-level.Ricardo Wurmus
* guix/import/cran.scm (guix-name): Move to top-level.
2016-12-17import cran: Remove more invalid characters from package names.Ricardo Wurmus
* guix/import/cran.scm (guix-name): Replace period and underscore with dash; always prepend package names with "r-".
2016-12-17import cran: Handle BSD licenses with LICENSE file.Ricardo Wurmus
* guix/import/cran.scm (string->license): Add cases for BSD licenses with LICENSE file.
2016-12-17import cran: Translate MIT to the Expat license.Ricardo Wurmus
* guix/import/cran.scm (string->license): Translate "MIT" license to Expat license.
2016-12-17import cran: Do not use "or later" licenses by default.Ricardo Wurmus
* guix/import/cran.scm (string->license): Use exact license versions.
2016-12-14import: Add updater for rust crates.David Craven
* guix/import/crate.scm (crate-package?, latest-release, %crate-updater): New variables. * guix/scripts/refresh.scm (%updaters): Add crate updater. * doc/guix.texi: Add crate updater to table.
2016-12-14import: Add importer for rust crates.David Craven
* guix/import/crate.scm: New file. * guix/scripts/import/crate.scm: New file. * guix/scripts/import.scm (importers): Add crate importer. * tests/crate.scm: New file. * doc/guix.texi: Add crate importer to table. * Makefile.am (MODULES, SCM_TESTS): Add files.
2016-12-14import: utils: Add some utilities.David Craven
* guix/import/utils.scm (maybe-inputs, maybe-native-inputs, package->definition): New variables.
2016-12-12import: cpan: Add updater.Eric Bavier
* guix/import/cpan.scm (module->dist-name): Fetch the field of interest. (cpan-fetch): Accept release name rather than module name. (fix-source-url): Rename to ... (cpan-source-url): ... this. Take metadata as parameter. (package->upstream-name, cpan-version, cpan-package?, latest-release): New procedures. (cpan-module->sexp): Use cpan-version and cpan-source-url. (%cpan-updater): New variable. * guix/scripts/refresh.scm (%updaters): Add %CPAN-UPDATER.
2016-12-12import: cpan: Move core-module? to top-level.Eric Bavier
* guix/import/cpan.scm (cpan-module->sexp): Move local core-module? procedure to ... (core-module?): ... here.
2016-12-12import: json: Silence json-fetch output.Eric Bavier
* guix/import/json.scm (json-fetch): Use http-fetch instead of url-fetch to avoid writing to stdout and a temporary file for each invocation. * guix/import/gem.scm (rubygems-fetch): Do not redirect json-fetch output to /dev/null. * guix/import/pypi.scm (pypi-fetch): Likewise.
2016-11-14import/cpan: Maybe coerce version to string.Alex Sassmannshausen
* guix/import/cpan.scm (cpan-module->sexp) <version>: Test if version in meta is string or number. If it is number, coerce to string.
2016-11-03import: cran: Fix off-by-one error.Ricardo Wurmus
* guix/import/cran.scm (package->upstream-name): Do not include leading slash in upstream name URL.
2016-10-26import cran: Use URL for Bioconductor 3.4.Ricardo Wurmus
* guix/import/cran.scm (%bioconductor-svn-url): Update to release URL for version 3.4.
2016-10-23import: pypi: All inputs are propagated-inputs by default.Hartmut Goebel
* guix/import/pypi.scm (maybe-inputs): Return inputs as "propagated-inputs".
2016-10-16import: utils: Remove dependency on (json) module.Alex Kost
This fixes a regression introduced by commit fbe9c1012820ab72f022a6ec958c35b431ae7a74. * guix/import/utils.scm: Remove unused (json) module.
2016-10-10import: github: Add .love extension.Efraim Flashner
* guix/import/github.scm (find-extension): Add '.love' extension to the list of extensions checked.
2016-09-28import: utils: Refactor license->symbol.David Craven
* guix/import/utils.scm (license->symbol): Work for all licenses. * tests/import-utils.scm (license->symbol): Add test.
2016-09-28import: utils: Add spdx-string->license.David Craven
* guix/import/utils.scm (spdx-string->license): New variable. * guix/licenses.scm (agpl1, fdl1.2+): New variables.
2016-09-28import: Move string->license to importers.David Craven
* guix/import/gem.scm (string->license): Move from (guix import utils). * guix/import/pypi.scm (string->license): Move from (guix import utils).
2016-09-28import: Reorder imports in (guix import utils).David Craven
* guix/import/utils.scm (define-module): Reorder imports alphabetically.
2016-08-30import: hackage: Default to https urls.ng0
* guix/import/hackage.scm (hackage-source-url, hackage-cabal-url): Use https for hackage.haskell.org.
2016-08-30import: cpan: Use tls to query api.metacpan.org.ng0
* guix/import/cpan.scm (module->dist-name, cpan-fetch-module): Use tls for api.metacpan.org. Signed-off-by: Eric Bavier <bavier@member.fsf.org>
2016-08-28import: Importers return prefixed licenses.David Craven
* guix/import/utils.scm (define-module): Import licenses with license: prefix. (string->licenses): Use prefixed licenses. (license->symbol): Return symbols with the prefix license:. * guix/tests/pypi.scm (pypi->guix-package): Update test cases. * guix/tests/gem.scm (gem->guix-package): Update test case.
2016-07-26import: pypi: Correctly handle new-style URLs.Ludovic Courtès
Fixes <http://bugs.gnu.org/23997>. * guix/import/pypi.scm (guix-package->pypi-name): Rewrite using 'basename' and 'hyphen-package-name->name+version'. * tests/pypi.scm ("guix-package->pypi-name, old URL style") ("guix-package->pypi-name, new URL style"): New tests.
2016-07-03import: cpan: Use our mirrors for 'https' URLs.Alex Sassmannshausen
* guix/import/cpan.scm (fix-source-url): New procedure. (cpan-module->sexp): Use it to construct our source-url. * tests/cpan.scm: Add tests for fix-source-url. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-06-25import: pypi: do not fail when 'run_requires' is missing from the metadata.Cyril Roelandt
* guix/import/pypi.scm (read-wheel-metadata): do not crash when 'run_requires' is missing from the metadata.
2016-06-14import: pypi: read requirements from wheels.Cyril Roelandt
* doc/guix.tex (Invoking guix import): Mention that the pypi importer works better with "unzip". * guix/import/pypi.scm (latest-wheel-release, wheel-url->extracted-directory): New procedures. * tests/pypi.scm (("pypi->guix-package, wheels"): New test.
2016-06-08gnu-maintenance: Replace 'find-packages' with 'find-package' (singular).Ludovic Courtès
Fixes <http://bugs.gnu.org/23718>. Reported by Efraim Flashner <efraim@flashner.co.il>. * guix/gnu-maintenance.scm (find-packages): Remove. (find-package): New procedure. * guix/import/gnu.scm (gnu->guix-package): Use 'find-package' instead of 'find-packages' and adjust accordingly.
2016-05-31import: github: Tiny cosmetic change.Ludovic Courtès
* guix/import/github.scm (find-extension): Use a one-argument lambda.
2016-05-31import github: Add to extension list.Efraim Flashner
* guix/import/github.scm (find-extension): Add '.tgz' extension.
2016-05-17import: Gracefully report import failures.Ludovic Courtès
Previously, something like 'guix import gnu which' would spit out a backtrace if, say, the 'which' tarball could not be authenticated. * guix/upstream.scm (download-tarball): Mention failure modes in docstring. * guix/import/gnu.scm (gnu-package->sexp): Return #f when 'download-tarball' returns #f. * guix/scripts/import.scm (guix-import): Call 'leave' when IMPORTER does not return a (package ...) sexp.
2016-05-16import cran: latest-bioconductor-release: Wrap Bioconductor URL in list.Ricardo Wurmus
* guix/import/cran.scm (latest-bioconductor-release): Wrap Bioconductor URL in list in the "urls" field of the "upstream-source" value.
2016-05-16import cran: Use URL for Bioconductor 3.3.Ricardo Wurmus
* guix/import/cran.scm (%bioconductor-svn-url): Update to release URL for version 3.3.
2016-05-04utils: Move combinators to (guix combinators).Ludovic Courtès
* guix/utils.scm (compile-time-value, memoize, fold2) (fold-tree, fold-tree-leaves): Move to... * guix/combinators: ... here. New file. * tests/utils.scm ("fold2, 1 list", "fold2, 2 lists") (fold-tree tests): Move to... * tests/combinators.scm: ... here. New file. * Makefile.am (MODULES, SCM_TESTS): Add them. * gnu/packages.scm, gnu/packages/bootstrap.scm, gnu/services/herd.scm, guix/build-system/gnu.scm, guix/build-system/python.scm, guix/derivations.scm, guix/gnu-maintenance.scm, guix/import/elpa.scm, guix/scripts/archive.scm, guix/scripts/build.scm, guix/scripts/graph.scm, guix/scripts/lint.scm, guix/scripts/size.scm, guix/scripts/substitute.scm, guix/serialization.scm, guix/store.scm, guix/ui.scm: Adjust imports accordingly.
2016-04-25import: cpan: check version bounds on core modules.Eric Bavier
Modules may be removed from Perl's core, so we must check for a removal version. * guix/import/cpan.scm (cpan-module->sexp)[core-module?]: Also check version upper bound.
2016-04-15upstream: Pass a package object to updaters.Ludovic Courtès
* guix/upstream.scm (package-update-path): Pass PACKAGE to 'latest-release'. * guix/gnu-maintenance.scm (latest-release*) (latest-gnome-release, latest-xorg-release): Adjust accordingly. * guix/import/cran.scm (latest-cran-release): (latest-bioconductor-release): Likewise. * guix/import/elpa.scm (latest-release): Likewise. * guix/import/gem.scm (latest-release): Likewise. * guix/import/github.scm (latest-release): Likewise. * guix/import/hackage.scm (latest-release): Likewise. * guix/import/pypi.scm (latest-release): Likewise.
2016-03-30import: Add Hackage updater.Eric Bavier
* guix/import/hackage.scm (guix-package->hackage-name, hackage-package?) (latest-release): New procedures. (%hackage-updater): New variable. * guix/scripts/refresh.scm (%updaters): Add it. * doc/guix.texi (Invoking guix refresh): Mention it.
2016-03-30import: hackage: Silence download output.Eric Bavier
* guix/import/hackage.scm (hackage-fetch): Use http-fetch to avoid progress output from url-fetch.
2016-03-30import: hackage: Factorize url synthesis.Eric Bavier
* guix/import/hackage.scm (hackage-source-url, hackage-cabal-url): New procedures. (hackage-fetch, hackage-module->sexp): Use them.
2016-03-22import: cran: Accept single URL in addition to single URL.Ricardo Wurmus
* guix/import/cran.scm (package->upstream-name): Match single URL in addition to list of URLs.
2016-03-19import: pypi: Emit 'pypi-uri' only when it yields the right URL.Ludovic Courtès
Fixes <http://bugs.gnu.org/23062>. Reported by Danny Milosavljevic <dannym@scratchpost.org>. * guix/import/pypi.scm (make-pypi-sexp): Check whether 'pypi-uri' returns SOURCE-URL and fall back to the full URL otherwise. * tests/pypi.scm ("pypi->guix-package"): Adjust expected URI accordingly. Co-authored-by: Danny Milosavljevic <dannym@scratchpost.org>
2016-03-06import: snix: Use the right 'package-name->name+version'.Ludovic Courtès
Fixes a regression introduced in 1b846da8c372bee78851439fd9e72b2499115e5a. * guix/import/snix.scm: Use 'package-name->name+version' from (guix build utils).
2016-02-26import: Add github-updater.Ben Woodcroft
* guix/import/github.scm: New file. * guix/scripts/refresh.scm (%updaters): Add %GITHUB-UPDATER. * doc/guix.texi (Invoking guix refresh): Mention it. * Makefile.am (MODULES): Add gnu/import/github.scm.