aboutsummaryrefslogtreecommitdiff
path: root/guix/import/cran.scm
Commit message (Collapse)AuthorAge
* import/cran: Use CRAN mirrors.Ricardo Wurmus2024-05-09
| | | | | | | * guix/import/cran.scm (%cran-url): Use mirror URL instead of primary project domain name. Change-Id: I23a51147d785d6cb645f953ca5ce0ff72f8bd367
* guix: Update Bioconductor version to 3.19.Ricardo Wurmus2024-05-08
| | | | | | | * guix/build-system/r.scm (bioconductor-uri): Use 3.19 URL. * guix/import/cran.scm (%bioconductor-version): Set to 3.19. Change-Id: I7a2c4dfcdb2c4cdfef581f823d87e73acc163549
* import/cran: Add one more invalid package.Ricardo Wurmus2024-03-06
| | | | | | * guix/import/cran.scm (invalid-packages): Add "use_c17". Change-Id: Ie3b6455d4eff97811057cd82dca460367a4583e5
* import/cran: Use downstream name when using specifications.Ricardo Wurmus2024-02-20
| | | | | | | | | | Reported by Alexander Blume at <https://github.com/BIMSBbioinfo/guix.install/issues/4>. * guix/import/cran.scm (format-inputs): Use UPSTREAM-INPUT-DOWNSTREAM-NAME when %INPUT-STYLE is set to 'SPECIFICATION. Change-Id: I2f0963af197896aafd613b253d8712e41a716e52
* import/cran: Set HOME when ExperimentHub is among the inputs.Ricardo Wurmus2024-01-22
| | | | | | | * guix/import/cran.scm (phases-for-inputs): Add 'set-HOME phase when ExperimentHub is among inputs. Change-Id: Ie3a2443934704eed8694a76a651b806209722421
* import/cran: Also update annotation and experiment packages.Ricardo Wurmus2024-01-22
| | | | | | | | * guix/import/cran.scm (latest-bioconductor-release): Determine package type and pass it to LATEST-BIOCONDUCTOR-PACKAGE-VERSION and BIOCONDUCTOR-URI. (%bioconductor-updater): Compose all bioconductor predicates. Change-Id: Icef3ae05e28ed0f2796d9abf90e51821d2dfcc4c
* import/cran: Generate rudimentary ARGUMENTS field.Ricardo Wurmus2024-01-21
| | | | | | | * guix/import/cran.scm (phases-for-inputs, maybe-arguments): New procedures. (description->package): Splice in result of MAYBE-ARGUMENTS. Change-Id: I578e1903f37c91bf865f0be49b04187ec372ed05
* import/cran: Add transformation for "packaging".Ricardo Wurmus2024-01-18
| | | | | | * guix/import/cran.scm (transform-sysname): Add case for "python-packaging". Change-Id: I0d125fb3858c009a8527d60f56754b9b9c90b409
* import/cran: Accept optional alternative download procedure.Ricardo Wurmus2024-01-17
| | | | | | | | | | This is useful for cached mass imports. * guix/import/cran.scm (fetch-description-from-tarball): Accept optional download keyword. (fetch-description): Accept optional replacement-download argument. Change-Id: Ic917074656ac34a24c8e7eea3d3e0528fc5180b3
* import/cran: Add more invalid package names and translations.Ricardo Wurmus2024-01-16
| | | | | | | | | These were encountered in a mass import of Bioconductor packages. * guix/import/cran.scm (invalid-packages): Add "rtools". (transform-sysname): Add aliases for Python and bioinformatics packages. Change-Id: I97e13cee10c2ee85d4b9296d91afccbdbcec4946
* import/cran: Add more invalid package names and translations.Ricardo Wurmus2024-01-16
| | | | | | | * guix/import/cran.scm (invalid-packages): Add "build-essential". (transform-sysname): Add aliases for openssl, libxml2, and zlib. Change-Id: Ia142ebc388dbcd47caf3b2c5165bc21227bc1832
* import/cran: Restore format-inputs.Ricardo Wurmus2024-01-01
| | | | | | | | | | | This fixes a regression introduced in commit e6223017d95bc615b2648f0798d9a3904d5b5f57 causing the selected input style to be ignored. * guix/import/cran.scm (format-inputs): New procedure. (maybe-inputs): Use it. Change-Id: I0d36f972fcb9888ed2be4ec9360bbcab13c25c5d
* import/cran: Add invalid package.Ricardo Wurmus2024-01-01
| | | | | | * guix/import/cran.scm (invalid-packages): Add libR. Change-Id: I1e06b44785051dfc4fb85ba06062aa8c8e003495
* import/cran: Export a few more variables and procedures.Ricardo Wurmus2023-12-19
| | | | | | | | | | This allows users of this module to provide e.g. caching alternatives to the download and fetch procedures. * guix/import/cran.scm (%bioconductor-version, download, fetch-description): Make these variables public. Change-Id: I9ce14db9be9b8b3314b06fa9eb50a4e24c5dd718
* guix: Upgrade to Bioconductor 3.18.Ricardo Wurmus2023-11-03
| | | | | | | | * guix/build-system/r.scm (bioconductor-uri): Bump Bioconductor version to 3.18. * guix/import/cran.scm (%bioconductor-version): Same. Change-Id: Ic3fc2e6ab6b5f6f6e55662f81baee67391158c5b
* import/cran: Add one more package name transformation.Ricardo Wurmus2023-07-12
| | | | * guix/import/cran.scm (transform-sysname): Add entry for "zlib-devel".
* import/cran: Add another clause for ASL 2.0.Ricardo Wurmus2023-06-14
| | | | * guix/import/cran.scm (string->license): Add clause for >= 2.0.
* import/cran: Ensure current package is not among inputs.Ricardo Wurmus2023-06-05
| | | | | * guix/import/cran.scm (cran-package-inputs): Remove the current package from the result.
* import/cran: string->license: Add another case for GPLv3+.Ricardo Wurmus2023-06-02
| | | | * guix/import/cran.scm (string->license): Translate "GPL (>=3)" to gpl3+.
* import/cran: Libraries should not use CRAN-GUIX-NAME.Ricardo Wurmus2023-06-02
| | | | | * guix/import/cran.scm (source-dir->dependencies): Do not use CRAN-GUIX-NAME when processing result of NEEDED-LIBRARIES-IN-DIRECTORY.
* import/cran: Also search Makevars file for libraries.Ricardo Wurmus2023-06-02
| | | | | * guix/import/cran.scm (needed-libraries-in-directory): Look at Makevars in addition to Makevars.in for libraries.
* upstream: Replace 'input-changes' field by 'inputs'.Ludovic Courtès2023-05-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Returning the expected list of inputs rather than changes relative to the current package definition is less ambiguous and offers more possibilities for further processing. * guix/upstream.scm (<upstream-source>)[input-changes]: Remove. [inputs]: New field. (<upstream-input>): New record type. * guix/upstream.scm (upstream-input-type-predicate) (input-type-filter, upstream-source-regular-inputs) (upstream-source-native-inputs, upstream-source-propagated-inputs): New procedures. (changed-inputs): Expect an <upstream-source> as its second argument. Adjust accordingly. * guix/import/pypi.scm (distribution-sha256): New procedure. (maybe-inputs): Expect a list of <upstream-input>. (compute-inputs): Rewrite to return a list of <upstream-input>. (pypi-package-inputs, pypi-package->upstream-source): New procedures. (make-pypi-sexp): Use it. * guix/import/stackage.scm (latest-lts-release): Define 'cabal'. Replace 'input-changes' field by 'inputs'. * guix/scripts/refresh.scm (update-package): Use 'changed-inputs' instead of 'upstream-source-input-changes'. * tests/cran.scm ("description->package"): Adjust order of inputs. * tests/pypi.scm (default-sha256, default-sha256/base32): New variables. (foo-json): Add 'digests' entry. ("pypi->guix-package, no wheel"): Check HASH against DEFAULT-SHA256/BASE32. ("pypi->guix-package, wheels"): Likewise. ("pypi->guix-package, no usable requirement file."): Likewise. ("pypi->guix-package, package name contains \"-\" followed by digits"): Likewise. ("package-latest-release"): New test. * tests/upstream.scm (test-package-sexp): Remove. ("changed-inputs returns no changes"): Rewrite to use <upstream-source>. (test-new-package-sexp): Remove. ("changed-inputs returns changes to plain input list"): Rewrite. ("changed-inputs returns changes to all plain input lists"): Likewise. ("changed-inputs returns changes to labelled input list") ("changed-inputs returns changes to all labelled input lists"): Remove. * guix/import/cran.scm (maybe-inputs): Expect PACKAGE-INPUTS to be a list of <upstream-input>. (source-dir->dependencies): Return a list of <upstream-input>. (vignette-builders): Likewise. (uri-helper, cran-package-source-url) (cran-package-propagated-inputs, cran-package-inputs): New procedures. (description->package): Use them instead of local definitions. (latest-cran-release): Replace 'input-changes' field by 'inputs'. (latest-bioconductor-release): Likewise. (format-inputs): Remove. * guix/import/hackage.scm (cabal-package-inputs): New procedure. (hackage-module->sexp): Use it. [maybe-inputs]: Expect a list of <upstream-input>.
* import/cran: Translate from xml2 to libxml2.Ricardo Wurmus2023-04-29
| | | | | * guix/import/cran.scm (transform-sysname): Add translation from xml2 to libxml2.
* import/cran: Add "unix" to list of invalid packages.Ricardo Wurmus2023-04-29
| | | | * guix/import/cran.scm (invalid-packages): Add "unix".
* guix: Upgrade to Bioconductor 3.16.Ricardo Wurmus2023-04-29
| | | | | | * guix/build-system/r.scm (bioconductor-uri): Bump Bioconductor version to 3.17. * guix/import/cran.scm (%bioconductor-version): Same.
* guix: Strip #:use-module lists.Ludovic Courtès2023-03-13
| | | | | | | | | | | | This was obtained by setting up this environment: guix shell -D guix --with-input=guile@3.0.9=guile-next \ --with-commit=guile-next=e2ed33ef0445c867fe56c247054aa67e834861f2 -- make -j5 then adding 'unused-module' to (@@ (guix build compiler) %warnings), building, and checking all the "unused module" warnings and removing those that were definitely unused.
* import/cran: Remove directory-needs-zlib? in favor of ↵Ricardo Wurmus2023-02-18
| | | | | | | | needed-libraries-in-directory. * guix/import/cran.scm (directory-needs-zlib?): Remove procedure. (source-dir->dependencies): Use needed-libraries-in-directory instead of directory-needs-zlib?.
* import/cran: Add generic way to detect needed libraries.Ricardo Wurmus2023-02-18
| | | | | * guix/import/cran.scm (needed-libraries-in-directory): New procedure. (libraries-pattern, packages-for-matches): New variables.
* import/cran: Process all vignette builders.Ricardo Wurmus2023-02-18
| | | | | | * guix/import/cran.scm (needs-knitr?): Remove procedure. (vignette-builders): New procedure. (description->package): Use vignette-builders instead of needs-knitr?.
* import/cran: Add name mapping for libjpeg.Ricardo Wurmus2023-02-18
| | | | | * guix/import/cran.scm (transform-sysname): Add mapping from libjpeg to libjpeg-turbo.
* import/cran: Add directory-needs-esbuild?.Ricardo Wurmus2023-02-18
| | | | | * guix/import/cran.scm (directory-needs-esbuild?): New procedure. (source-dir->dependencies): Use it.
* import/cran: Fix Bioconductor updater.Ricardo Wurmus2023-01-09
| | | | | * guix/import/cran.scm (latest-bioconductor-release): Use LATEST-VERSION instead of VERSION, which is always #F.
* import/cran: Depend on gfortran if .f files are detected too.Lars-Dominik Braun2022-12-31
| | | | | | | There was an inconsistency between tarball-needs-fortran? and directory-needs-fortran?. * guix/import/cran.scm (directory-needs-fortran?): Match .f files too.
* import/cran: Use multiple values instead of a list of lists.Ricardo Wurmus2022-12-31
| | | | | * guix/import/cran.scm (source-dir->dependencies): Return multiple values. (description->package): Bind two values.
* import/cran: Always operate on source directory.Lars-Dominik Braun2022-12-31
| | | | | | | | | | | | | | | | | Extracting the source tarball multiple times is very slow and a speedup of >2x (without network I/O) can be achieved by coalescing all NEEDS-X? functions into a single one, which extracts a tarball only once. * guix/import/cran.scm (tarball-needs-fortran?): Remove unused function. (needs-fortran?): Ditto. (tarball-files-match-pattern?): Ditto. (tarball-needs-zlib?): Ditto. (needs-zlib?): Ditto. (tarball-needs-pkg-config?): Ditto. (needs-pkg-config?): Ditto. (source-dir->dependencies): New function. (source->dependencies): New function. (description->package): Use it.
* import/cran: Translate more package dependencies.Lars-Dominik Braun2022-12-31
| | | | | | | Assumes we use package variable names, not package specification names. * guix/import/cran.scm (invalid-packages): Add more invalid names. (transform-sysname): Transform more package names.
* import/cran: Allow overriding tarball download.Lars-Dominik Braun2022-12-31
| | | | | | * guix/import/cran.scm (description->package): Accept new keyword argument DOWNLOAD-SOURCE. (cran->guix-package): Ditto.
* import/cran: Allow overriding description fetch function.Lars-Dominik Braun2022-12-31
| | | | | * guix/import/cran.scm (cran->guix-package): New keyword argument FETCH-DESCRIPTION.
* import/cran: Allow custom license prefix.Lars-Dominik Braun2022-12-31
| | | | | | | | | | | | * guix/import/cran.scm (string-licenses): Add license-prefix argument. (string->license): Ditto. (description->package): Ditto. (cran->guix-package): Ditto. (cran-recursive-import): Ditto. * guix/scripts/import/cran.scm (%options): Add new option -p/--license-prefix. (show-help): Document it. (parse-options): Pass it to importer. * doc/guix.texi (Invoking guix import): Document it.
* import/utils: Pass all arguments through to package builder.Lars-Dominik Braun2022-12-31
| | | | | | | | | | | | | | | | | | | | | | | | | Individual importer may have additional arguments. * guix/import/utils.scm (recursive-import): Patch all keyword arguments through to repo->guix-package. * guix/import/cran.scm (cran->guix-package): Add #:allow-other-keys. * guix/import/crate.scm (crate->guix-package): Ditto. * guix/import/egg.scm (egg->guix-package): Ditto. * guix/import/elm.scm (elm->guix-package): Ditto. * guix/import/gem.scm (gem->guix-package): Ditto. * guix/import/gnu.scm (gnu->guix-package): Ditto. * guix/import/go.scm (go-module->guix-package): Ditto. (go-module-recursive-import): Ditto. * guix/import/hackage.scm (hackage->guix-package): Ditto. (hackage-recursive-import): Ditto. * guix/import/hexpm.scm (hexpm->guix-package): Ditto. * guix/import/minetest.scm (minetest->guix-package): Ditto. (minetest-recursive-import): Ditto. * guix/import/opam.scm (opam->guix-package): Ditto. * guix/import/pypi.scm (pypi->guix-package): Ditto. * guix/import/stackage.scm (stackage->guix-package): Ditto. (stackage-recursive-import): Ditto. * guix/import/texlive.scm (texlive->guix-package): Ditto.
* import: Issue error-message if version is given.Hartmut Goebel2022-12-26
| | | | | | | | | | | | | | | | These importer don't support importing a specific version, thus the updater does neither. Issue an error message in case version is given. * guix/import/cpan.scm (latest-release), guix/import/elpa.scm (latest-release), guix/import/hackage.scm (latest-release), guix/import/minetest.scm (latest-minetest-release), guix/import/opam.scm (latest-release): Add #:version argument, issue error if version is given. * guix/import/cran.scm (latest-cran-release): Same. (latest-bioconductor-release) Same. <version>: rename to <latest-version>. * guix/import/stackage.scm (latest-lts-release): For each generated updater, add #:version argument and issue error if version is given.
* upstream-updater: Rename record field.Hartmut Goebel2022-12-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The next commits will make the functions, which are currently importing the latest version of a package, change into importing the latest or a given version of the package (for those updaters supporting specifying a version). Thus the name ‘latest‘ is no longer appropriate. * guix/upstream.scm (upstream-updater) Rename field [latest] to [import]. (lookup-updater, package-latest-release) Adjust fieldname accordingly. * guix/gnu-maintenance.scm (%gnu-updater, %gnu-ftp-updater, %savannah-updater, %sourceforge-updater, %xorg-updater, %kernel.org-updater, %generic-html-updater), guix/import/cpan.scm (%cpan-updater), guix/import/cran.scm (%cran-updater, %bioconductor-updater), guix/import/crate.scm (%crate-updater), guix/import/egg.scm (%egg-updater), guix/import/elpa.scm (%elpa-updater), guix/import/gem.scm (%gem-updater), guix/import/git.scm (%generic-git-updater), guix/import/github.scm (%github-updater), guix/import/gnome.scm (%gnome-updater), guix/import/hackage.scm (%hackage-updater), guix/import/hexpm.scm (%hexpm-updater), guix/import/kde.scm (%kde-updater), guix/import/launchpad.scm (%launchpad-updater), guix/import/minetest.scm (%minetest-updater), guix/import/opam.scm (%opam-updater), guix/import/pypi.scm (%pypi-updater), guix/import/stackage.scm (%stackage-updater), tests/import-github.scm (found-sexp) tests/transformations.scm ("options->transformation, with-latest"): Adjust fieldname accordingly.
* import/cran: Add more mappings from sysnames to Guix package names.Ricardo Wurmus2022-12-19
| | | | * guix/import/cran.scm (transform-sysname): Add more mappings.
* import/cran: Add package name mapping.Ricardo Wurmus2022-11-29
| | | | * guix/import/cran.scm (transform-sysname): Add mapping from sqlite3 to sqlite.
* guix: Upgrade to Bioconductor 3.16.zimoun2022-11-24
| | | | | | * guix/build-system/r.scm (bioconductor-uri): Bump Bioconductor version to 3.16. * guix/import/cran.scm (%bioconductor-version): Same.
* import/cran: Add package mapping for freetype.Ricardo Wurmus2022-11-16
| | | | * guix/import/cran.scm (transform-sysname): Map "freetype2" to "freetype".
* import/cran: Add package name mapping for "booktabs".Ricardo Wurmus2022-11-11
| | | | * guix/import/cran.scm (transform-sysname): Add mapping for "booktabs".
* import/cran: Add more strings to the list of invalid packages.Ricardo Wurmus2022-11-11
| | | | | * guix/import/cran.scm (invalid-packages): Add "c++", "c++17", and "posix.1-2001" to list of invalid packages.
* import/cran: Process more complex license strings.Ricardo Wurmus2022-09-28
| | | | | | | * guix/import/cran.scm (string->license): Add more match clauses. (string->licenses): Split license conjunctions at "|" and apply string->license on each license. (description->package): Use string->licenses.
* import/cran: Use beautify-synopsis.Ricardo Wurmus2022-09-28
| | | | * guix/import/cran.scm (description->package): Use beautify-synopsis.