Commit graph

69931 commits

Author SHA1 Message Date
Hartmut Goebel
45584061a9
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.
2020-12-02 22:09:23 +01:00
Hartmut Goebel
9a48e35be8
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.
2020-12-02 22:09:23 +01:00
Martin Becze
50fbb3f032
import: crate: Parameterized importing of dev dependencies.
The recursive crate importer will now include development dependencies only
for the top level package, but not for any of the recursively imported
packages.  Also #:skip-build will be false for the top-most package.

* guix/import/crate.scm (make-crate-sexp): Add the key BUILD?.
  (crate->guix-package): Add the key INCLUDE-DEV-DEPS?.
  (crate-recursive-import): Likewise.
* guix/scripts/import/crate.scm (guix-import-crate): Likewise.
* tests/crate.scm (cargo-recursive-import): Likewise.
2020-12-02 22:09:23 +01:00
Martin Becze
d9feb23e10
import: crate: Memorize crate->guix-package.
This adds memorization to procedures that involve network lookups.
'lookup-crate*' is used on every dependency of a package to get its version
list. It is also used to lookup a package's metadata. 'crate-recursive-import'
is also memorized since creating the same package twice will trigger a lookup
on its dependencies.

* guix/import/crate.scm (lookup-crate*): New procedure.
  (crate->guix-package): Memorize package metadata lookups.
  (crate-recursive-import): Memorize package creation.
2020-12-02 22:09:23 +01:00
Martin Becze
269c1db41b
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>
2020-12-02 22:09:23 +01:00
Martin Becze
bea3b17739
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>
2020-12-02 22:09:23 +01:00
Martin Becze
23e2cd156f
guix: self: Add guile-semver as a depenedency.
* guix/self.scm (compiled-guix): Add guile-semver as a depenedency.
2020-12-02 22:09:23 +01:00
Nicolas Goaziou
9a1b1124c0
gnu: snap: Update to 6.3.7.
* gnu/packages/education.scm (snap): Update to 6.3.7.
2020-12-02 22:03:40 +01:00
Nicolas Goaziou
b12bf263db
gnu: rust-base64-0.13: Fix code typo.
* gnu/packages/crates-io.scm (rust-base64-0.13): Fix code typo.
2020-12-02 22:03:39 +01:00
Hartmut Goebel
6f9edf40b8
gnu: sequoia: Update to 0.20.0.
* gnu/packages/sequoia.scm (sequoia): Update to 0.20.0. [cargo-inputs,
  cargo-development-inputs] Update dependencies. [phases]{unpin-deps}: Adjust
  path of file to substitute.  {adjust-prefix} Rename to {fix-environment} and
  set another envormnet variable. {keep-SOURCE_DATE_EPOCH}: New phase.
2020-12-02 21:53:44 +01:00
Hartmut Goebel
a1b9f68152
gnu: rust-rusqlite: Update to 0.24.
* gnu/packages/crates-io.scm (rust-rusqlite): Update to 0.24.
2020-12-02 21:53:44 +01:00
Hartmut Goebel
e02822ede5
gnu: Add rust-libsqlite3-sys-0.20.
* gnu/packages/crates-io.scm (rust-libsqlite3-sys-0.20): New variable,
  skipping build.
  (rust-libsqlite3-sys-0.15): Inherit from rust-libsqlite3-sys-0.20.
2020-12-02 21:53:44 +01:00
Hartmut Goebel
8076a18e32
gnu: Add rust-hashbrown-0.9.
* gnu/packages/crates-io.scm (rust-hashbrown-0.9): New variable, skipping
  build.  (rust-hashbrown-0.8): Inherit from rust-hashbrown-0.9.
2020-12-02 21:53:44 +01:00
Hartmut Goebel
472a74bf6f
gnu: Add rust-hashlink-0.6.
* gnu/packages/crates-io.scm (rust-hashlink-0.6): New variable.
2020-12-02 21:53:44 +01:00
Hartmut Goebel
5e3e43c672
gnu: Add rust-base64-0.13.
* gnu/packages/crates-io.scm (rust-base64-0.13): New variable, skipping
  build.  (rust-base64-0.12): Inherit from rust-base64-0.13.
