Age | Commit message (Expand) | Author |
2023-07-18 | guix: texlive importer: Fix build system and arguments for meta-packages....* guix/import/texlive.scm (tlpdb->package): Meta packages should use trivial
build system and an appropriate builder.
* tests/texlive.scm ("texlive->guix-package, meta-package"):
("texlive->guix-package, translate dependencies"): Update tests.
| Nicolas Goaziou |
2023-07-18 | guix: texlive importer ignores dependencies unnecessary in Guix....* guix/import/texlive.scm (translate-depends): New function.
(tlpdb->package): Use new function.
* tests/texlive.scm (%fake-tlpdb): Add test data.
("texlive->guix-package, translate dependencies"):
("texlive->guix-package, lonely `hyphen-base' dependency and ARCH"): New tests.
| Nicolas Goaziou |
2023-07-18 | guix: Let texlive importer suggest format creation....* guix/import/texlive.scm (tlpdb): Store "execute" entries.
(tlpdb->package): Add #:CREATE-FORMATS argument when there is an AddFormat
execute action.
* tests/texlive.scm (%fake-tlpdb): Add test data.
("texlive->guix-package, with TeX format"):
("texlive->guix-package, execute but no TeX format"): New tests.
| Nicolas Goaziou |
2023-07-18 | guix: import: Improve importing texlive meta packages....* guix/import/texlive.scm (tlpdb->package): Generate more appropriate source,
home page and license fields when importing meta packages, i.e., TeX Live
collections and schemes.
* tests/texlive.scm (%fake-tlpdb): Add test data.
("texlive->guix-package, meta-package"): New test.
| Nicolas Goaziou |
2023-07-18 | guix: import: Fix Creative Common licenses in texlive importer....* guix/import/texlive.scm (string->license): Fix symbol used for some CC-BY
licenses. Add version 4.0 for CC-BY and CC-BY-SA.
| Nicolas Goaziou |
2023-07-18 | guix: import: Handle native inputs in texlive importer....* guix/import/texlive.scm (tlpdb->package): Add TEXLIVE-METAFONT as a native
input whenever font metrics are to be generated.
* tests/texlive.scm (%fake-tlpdb): Add test data.
("texlive->guix-package, with METAFONT files"): New test.
| Nicolas Goaziou |
2023-07-18 | guix: import: Fix multiple licenses output in texlive importer....* guix/import/texlive.scm (string->license): Add missing case and try first to
split license strings before giving up.
* tests/texlive.scm (%fake-tlpdb): Add test data.
("texlive->guix-package, multiple licenses"): New test.
| Nicolas Goaziou |
2023-07-18 | guix: import: texlive use full file names for generic directories....Generic directories, such as "doc/info/" or "doc/man" are shared by multiple
packages. With this change, the texlive importer specifies the full file name
of package-specific files there, making sure only them are downloaded.
* guix/import/texlive.scm (texlive-generic-locations): New variable.
(files->locations): Renamed from files->directories.
Provide full file names when necessary.
(tlpdb->package): Apply renaming.
| Nicolas Goaziou |
2023-07-18 | guix: import: Improve home-page generation in texlive importer....* guix/import/texlive.scm (tlpdb): Also register `catalogue' key.
(tlpdb->package): First try to use catalogue for the home-page, then the
name.
* tests/texlive.scm (%fake-tlpdb): Add tests data.
("texlive->guix-package, with catalogue entry, no inputs"): New test.
| Nicolas Goaziou |
2023-07-18 | guix: import: Update texlive importer according to new build system....* guix/import/texlive.scm (tlpdb->package): Generate a package that doesn't
need SIMPLE-TEXLIVE-PACKAGE.
* guix/import/utils.scm (package->definition): Remove special case for
`simple-texlive-package'.
* tests/texlive.scm (%fake-tlpdb): Add test data.
("texlive->guix-package"): Update test.
("texlive->guix-package, no docfiles"): New test.
| Nicolas Goaziou |
2023-07-12 | import/cran: Add one more package name transformation....* guix/import/cran.scm (transform-sysname): Add entry for "zlib-devel".
| Ricardo Wurmus |
2023-06-14 | import/cran: Add another clause for ASL 2.0....* guix/import/cran.scm (string->license): Add clause for >= 2.0.
| Ricardo Wurmus |
2023-06-09 | tests: Ensure 'elpa' test does not access the network....Previously it would try to access the real elpa.gnu.org. This would
succeed when network is available because "taxy-magit-section" is an
existing package.
* guix/import/elpa.scm (elpa-repository)
(package-from-elpa-repository?): Recognize 'gnu/http.
* tests/elpa.scm ("package-latest-release"): Use 'http' instead of
'https'. Change "taxy-magit-section" to "fake-taxy-magit-section".
| Ludovic Courtès |
2023-06-09 | import: stackage: Updater resolves inputs lazily....Fixes the "haskell-stackage" test in 'tests/lint.scm', which started
failing with e6223017d95bc615b2648f0798d9a3904d5b5f57 because the extra
HTTP GETs induced by the 'haskell-fetch' calls would fail.
* guix/import/stackage.scm (latest-lts-release): Call 'hackage-fetch'
and its continuation from within 'inputs', which is delayed. Pass it
NAME-VERSION instead of HACKAGE-NAME-VERSION.
| Ludovic Courtès |
2023-06-05 | import/cran: Ensure current package is not among inputs....* guix/import/cran.scm (cran-package-inputs): Remove the current package from
the result.
| Ricardo Wurmus |
2023-06-02 | import/cran: string->license: Add another case for GPLv3+....* guix/import/cran.scm (string->license): Translate "GPL (>=3)" to gpl3+.
| Ricardo Wurmus |
2023-06-02 | import/cran: Libraries should not use CRAN-GUIX-NAME....* guix/import/cran.scm (source-dir->dependencies): Do not use CRAN-GUIX-NAME
when processing result of NEEDED-LIBRARIES-IN-DIRECTORY.
| Ricardo Wurmus |
2023-06-02 | import/cran: Also search Makevars file for libraries....* guix/import/cran.scm (needed-libraries-in-directory): Look at Makevars in
addition to Makevars.in for libraries.
| Ricardo Wurmus |
2023-05-31 | import: gem: Updater provides input list....* guix/import/gem.scm (import-release): Add 'inputs' field.
* tests/gem.scm ("package-latest-release"): New test.
| Ludovic Courtès |
2023-05-31 | import: gem: Factorize "bundler" special case for name mapping....* guix/import/gem.scm (ruby-package-name): Add "bundler" special case.
(gem->guix-package): Adjust accordingly.
* tests/gem.scm ("gem-recursive-import")
("gem-recursive-import with a specific version"): Remove "ruby-bundler"
from the expected packages.
| Ludovic Courtès |
2023-05-31 | import: elpa: Updater provides input list....* guix/import/elpa.scm (elpa-dependency->upstream-input): New
procedure.
(latest-release): Add 'inputs' field.
* tests/elpa.scm ("package-latest-release"): New test.
| Ludovic Courtès |
2023-05-31 | import: cpan: Updater provides input list....* guix/import/cpan.scm (latest-release): Add 'inputs' field.
* tests/cpan.scm ("package-latest-release"): New test.
| Ludovic Courtès |
2023-05-31 | import: cpan: Represent dependencies as <upstream-input> records....* guix/import/cpan.scm (cpan-name->downstream-name)
(cran-dependency->upstream-input, cran-module-inputs): New procedures.
(cpan-module->sexp)[guix-name, convert-inputs]: Remove.
[maybe-inputs]: Adjust to deal with <upstream-input>.
Use 'cpan-name->downstream-name' instead of 'guix-name'. Add call to
'cpan-module-inputs' and adjust calls to 'maybe-inputs'. No longer emit
input labels.
* tests/cpan.scm ("cpan->guix-package"): Adjust test accordingly.
| Ludovic Courtès |
2023-05-31 | import: cpan: Remove unary 'string-append' call....* guix/import/cpan.scm (package->upstream-name): Remove useless
'string-append'.
| Ludovic Courtès |
2023-05-31 | upstream: 'update-package-source' edits input fields....Previously, 'guix refresh r-ggplot2 -u' and similar commands would print
of list of input changes that would have to be made manually. With this
change, 'guix refresh -u' takes care of updating input fields
automatically.
* guix/upstream.scm (update-package-inputs): New procedure.
(update-package-source): Call it when 'upstream-source-inputs' returns
true.
* guix/scripts/refresh.scm (update-package): Remove iteration over the
result of 'changed-inputs'.
* guix/import/test.scm (available-updates): Add support for input
lists.
* tests/guix-refresh.sh (GUIX_TEST_UPDATER_TARGETS): Add input list for
"the-test-package".
Make sure 'guix refresh -u' updates 'inputs' accordingly.
* doc/guix.texi (Invoking guix refresh): Mention it.
| Ludovic Courtès |
2023-05-31 | upstream: Replace 'input-changes' field by 'inputs'....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>.
| Ludovic Courtès |
2023-05-31 | import: json: Add #:timeout to 'json-fetch'....* guix/import/json.scm (json-fetch): Add #:timeout and pass it to
'http-fetch'.
| Ludovic Courtès |
2023-05-31 | import: utils: 'call-with-networking-exception-handler' doesn't unwind....That way backtraces show where the error actually originates from.
* guix/import/utils.scm (call-with-networking-exception-handler):
Rewrite using 'with-exception-handler'.
| Ludovic Courtès |
2023-05-31 | tests: pypi: Rewrite tests using a local HTTP server....* guix/import/pypi.scm (%pypi-base-url): New variable.
(pypi-fetch): Use it.
* tests/pypi.scm (foo-json): Compute URLs relative to '%local-url'.
(test-json-1, test-json-2, test-source-hash): Remove.
(file-dump): New procedure.
(with-pypi): New macro.
("pypi->guix-package, no wheel")
("pypi->guix-package, wheels")
("pypi->guix-package, no usable requirement file.")
("pypi->guix-package, package name contains \"-\" followed by digits"):
Rewrite using 'with-pypi'.
| Ludovic Courtès |
2023-05-04 | import: elpa: Standardize warning message....* guix/import/elpa.scm (melpa-recipe->origin): Standardize warning
message.
| Ludovic Courtès |
2023-05-04 | import: Cosmetic tweaks to 'recursive-import'....* guix/import/utils.scm (recursive-import): Tweak docstring. Simplify
'apply' call.
| Ludovic Courtès |
2023-05-04 | import: elpa: Use the expected repo in recursive imports....* guix/import/elpa.scm (elpa-recursive-import): Pass REPO in calls to
'elpa->guix-package'.
| Ludovic Courtès |
2023-05-04 | import: elpa: 'elpa->guix-package' accepts other keyword arguments....This is a followup to 3c24da4260f28b4ed57efda0296688a50ac94628.
* guix/import/elpa.scm (elpa->guix-package): Add #:allow-other-keys.
| Ludovic Courtès |
2023-04-30 | guix: import: crate: Fix incorrect returned values....* guix/import/crate.scm (crate->guix-package): Return compatible values with
'recursive-import'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Simon Tournier |
2023-04-29 | import/cran: Translate from xml2 to libxml2....* guix/import/cran.scm (transform-sysname): Add translation from xml2 to
libxml2.
| Ricardo Wurmus |
2023-04-29 | import/cran: Add "unix" to list of invalid packages....* guix/import/cran.scm (invalid-packages): Add "unix".
| Ricardo Wurmus |
2023-04-29 | guix: Upgrade to Bioconductor 3.16....* guix/build-system/r.scm (bioconductor-uri): Bump Bioconductor version to
3.17.
* guix/import/cran.scm (%bioconductor-version): Same.
| Ricardo Wurmus |
2023-04-29 | import/pypi: Generate packages using pyproject-build-system....* guix/import/pypi.scm (make-pypi-sexp): Generate PACKAGE expression where the
value for the BUILD-SYSTEM field is PYPROJECT-BUILD-SYSTEM instead of
PYTHON-BUILD-SYSTEM.
| Ricardo Wurmus |
2023-04-08 | import: opam: opam->guix-package: Fix default repo argument....* guix/import/opam.scm (opam->guix-package): Make default repo a list of
strings. Update docstring.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Csepp |
2023-04-08 | import: Properly report "no specific version" errors....* guix/import/cpan.scm (latest-release): Use 'raise' instead of
'error'.
* guix/import/elpa.scm (latest-release): Likewise.
* guix/import/hackage.scm (latest-release): Likewise.
* guix/import/minetest.scm (latest-minetest-release): Likewise.
* guix/import/opam.scm (latest-release): Likewise.
* guix/import/stackage.scm (latest-lts-release): Likewise.
| Ludovic Courtès |
2023-03-30 | guix: Shorten home page URL in texlive importer....* guix/import/texlive.scm (tlpdb->package): Use short URL for home page.
| Nicolas Goaziou |
2023-03-29 | import/texlive: tlpdb->package: Ignore files outside of texmf-dist....* guix/import/texlive.scm (tlpdb->package): Ignore files outside of texmf-dist
because the code assumes that this is the prefix for all files.
| Ricardo Wurmus |
2023-03-29 | import/texlive: Process license field only when it exists....* guix/import/texlive.scm (tlpdb->package): Check "catalogue-license" field
before using string->license.
| Ricardo Wurmus |
2023-03-29 | import/texlive: Only process description if it exists....* guix/import/texlive.scm (tlpdb->package): Run beautify-description only when
the "longdesc" field exists.
| Ricardo Wurmus |
2023-03-29 | import/texlive: Ignore architecture-dependent packages....* guix/import/texlive.scm (tlpdb->package): Filter "depend" field to exclude
package names ending on ".ARCH".
| Ricardo Wurmus |
2023-03-13 | guix: Strip #:use-module lists....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.
| Ludovic Courtès |
2023-03-10 | import: Add EUPL 1.1 to the SPDX license name converter....* guix/import/utils.scm (spdx-string->license): Add EUPL-1.1 identifier.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Antero Mejr |
2023-03-10 | licenses: Add LPL 1.02 (Lucent Public Licence)....* guix/licenses.scm (lpl1.02): New variable.
* guix/import/utils.scm (spdx-string->license): Add LPL-1.02 identifier.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Antero Mejr |
2023-02-26 | import: haskell: Add new internal library for GHC 9.2....* guix/import/hackage.scm (ghc-standard-libraries): Add ghc-bignum.
| Lars-Dominik Braun |
2023-02-26 | import: hackage: Use upstream-name property....* guix/import/hackage.scm (guix-package->hackage-name): Removed.
(latest-release): Use package-upstream-name* instead.
* guix/import/stackage.scm (latest-lts-release): Ditto.
(stackage-lts-package?): Ditto.
| Lars-Dominik Braun |