Age | Commit message (Expand) | Author |
2023-08-28 | import-utils: Do not include punctuation when wrapping in @code{}....* guix/import/utils.scm (beautify-description): Exclude punctuation.
* tests/import-utils.scm: Add new test.
| Ricardo Wurmus |
2023-08-01 | licenses: Add Arphic-1999 (Aprhic Public License)....* guix/licenses.scm (arphic-1999): New variable.
* guix/import/utils.scm (%spdx-license-identifiers): Add Arphic-1999.
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
| walky_talky |
2023-07-19 | import/utils: beautify-description: Wrap class names in @code{...}....* guix/import/utils.scm (beautify-description): Add procedure to wrap words in
@code{...} markup.
* tests/import-utils.scm: Add two tests.
| Ricardo Wurmus |
2023-07-19 | import/utils: Add more initial words to beautify-description....* guix/import/utils.scm (beautify-description): Add "Classes" and "Tools" to
initial words to be prefixed with "This package provides".
| Ricardo Wurmus |
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-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-04 | import: Cosmetic tweaks to 'recursive-import'....* guix/import/utils.scm (recursive-import): Tweak docstring. Simplify
'apply' call.
| Ludovic Courtès |
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-01-08 | gnu-maintenance: Factorize 'false-if-networking-failure'....* guix/import/utils.scm (call-with-networking-exception-handler): New
procedure.
(false-if-networking-error): New macro.
* guix/gnu-maintenance.scm (import-html-updatable-release): Use it
instead of inline code.
| Ludovic Courtès |
2022-12-31 | import/utils: recursive-import: Pass on lookup-node's version argument....* guix/import/utils.scm (recursive-import)<lookup-node>: Replace the #:VERSION
keyword from RECURSIVE-IMPORT's arguments with the value of VERSION passed to
LOOKUP-NODE.
| Ricardo Wurmus |
2022-12-31 | import/utils: Pass all arguments through to package builder....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.
| Lars-Dominik Braun |
2022-11-18 | import/utils: spdx-string->license: Support '+' operator....Previously, '+' was supported only via special cases for deprecated
GNU identifiers like 'GPL-N+'. This commit adds support
for other uses of '+', such as 'AFL-2.0+' and 'LPPL-1.0+'.
Strictly speaking, '+' is an operator, not part of the SPDX license
identifier, but it is useful to handle it here.
* guix/import/utils.scm (spdx-string->license): Support '+' operator.
* tests/import-utils.scm ("spdx-string->license"): Test it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Philip McGrath |
2022-11-18 | import/utils: spdx-string->license: Match case-insensitively....SPDX specifies that license identifiers (unlike the 'AND', 'OR', and
'WITH' operators) are matched case-insensitively.
* guix/import/utils.scm (%spdx-license-identifiers): New variable.
(spdx-string->license): Search in '%spdx-license-identifiers' using
'string-ci=?'.
* tests/import-utils.scm ("spdx-string->license"): New test.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Philip McGrath |
2022-11-18 | import/utils: spdx-string->license: Fix incorrect docstring....The result of 'spdx-string->license' is a symbol, not a license object.
* guix/import/utils.scm (spdx-string->license): Fix docstring.
(license->symbol): Mention 'license:' prefix in docstring.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Philip McGrath |
2022-10-05 | import/utils: beautify-description: Update to pass tests....* guix/import/utils.scm (beautify-description): Remove single quote wrapping;
escape @; exclude common abbreviations and titles from double-spacing; detect
more sentence fragments.
| Ricardo Wurmus |
2022-09-29 | import/utils: alist->package: Include properties....* guix/import/utils.scm (alist->package): Process properties field in input
data and include it in the generated package.
* tests/import-utils.scm ("alist->package with properties"): New test.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| itd |
2022-09-28 | import/utils: Add beautify-synopsis....* guix/import/utils.scm (beautify-synopsis): New procedure.
| Ricardo Wurmus |
2022-08-25 | import/utils: beautify-description: Add case for "Implements"....* guix/import/utils.scm (beautify-description): Add case to transform
sentences beginning with "Implements".
| Ricardo Wurmus |
2022-07-19 | import: Enable recursive import for texlive packages....* guix/import/texlive.scm (tlpdb->package): Add VERSION argument; include
explicit version field in output.
(texlive->guix-package): Set default value for VERSION argument; adjust call
of tlpdb->package.
(texlive-recursive-import): Accept REPO and VERSION keyword arguments.
* guix/import/utils.scm (package->definition): Add a clause to deal with
output from tlpdb->package.
* guix/scripts/import/texlive.scm (%options): Add "recursive" option.
(guix-import-texlive): Honor "recursive" option.
* doc/guix.texi (Using TeX and LaTeX): Mention "recursive" option.
| Ricardo Wurmus |
2022-05-23 | licenses: Add Expat No Attribution license....* guix/licenses.scm (expat-0): New variable.
* guix/import/utils.scm (spdx-string->license): Add MIT-0.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Kyle Meyer |
2022-05-23 | import: utils: Update list of SPDX licenses....* guix/import/utils.scm (spdx-string->license): Update.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Nicolas Graves |
2022-02-08 | import: utils: Harden beautify-description....* guix/import/utils.scm (beautify-description): Handle non-string
arguments.
[use-modules]: Explicitly import G_ from (guix i18n) and make (guix ui)
import explicit.
* guix/import/opam.scm: [use-modules] Make imports explicit for module
(guix import utils).
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Alice BRENON |
2021-12-17 | import: utils: Wrap lines in description....* guix/import/utils.scm (beautify-description): Use ‘fill-paragraph’; add
optional ‘length’ argument.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Xinglu Chen |
2021-11-12 | import: utils: Add more licenses and extend their detection....* guix/import/utils.scm (spdx-string->license): Identify more
licenses (CC-BY-4.0, Freetype, HPND).
* guix/licenses.scm: Add a comment that mentions "MIT" so that people
who grep for MIT end up there.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Attila Lendvai |
2021-10-08 | Revert the #51061 patch series for now....This reverts commits f63c79bf7674df012517f8e9148f94c611e35f32
..f86f7e24b39928247729020df0134e2e1c4cde62 for more chillax reviewing.
See <https://issues.guix.gnu.org/51061#32>.
| Tobias Geerinckx-Rice |
2021-10-07 | import: Add hex.pm importer....hex.pm is a package repository for Erlang and Elixir.
* guix/scripts/import.scm (importers): Add "hexpm".
* guix/scripts/import/hexpm.scm, guix/import/hexpm.scm,
guix/hexpm-download.scm: New files.
* guix/import/utils.scm (source-spec->object): Add "hexpm-fetch" to list of
fetch methods.
* guix/upstream.scm (package-update/hexpm-fetch): New function.
(%method-updates) Add it.
* Makefile.am: Add them.
| Hartmut Goebel |
2021-09-01 | import: utils: Skip not found packages....* guix/import/utils.scm (recursive-import): Skip packages when the
package returned by 'repo->guix-package' is false.
* tests/import-utils.scm: New tests.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Sarah Morgensen |
2021-08-20 | import/utils: Recognise GPL-3.0-or-later and friends....* guix/import/utils.scm (spdx-string->license): Recognise
GPL-N-only and GPL-N-or-later. Likewise for LGPL and AGPL.
Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
| Maxime Devos |
2021-04-09 | import: go: Append version to symbol name in the pinned version mode....This allows importing packages with complicated version specific dependency
chains without the package symbol names colliding.
* doc/guix.texi (Invoking guix import): Document the --pin-versions option.
Mention that a specific version can be imported. Remove the experimental
warning.
* guix/import/go.scm (go-module->guix-package-name)[version]: Add optional
argument. Rewrite the character translation in terms of string-map.
(go-module->guix-package): Conditionally use dependencies whose symbol include
their version, based no the value of the PIN-VERSIONS? argument.
* guix/import/utils.scm (package->definition): Add a new case where the full
version string is appended to the package symbol.
* guix/scripts/import.scm (guix-import): Correctly print forms starting
with '(define-public [...]'.
* guix/scripts/import/go.scm (guix-import-go): Conditionally include the
version in the package symbols defined.
| Maxim Cournoyer |
2021-04-09 | import: go: Improve synopsis and description parsing....* guix/import/go.scm (%strict-tokenizer?): Set parameter to #t.
(go-path-escape): Redefine to prevent inlining.
(http-get*): Replace by ...
(http-fetch*): this ...
(json-fetch*): New procedure.
(go.pkg.dev-info): Use http-fetch*.
(go-package-licenses): Rewrite in terms of go.pkg.dev-info.
(go-package-description): Likewise.
(go-package-synopsis): Likewise.
(fetch-go.mod): Use the memoized http-fetch*.
(parse-go.mod): Adjust to receive content as a string.
(fetch-module-meta-data): Adjust to use http-fetch*.
(go-module->guix-package): Adjust to the modified fetch-go.mod return value.
[inputs]: Use propagated inputs, which is the most common situations for Go
libraries.
[description]: Beautify description.
[licenses]: Do no check for #f. The result of the license parsing is always a
list.
* tests/go.scm: Adjust following above changes.
| Maxim Cournoyer |
2021-04-09 | import: utils: Refactor maybe-inputs and add maybe-propagated-inputs....* guix/import/utils.scm (maybe-inputs)[type]: New argument. Update docstring.
The argument is used to derive the input field name to use.
(maybe-native-inputs): Adjust to use the above.
(maybe-propagated-inputs): New procedure.
| Maxim Cournoyer |
2021-03-29 | licenses: Add Free Art License 1.3....* guix/licenses.scm (lal1.3): New variable.
* guix/import/utils.scm (spdx-string->license): Add LAL-1.3.
Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
| Felix Gruber |
2021-03-06 | licenses: Add Zero-Clause BSD License....* guix/licenses.scm (bsd-0): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Alexandros Theodotou |
2020-12-31 | import/utils: recursive-import: Fix typo....* guix/import/utils.scm (recursive-import): Fix typo.
| Ricardo Wurmus |
2020-12-27 | import/utils: alist->package: Handle SPDX license names only as fallback....Fixes <https://bugs.gnu.org/45453>.
* guix/import/utils.scm (alist->package): Find plain license names in (guix
licenses) first, and only fall back to SPDX names on error.
* tests/import-utils.scm ("alist->package with SPDX license name 1/2",
"alist->package with SPDX license name 2/2"): New tests.
| Ricardo Wurmus |
2020-12-09 | import/utils: Fix conditional....This is a follow-up to commit 45584061a9ebe961e2be08ee94c3fe8ad74e2713.
* guix/import/utils.scm (package->definition): Use EQ? instead of = to compare
truthiness; use ELSE instead of (#T).
| Ricardo Wurmus |
2020-12-02 | import: crate: Trim version for names after left-most non-zero part....This complies to how versions are matched for caret requirements in crates:
An update is allowed if the new version number does not modify the left-most
non-zero digit in the major, minor, patch grouping.
* guix/import/crate.scm (version->semver-prefix): New function.
(make-crate-sexp)[format-inputs]: Use it.
(make-crate-sexp): Use it to pass shorter version to package->definition.
* guix/import/utils.scm (package->definition): Change optional parameter
APPEND-VERSION? into APPEND-VERSION?/STRING. If it is a string, append its
value to name.
* tests/crate.scm: Adjust tests accordingly.
| Hartmut Goebel |
2020-12-02 | import: utils: Trim patch version from names....This remove the patch version from generated package names. For example
'rust-my-crate-1.1.2' now becomes 'rust-my-crate-1.1'.
* guix/import/utils.scm (package->definition): Trim patch version from
generated package names.
* tests/crate.scm: (cargo>guix-package, cargo-recursive-import): Likewise.
| Hartmut Goebel |
2020-12-02 | import: crate: Use guile-semver to resolve module versions....* guix/import/crate.scm: Add guile-semver as a soft dependency.
(make-crate-sexp): Don't allow other keys. Add '#:skip-build?' to build
system args. Pass a VERSION argument to 'cargo-inputs'.
(crate->guix-package): Use guile-semver to resolve the correct module
versions. Treat "build" dependencies as normal dependencies.
(crate-name->package-name): Reuse the procedure 'guix-name' instead of
duplicating its logic.
* guix/import/utils.scm (package-names->package-inputs): Implement
handling of (name version) pairs.
* guix/scripts/import/crate.scm (guix-import-crate): Use
crate-recursive-import instead of duplicate code.
* tests/crate.scm (recursive-import): Change test packages versions to be
distinguishable. Add version data to the test. Check created symbols, too.
Co-authored-by: Hartmut Goebel <h.goebel@crazy-compilers.com>
| Martin Becze |
2020-12-02 | import: utils: 'recursive-import' accepts an optional version parameter....This adds a key VERSION to 'recursive-import' and moves the parameter REPO to
a key. This also changes all the places that rely on 'recursive-import'.
* guix/import/utils.scm (recursive-import): Add the VERSION key. Make REPO a
key.
(package->definition): Add optional 'append-version?'.
* guix/scripts/import/crate.scm (guix-import-crate): Add the VERSION key.
* guix/import/crate.scm (crate->guix-package): Add the VERSION key.
(crate-recursive-import): Pass VERSION to recursive-import, remove now
unnecessary code.
* guix/import/cran.scm (cran->guix-package, cran-recursive-import): Change the
REPO parameter to a key.
* guix/import/elpa.scm (elpa->guix-package, elpa-recursive-import): Likewise.
* guix/import/gem.scm (gem->guix-package, recursive-import): Likewise.
* guix/import/opam.scm (opam-recurive-import): Likewise.
* guix/import/pypi.scm (pypi-recursive-import): Likewise.
* guix/import/stackage.scm (stackage-recursive-import): Likewise.
* guix/scripts/import/cran.scm (guix-import-cran): Likewise.
* guix/scripts/import/elpa.scm (guix-import-elpa): Likewise.
* tests/elpa.scm (eval-test-with-elpa): Likewise.
* tests/import-utils.scm (recursive-import): Likewise.
Co-authored-by: Hartmut Goebel <h.goebel@crazy-compilers.com>
| Martin Becze |
2020-10-17 | import: utils: Fix license name mismatches and define CUA-OPL-1.0....* guix/licenses.scm (cua-opl1.0): New variable.
* guix/import/utils.scm (spdx-string->license): Rename licenses to fit
the internal names and add a notice pointing to guix/licenses.scm.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Helio Machado |
2020-05-22 | packages: Introduce <content-hash> and use it in <origin>....* guix/packages.scm (<content-hash>): New record type.
(define-content-hash-constructor, build-content-hash)
(content-hash): New macros.
(print-content-hash): New procedure.
(<origin>): Rename constructor to '%origin'.
[sha256]: Remove field.
[hash]: New field. Adjust users.
(origin-compatibility-helper, origin): New macros.
(origin-sha256): New deprecated procedure.
(origin->derivation): Adjust accordingly.
* tests/packages.scm ("package-source-derivation, origin, sha512"): New
test.
* guix/tests.scm: Hide (gcrypt hash) 'sha256' for proper syntax
matching.
* tests/challenge.scm: Add #:prefix for (gcrypt hash) and adjust users.
* tests/derivations.scm: Likewise.
* tests/store.scm: Likewise.
* tests/graph.scm ("bag DAG, including origins"): Provide 'sha256' field
with the right length.
* gnu/packages/aspell.scm (aspell-dictionary)
(aspell-dict-ca, aspell-dict-it): Use 'hash' and 'content-hash' for
proper syntax matching.
* gnu/packages/bash.scm (bash-patch): Rename 'sha256' to 'sha256-bv'.
* gnu/packages/bootstrap.scm (bootstrap-executable): Rename 'sha256' to 'bv'.
* gnu/packages/readline.scm (readline-patch): Likewise.
* gnu/packages/virtualization.scm (qemu-patch): Rename 'sha256' to
'sha256-bv'.
* guix/import/utils.scm: Hide (gcrypt hash) 'sha256'.
| Ludovic Courtès |
2020-04-16 | import/utils: alist->package: Include arguments....* guix/import/utils.scm (alist->package): Process arguments field in input
data and include it in the generated package.
| Ricardo Wurmus |
2020-04-16 | import/utils: alist->package: Ignore known inputs....* guix/import/utils.scm (alist->package): Accept optional list of known
inputs, which are excluded from the specification lookup.
* guix/import/print.scm (package->code)[package-lists->code]: Handle inputs
which are just symbols.
| Ricardo Wurmus |
2020-03-12 | import: utils: Remove 'assoc-ref*'....* guix/import/utils.scm (assoc-ref*): Remove.
| Ludovic Courtès |
2019-12-13 | import: utils: Update docstring of 'recursive-import'....This is a followup to 70a8e13277d4a44b89dd9ee2290b98105f0235f1.
* guix/import/utils.scm (recursive-import): Update docstring.
| Ludovic Courtès |
2019-12-11 | import: utils: 'recursive-import' returns a list rather than a stream....* guix/import/utils.scm (recursive-import): Remove 'list->stream' call.
* guix/scripts/import/cran.scm (guix-import-cran): Remove 'stream->list'
call.
* guix/scripts/import/crate.scm (guix-import-crate): Likewise.
* guix/scripts/import/elpa.scm (guix-import-elpa): Likewise.
* guix/scripts/import/gem.scm (guix-import-gem): Likewise.
* guix/scripts/import/hackage.scm (guix-import-hackage): Likewise.
* guix/scripts/import/opam.scm (guix-import-opam): Likewise.
* guix/scripts/import/pypi.scm (guix-import-pypi): Likewise.
* guix/scripts/import/stackage.scm (guix-import-stackage): Likewise.
* tests/gem.scm ("gem-recursive-import"): Likewise.
* tests/import-utils.scm ("recursive-import"): Likewise.
Co-authored-by: Brian Leung <bkleung89@gmail.com>
| Ludovic Courtès |
2019-12-11 | import: utils: 'recursive-import' returns packages in topological order....* guix/import/utils.scm (topological-sort): New procedure.
(recursive-import): Rewrite to use it.
* tests/import-utils.scm ("recursive-import"): New test.
* guix/import/cran.scm (cran->guix-package): Always return two values.
* guix/scripts/import/cran.scm (guix-import-cran): Remove 'reverse' call
on 'cran-recursive-import' result.
* guix/scripts/import/crate.scm (guix-import-crate): Likewise.
* guix/scripts/import/elpa.scm (guix-import-elpa): Likewise.
* guix/scripts/import/gem.scm (guix-import-gem): Likewise.
* guix/scripts/import/hackage.scm (guix-import-hackage): Likewise.
* guix/scripts/import/opam.scm (guix-import-opam): Likewise.
* guix/scripts/import/pypi.scm (guix-import-pypi): Likewise.
* guix/scripts/import/stackage.scm (guix-import-stackage): Likewise.
* tests/gem.scm ("gem-recursive-import"): Change the order of package
expressions accordingly.
| Ludovic Courtès |