2020-12-02 21:53:44 +01:00
Hartmut Goebel
d81dee205c
gnu: Add rust-bzip2-0.4.
* gnu/packages/crates-io.scm(rust-bzip2-0.4): New variable, skipping
  build.  (rust-bzip2-0.3): Inherit from rust-bzip2-0.4.
2020-12-02 21:53:44 +01:00
Hartmut Goebel
325b4c83db
gnu: Add rust-dyn-clone-1.
* gnu/packages/crates-io.scm (rust-dyn-clone-1): New variable.
2020-12-02 21:53:44 +01:00
Hartmut Goebel
5979d01cbb
gnu: Add rust-ed25519-dalek-1.
* gnu/packages/crates-io.scm (rust-ed25519-dalek-1): New variable.
2020-12-02 21:53:43 +01:00
Hartmut Goebel
c2b5feeb52
gnu: Add rust-curve25519-dalek-3.
* gnu/packages/crates-io.scm (rust-curve25519-dalek-3): New variable.
2020-12-02 21:53:43 +01:00
Hartmut Goebel
09f0605111
gnu: Add rust-ed25519-1.
* gnu/packages/crates-io.scm (rust-ed25519-1): New variable.
2020-12-02 21:53:43 +01:00
Hartmut Goebel
1b9ffd73ea
gnu: Add rust-signature-1.
* gnu/packages/crates-io.scm (rust-signature-1): New variable.
2020-12-02 21:53:43 +01:00
Hartmut Goebel
e6ab1ab27d
gnu: Add rust-signature-derive-1.
* gnu/packages/crates-io.scm (rust-signature-derive-1): New variable.
2020-12-02 21:53:43 +01:00
Hartmut Goebel
369c3fef59
gnu: Add rust-merlin-2.
* gnu/packages/crates-io.scm (rust-merlin-2): New variable.
2020-12-02 21:53:43 +01:00
Hartmut Goebel
9e92105fc9
gnu: Add rust-keccak-0.1.
* gnu/packages/crates-io.scm (rust-keccak-0.1): New variable.
2020-12-02 21:53:43 +01:00
Hartmut Goebel
d3c91e9737
gnu: Add rust-lalrpop-0.19.
* gnu/packages/crates-io.scm (rust-lalrpop-0.19): New variable, skipping
  build.  (rust-lalrpop-0.17): Inherit from rust-lalrpop-0.19.
2020-12-02 21:53:43 +01:00
Hartmut Goebel
8e111eaf96
gnu: Add rust-lalrpop-util-0.19.
* gnu/packages/crates-io.scm (rust-lalrpop-util-0.19): New variable, skipping
  build.  (rust-lalrpop-util-0.17): Inherit from rust-lalrpop-util-0.19.
2020-12-02 21:53:43 +01:00
Hartmut Goebel
e33eb2dca6
gnu: Add rust-ena-0.14:
* gnu/packages/crates-io.scm (rust-ena-0.14): New variable, skipping
  build.  (rust-ena-0.13): Inherit from rust-ena-0.14.
2020-12-02 21:53:43 +01:00
Hartmut Goebel
fc6bb13018
gnu: Add rust-memsec-0.6.
* gnu/packages/crates-io.scm (rust-memsec-0.6): New variable, skipping
  build.  (rust-memsec-0.5): Inherit from rust-memsec-0.6.
2020-12-02 21:53:42 +01:00
Hartmut Goebel
2545fc4369
gnu: Add rust-num-bigint-dig-0.6.
* gnu/packages/crates-io.scm (rust-num-bigint-dig-0.6): New variable.
2020-12-02 21:53:42 +01:00
Hartmut Goebel
b9cdaf62ae
gnu: Add rust-win-crypto-ng-0.2.
* gnu/packages/crates-io.scm (rust-win-crypto-ng-0.2): New variable.
2020-12-02 21:53:42 +01:00
Hartmut Goebel
c12601ef58
gnu: Add rust-rpassword-5.
* gnu/packages/crates-io.scm (rust-rpassword-5): New variable, skipping
  build.  (rust-rpassword-4): Inherit from rust-rpassword-5.
