aboutsummaryrefslogtreecommitdiff
path: root/guix/import
Commit message (Collapse)AuthorAge
...
* import: json: Explicitly ask for JSON data.Federico Beffa2017-02-09
| | | | * guix/import/json.scm (json-fetch): Add #:headers to http-fetch call.
* import: pypi: Correctly handle multiple-URL origins.Ludovic Courtès2017-02-08
| | | | | | | | | | Fixes <https://bugs.gnu.org/25635>. Reported by Sergei Trofimovich <slyfox@inbox.ru>. * guix/import/pypi.scm (guix-package->pypi-name)[url->pypi-name]: New procedure. Rewrite body to match lists in addition to strings. * tests/pypi.scm ("guix-package->pypi-name, several URLs"): New test.
* Add (guix memoization).Ludovic Courtès2017-01-28
| | | | | | | | | | | | | * guix/combinators.scm (memoize): Remove. * guix/memoization.scm: New file. * Makefile.am (MODULES): Add it. * gnu/packages.scm, gnu/packages/bootstrap.scm, guix/build-system/gnu.scm, guix/build-system/python.scm, guix/derivations.scm, guix/gnu-maintenance.scm, guix/import/cran.scm, guix/import/elpa.scm, guix/modules.scm, guix/scripts/build.scm, guix/scripts/graph.scm, guix/scripts/lint.scm, guix/store.scm, guix/utils.scm: Adjust imports accordingly.
* import: github: Better tolerate unexpected file extensions.Ludovic Courtès2017-01-28
| | | | | * guix/import/github.scm (find-extension): Add ".tbz". (updated-github-url): When 'find-extension' returns #f, use "" for EXT.
* import: pypi: Don't add setuptools to propagated-inputs.Carlo Zancanaro2017-01-26
| | | | | * guix/import/pypi.scm (compute-inputs): Don't add setuptools to the imported package's propagated-inputs.
* import: github: Catch HTTP 403 error during fetch.Mathieu OTHACEHE2017-01-19
| | | | | | | | * guix/import/github.scm (json-fetch*): Catch 403 HTTP error that may be raised if a github token has not been set. Signed-off-by: Mathieu OTHACEHE <m.othacehe@gmail.com> Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* http-client: Provide 'User-Agent' header by default.Ludovic Courtès2017-01-13
| | | | | | | * guix/http-client.scm (http-fetch): Add #:headers parameter and honor it. Rename 'auth-header' to 'headers'. * guix/import/github.scm (json-fetch*): Add comment about required User-Agent.
* import: github: Fix regression on the /releases retrieval.Ludovic Courtès2017-01-13
| | | | | | | | | Fixes a regression introduced in 62bd24db39a86f80242f923eb4cc2f18f3b02c67, which introduced a call to 'hash-table->alist'. * guix/import/github.scm (json-fetch*): New procedure. (latest-released-version): Use it.
* build-system: cargo: Handle Cargo.lock file not present.David Craven2017-01-01
| | | | | | | | | | | | | | | | | | * guix/build-system/cargo.scm (cargo-build): Add src output. (private-keywords): Add #:outputs. * guix/build/cargo-build-system.scm (configure): Use /share/rust-source when replacing inputs. (build, check): Don't do anything when there isn't a Cargo.lock file present. (install): Install sources to src output. When a Cargo.lock file is present use cargo install to install binaries to out. * guix/import/crate.scm (make-crate-sexp): Importer uses the src output for crate inputs by default. * guix/import/utils.scm (package-names->package-inputs, maybe-inputs, maybe-native-inputs): Take an optional output argument. * tests/crate.scm (crate->guix-package test): Update. Problem reported by Francisco Gómez García <espectalll@kydara.com>.
* import: crate: Provide a default home-page value.David Craven2017-01-01
| | | | | | | | * guix/import/crate.scm (make-crate-sexp): Provide a default home-page value. * tests/crate.scm (test-crate): Add repository field. Problem reported by ng0 <ng0@libertad.pw>.
* import: elpa: Import dependencies as propagated-inputsCarlo Zancanaro2016-12-29
| | | | | | | * guix/import/elpa.scm (elpa-package->sexp): Import dependencies as propagated-inputs. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* import: elpa: Fix call-with-downloaded-fileCarlo Zancanaro2016-12-29
| | | | | | | * guix/import/elpa.scm (call-with-downloaded-file): Make function behaviour match documentation string. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* import: github: Use 'json-fetch'.Ludovic Courtès2016-12-20
| | | | | * guix/import/github.scm (json-fetch*): Remove. (latest-released-version): Adjust accordingly.
* import: pypi: Match new 'pypi-uri' domain in updater.Marius Bakke2016-12-20
| | | | * guix/import/pypi.scm (pypi-package?): Match pypi.io domain.
* import cran: Handle HTTP errors.Ricardo Wurmus2016-12-17
| | | | | | | Fixes <http://bugs.gnu.org/23479>. * guix/import/cran.scm (fetch-description): Return #f in case of HTTP errors.
* import cran: Add recursive importer.Ricardo Wurmus2016-12-17
| | | | | * guix/import/cran.scm (recursive-import): New variable. (cran->guix-package): Memoize the procedure.
* import cran: Ignore default R packages.Ricardo Wurmus2016-12-17
| | | | | * guix/import/cran.scm (default-r-packages): New variable. (description->package): Drop default R packages from list of inputs.
* import cran: description->package: Also return package dependencies.Ricardo Wurmus2016-12-17
| | | | | * guix/import/cran.scm (description->package): Return package dependencies in addition to generated package expression.
* import cran: Move guix-name to top-level.Ricardo Wurmus2016-12-17
| | | | * guix/import/cran.scm (guix-name): Move to top-level.
* import cran: Remove more invalid characters from package names.Ricardo Wurmus2016-12-17
| | | | | * guix/import/cran.scm (guix-name): Replace period and underscore with dash; always prepend package names with "r-".
* import cran: Handle BSD licenses with LICENSE file.Ricardo Wurmus2016-12-17
| | | | | * guix/import/cran.scm (string->license): Add cases for BSD licenses with LICENSE file.
* import cran: Translate MIT to the Expat license.Ricardo Wurmus2016-12-17
| | | | | * guix/import/cran.scm (string->license): Translate "MIT" license to Expat license.
* import cran: Do not use "or later" licenses by default.Ricardo Wurmus2016-12-17
| | | | * guix/import/cran.scm (string->license): Use exact license versions.
* import: Add updater for rust crates.David Craven2016-12-14
| | | | | | | * 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.
* import: Add importer for rust crates.David Craven2016-12-14
| | | | | | | | | * 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.
* import: utils: Add some utilities.David Craven2016-12-14
| | | | | * guix/import/utils.scm (maybe-inputs, maybe-native-inputs, package->definition): New variables.
* import: cpan: Add updater.Eric Bavier2016-12-12
| | | | | | | | | | | | * 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.
* import: cpan: Move core-module? to top-level.Eric Bavier2016-12-12
| | | | | | * guix/import/cpan.scm (cpan-module->sexp): Move local core-module? procedure to ... (core-module?): ... here.
* import: json: Silence json-fetch output.Eric Bavier2016-12-12
| | | | | | | | * 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.
* import/cpan: Maybe coerce version to string.Alex Sassmannshausen2016-11-14
| | | | | * guix/import/cpan.scm (cpan-module->sexp) <version>: Test if version in meta is string or number. If it is number, coerce to string.
* import: cran: Fix off-by-one error.Ricardo Wurmus2016-11-03
| | | | | * guix/import/cran.scm (package->upstream-name): Do not include leading slash in upstream name URL.
* import cran: Use URL for Bioconductor 3.4.Ricardo Wurmus2016-10-26
| | | | | * guix/import/cran.scm (%bioconductor-svn-url): Update to release URL for version 3.4.
* import: pypi: All inputs are propagated-inputs by default.Hartmut Goebel2016-10-23
| | | | | * guix/import/pypi.scm (maybe-inputs): Return inputs as "propagated-inputs".
* import: utils: Remove dependency on (json) module.Alex Kost2016-10-16
| | | | | | | This fixes a regression introduced by commit fbe9c1012820ab72f022a6ec958c35b431ae7a74. * guix/import/utils.scm: Remove unused (json) module.
* import: github: Add .love extension.Efraim Flashner2016-10-10
| | | | | * guix/import/github.scm (find-extension): Add '.love' extension to the list of extensions checked.
* import: utils: Refactor license->symbol.David Craven2016-09-28
| | | | | * guix/import/utils.scm (license->symbol): Work for all licenses. * tests/import-utils.scm (license->symbol): Add test.
* import: utils: Add spdx-string->license.David Craven2016-09-28
| | | | | * guix/import/utils.scm (spdx-string->license): New variable. * guix/licenses.scm (agpl1, fdl1.2+): New variables.
* import: Move string->license to importers.David Craven2016-09-28
| | | | | * guix/import/gem.scm (string->license): Move from (guix import utils). * guix/import/pypi.scm (string->license): Move from (guix import utils).
* import: Reorder imports in (guix import utils).David Craven2016-09-28
| | | | * guix/import/utils.scm (define-module): Reorder imports alphabetically.
* import: hackage: Default to https urls.ng02016-08-30
| | | | | * guix/import/hackage.scm (hackage-source-url, hackage-cabal-url): Use https for hackage.haskell.org.
* import: cpan: Use tls to query api.metacpan.org.ng02016-08-30
| | | | | | | * 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>
* import: Importers return prefixed licenses.David Craven2016-08-28
| | | | | | | | | * 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.
* import: pypi: Correctly handle new-style URLs.Ludovic Courtès2016-07-26
| | | | | | | | | 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.
* import: cpan: Use our mirrors for 'https' URLs.Alex Sassmannshausen2016-07-03
| | | | | | | | * 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>
* import: pypi: do not fail when 'run_requires' is missing from the metadata.Cyril Roelandt2016-06-25
| | | | | * guix/import/pypi.scm (read-wheel-metadata): do not crash when 'run_requires' is missing from the metadata.
* import: pypi: read requirements from wheels.Cyril Roelandt2016-06-14
| | | | | | | | * 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.
* gnu-maintenance: Replace 'find-packages' with 'find-package' (singular).Ludovic Courtès2016-06-08
| | | | | | | | | | 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.
* import: github: Tiny cosmetic change.Ludovic Courtès2016-05-31
| | | | * guix/import/github.scm (find-extension): Use a one-argument lambda.
* import github: Add to extension list.Efraim Flashner2016-05-31
| | | | * guix/import/github.scm (find-extension): Add '.tgz' extension.
* import: Gracefully report import failures.Ludovic Courtès2016-05-17
| | | | | | | | | | | | 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.