2020-12-02 21:53:42 +01:00
Nicolas Goaziou
639f64823b
gnu: emacs-slime-volleyball: Update to 1.1.7.
* gnu/packages/emacs-xyz.scm (emacs-slime-volleyball): Update to 1.1.7.
2020-12-02 21:43:13 +01:00
Efraim Flashner
a31ea8588c
gnu: qemu-minimal: Fix emulation build list.
* gnu/packages/virtualization.scm (qemu-minimal)[arguments]: Adjust
configure-flags logic to match using string-prefix instead of a full
match when determining qemu targets.
2020-12-02 19:32:15 +02:00
Efraim Flashner
eeb3db0aa1
gnu: nano: Update to 5.4.
* gnu/packages/nano.scm (nano): Update to 5.4.
2020-12-02 18:05:33 +02:00
Kei Kebreau
3c2cf75fb3
gnu: Add catfish.
* gnu/packages/xfce.scm (catfish): New variable.
2020-12-02 09:15:42 -05:00
Pierre Neidhardt
9fe5bb7c92
gnu: lisp-repl-core-dumper: Update to 0.2.0.
* gnu/packages/lisp.scm (lisp-repl-core-dumper): Update to 0.2.0.
2020-12-02 10:38:07 +01:00
Marius Bakke
04b8367865
Revert "gnu: python-packaging: Update to 20.4."
This reverts commit 71b15b4874.
2020-12-01 23:23:10 +01:00
Marius Bakke
0f78b5c128
Revert "gnu: yelp-xsl: Update to 3.36.0."
This reverts commit dee784f6de.
2020-12-01 23:07:12 +01:00
Marius Bakke
aa4e899be3
Revert "gnu: yelp-xsl: Enable documentation."
This reverts commit ba7a7d275d.
2020-12-01 23:07:00 +01:00
Marius Bakke
e183418ff5
Revert "gnu: yelp-tools: De-propagate some inputs."
This reverts commit c3c92c456b.
2020-12-01 23:06:24 +01:00
Marius Bakke
5b580c0a28
Revert "gnu: gobject-introspection: Update to 1.64.1."
This reverts commit 0382e6a4e6.
2020-12-01 23:05:31 +01:00
Marius Bakke
3187b153a5
Revert "gnu: pixman: Update to 0.40.0."
This reverts commit f6a00057f5.
2020-12-01 23:05:15 +01:00
Marius Bakke
12c3ff4a02
Revert "gnu: pixman: Enable some features."
This reverts commit acc64de45b.
2020-12-01 23:05:06 +01:00
Marius Bakke
6af3045f66
Revert "gnu: openjpeg: Enable tests."
This reverts commit 49d38b9a44.
2020-12-01 23:04:46 +01:00
Marius Bakke
f4450e8ca9
gnu: xorg-server: Update to 1.20.10 [fixes CVE-2020-14360, CVE-2020-25712].
* gnu/packages/xorg.scm (xorg-server): Update to 1.20.10.
(xorg-server-for-tests): Stay on 1.20.9.
2020-12-01 22:30:52 +01:00
Marius Bakke
3cf19b83d6
services: MySQL: Fix indentation.
* gnu/services/databases.scm (mysql-upgrade-wrapper): Adjust indentation.
2020-12-01 22:30:52 +01:00
Marius Bakke
383c51ca0f
services: databases: Do not export record type descriptors.
* gnu/services/databases.scm (<postgresql-config-file>,
<postgresql-configuration>, <memcached-configuration>,
<mongodb-configuration>): Remove exports.
2020-12-01 22:30:52 +01:00
Raghav Gururajan
27866b7ce2
gnu: openjpeg: Update synopsis and description.
* gnu/packages/image.scm (openjpeg) [synopsis]: Modify.
[description]: Modify.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2020-12-01 22:06:03 +01:00
Raghav Gururajan
49d38b9a44
gnu: openjpeg: Enable tests.
* gnu/packages/image.scm (openjpeg) [arguments]<#:tests?>: Remove argument.
<#:configure-flags>[-DBUILD_UNIT_TESTS]: New flag.
[-DBUILD_TESTING]: New flag.
[-DOPJ_DATA_ROOT]: New flag.
<#:phases>['disable-failing-tests]: New phase.
[native-inputs]: Add openjpeg-data.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2020-12-01 22:06:03 +01:00
Raghav Gururajan
b96961c9d2
gnu: openjpeg: Make some cosmetic changes.
* gnu/packages/images.scm (openjpeg): Make some cosmetic changes.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2020-12-01 22:06:03 +01:00