Commit Graph

46016 Commits

Author SHA1 Message Date
Efraim Flashner 4bac5bba51
gnu: Wrap program with libraries.
* gnu/packages/package-management.scm (stow)[arguments]: Add custom
'wrap-stow phase to wrap stow with necessary inputs.
[propagated-inputs]: Move perl-clone, perl-clone-choose, perl-hash-merge
to...
[inputs]: ... here.
2019-07-02 11:43:04 +03:00
Amar Singh 71a2927705
gnu: emacs-shroud: Update to 1.83.4.
* gnu/packages/emacs-xyz.scm (emacs-shroud): Update to 1.83.4.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2019-07-02 10:39:36 +03:00
Rutger Helling 941ae98eae
gnu: faudio: Update to 19.07.
* gnu/packages/audio.scm (faudio): Update to 19.07.
2019-07-02 09:36:50 +02:00
Jan Nieuwenhuizen 48eb71aea8
gnu: emacsy: Update to 0.4.1.
* gnu/packages/guile-xyz.scm (emacsy): Update to 0.4.1.
2019-07-02 07:59:15 +02:00
Maxim Cournoyer 4b60ab8c00
import: pypi: Preserve package name case when forming pypi-uri.
Fixes <https://bugs.gnu.org/33046>.

* guix/build-system/python.scm (pypi-uri): Update the host URI to
"files.pythonhosted.org".
* guix/import/pypi.scm (make-pypi-sexp): Preserve the package name case when
the source URL calls for it.
2019-07-02 10:08:00 +09:00
Maxim Cournoyer a537620054
import: pypi: Update the host URI.
* guix/build-system/python.scm (pypi-uri): Update the host URI to
"files.pythonhosted.org".
2019-07-02 10:08:00 +09:00
Maxim Cournoyer d514276b93
import: pypi: Include optional test inputs as native-inputs.
* guix/import/pypi.scm (maybe-inputs): Add INPUT-TYPE argument, and use it.
(test-section?): New predicate.
(parse-requires.txt): Collect the optional test inputs, and return them as the
second element of the returned list.
(parse-wheel-metadata): Likewise.
(guess-requirements): Adapt.
(make-pypi-sexp): Likewise, and include the test inputs requirements as native
inputs in the returned package expression.

* tests/pypi.scm (test-requires.txt): Include a test section in the
test-requires.txt data.
(test-requires.txt-beaker): New variable.
("parse-requires.txt"): Adapt.
("parse-requires.txt - Beaker"): New test.
("parse-wheel-metadata, with extras"): Adapt.
("parse-wheel-metadata, with extras - Jedi"): Adapt.
("pypi->guix-package, no wheel"): Re-indent, and add the expected
native-inputs.
("pypi->guix-package, wheels"): Likewise.
2019-07-02 10:08:00 +09:00
Maxim Cournoyer f801c6215d
import: pypi: Completely mute the output of the "unzip" command.
* guix/import/pypi.scm (guess-requirements): Completely mute the output of the
"unzip" command.
2019-07-02 10:08:00 +09:00
Maxim Cournoyer 73e8373060
import: pypi: Fix typo in docstring.
* guix/import/pypi.scm (guess-requirements): Fix typo.
2019-07-02 10:08:00 +09:00
Maxim Cournoyer f0190a5dcd
import: pypi: Parse wheel METADATA instead of metadata.json.
With newer Wheel releases, there is no more metadata.json file; the METADATA
file should be used instead (see: https://github.com/pypa/wheel/issues/195).

This change updates our PyPI importer so that it uses the latter.

* guix/import/pypi.scm (define-module): Remove unnecessary modules and export
the PARSE-WHEEL-METADATA procedure.
(parse-wheel-metadata): Add procedure.
(guess-requirements): Use it.
* tests/pypi.scm (test-metadata): Test it.
2019-07-02 10:08:00 +09:00
Maxim Cournoyer c799ad7276
import: pypi: Support more types of archives.
This change enables the PyPI importer to look for requirements in a source
archive of a different type than "tar.gz" or "tar.bz2".  Also, scan the source
archive to find a requires.txt file.

* guix/import/pypi.scm: (guess-requirements)[tarball-directory]: Remove procedure.
[guess-requirements-from-source]: Use COMRESSED-FILE? to determine if an
archive type is supported, and some file extension logic that chooses either
"tar" or "unzip" as the extractor.  Search for the requires.txt file in the
archive instead of using a static, expected location.
(guess-requirements): Rename the TARBALL argument to ARCHIVE, to denote the
archive format is no longer bound specifically to the Tar format.
(compute-inputs): Likewise.
* tests/pypi.scm ("pypi->guix-package, no wheel"): Mock the requires.txt at a
non-standard location.
("pypi->guix-package, no usable requirement file."): New test.
2019-07-02 10:07:59 +09:00
Maxim Cournoyer cc9a77cd39
import: pypi: Deduplicate requirements.
* guix/import/pypi.scm (parse-requires.txt): Remove potential duplicates.
2019-07-02 10:07:59 +09:00
Maxim Cournoyer 803fb336d6
import: pypi: Improve parsing of requirement specifications.
The previous solution was fragile and could leave unwanted characters in a
requirement name, such as '[' or ']'.

Partially fixes <https://bugs.gnu.org/33047>.

* guix/import/pypi.scm (use-modules): Export SPECIFICATION->REQUIREMENT-NAME
(%requirement-name-regexp): New variable.
(clean-requirement): Rename to...
(specification->requirement-name): this, which now uses
%requirement-name-regexp to select the requirement name from the requirement
specification.
(parse-requires.txt): Adapt.
2019-07-02 10:07:59 +09:00
Maxim Cournoyer c4797121be
import: pypi: Do not parse optional requirements from source.
* guix/import/pypi.scm: Export PARSE-REQUIRES.TXT.
(clean-requirement): Move procedure to the top level.
(guess-requirements): Move the READ-REQUIREMENTS procedure to the top level,
and rename it to PARSE-REQUIRES.TXT.  Move the CLEAN-REQUIREMENT procedure to
the top level.  Move the COMMENT? functions inside the PARSE-REQUIRES.TXT
procedure.
(parse-requires.txt): Add a SECTION-HEADER? predicate, and use it to prevent
parsing optional requirements.

* tests/pypi.scm (test-requires-with-sections): New variable.
("parse-requires.txt, with sections"): New test.
2019-07-02 10:07:59 +09:00
Maxim Cournoyer a853acebe1
tests: pypi: Mute the output of tar.
The output of tar when creating archives for the purpose of tests is not
useful, so we mute it.

* tests/pypi.scm ("pypi->guix-package"): Mute the output of tar.
("pypi->guix-package, wheels"): Likewise.
2019-07-02 10:07:59 +09:00
Maxim Cournoyer 01589acc5e
import: pypi: Do not consider requirements.txt files.
PyPI packages are mandated to have a setup.py file, which contains a listing
of the required dependencies.  The setuptools/distutils machinery embed
metadata in the archives they produce, which contains this information. There
is no need nor gain to collect the requirements from a "requirements.txt"
file, as it is not the true record of dependencies for PyPI packages and may
contain extraneous requirements or not exist at all.

* guix/import/pypi.scm (guess-requirements): Update comment.
[guess-requirements-from-source]: Do not attempt to parse the file
requirements.txt.  Streamline logic.
* tests/pypi.scm (test-requires.txt): Rename from test-requirements, to hint
at the file being tested.
("pypi->guix-package"): Adapt so that the fake package contains a requires.txt
file rather than a requirements.txt file.
("pypi->guix-package, wheels"): Likewise.
2019-07-02 10:07:59 +09:00
Marius Bakke 27b3568b61
gnu: tzdata: Update source URI.
* gnu/packages/base.scm (tzdata, tzdata-for-tests)[source, native-inputs]:
Update redirected URIs.
2019-07-02 01:57:13 +02:00
Marius Bakke 1290855490
gnu: linux-libre-headers: Update to 4.19.56.
* gnu/packages/linux.scm (linux-libre-headers-4.14.67): Rename to ...
(linux-libre-headers-4.19.56): ... this.  Adjust hash accordingly.
(linux-libre-headers): Set to LINUX-LIBRE-HEADERS-4.19.56.
* gnu/packages/commencement.scm (linux-libre-headers-boot0)[native-inputs]:
Add FLEX-BOOT0 and BISON-BOOT0.
2019-07-02 01:06:31 +02:00
Marius Bakke 742f2deaa3
gnu: commencement: Remove outdated comment.
* gnu/packages/commencement.scm (bison-boot0): Remove bash comment, which is
no longer accurate.
2019-07-02 01:06:31 +02:00
Marius Bakke e27916274c
gnu: libuninameslist: Update to 20190701.
* gnu/packages/fontutils.scm (libuninameslist): Update to 20190701.
2019-07-02 01:06:31 +02:00
Marius Bakke 3730e3c64e
gnu: gettext: Update to 0.20.1.
* gnu/packages/gettext.scm (gettext-minimal): Update to 0.20.1.
[source](snippet): Remove.
[inputs]: Remove EXPAT.  Add LIBUNISTRING, LIBXML2, and NCURSES.
[arguments]: Add #:configure-flags and a "patch-fixed-paths" phase.  Delete
"link-expat" phase.
* gnu/packages/commencement.scm (gettext-boot0): Stay on version 0.19.8.1.
[arguments]: Adjust accordingly.

Co-authored-by: Miguel <rosen644835@gmail.com>
2019-07-02 01:06:31 +02:00
Marius Bakke f16a866f74
gnu: bootstrap-tarballs: Don't include the native Mes when cross-compiling.
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[inputs]: Check
%CURRENT-TARGET-SYSTEM when deciding whether to use the reduced binary seeds.
2019-07-02 01:06:31 +02:00
Marius Bakke 25a54eb04d
gnu: make-bootstrap: Adjust for GCC 7.
* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc)[native-inputs]:
Add SEARCH-PATHS to CROSS-GCC, and NATIVE-SEARCH-PATHS to the native GCC.
2019-07-02 01:06:31 +02:00
Marius Bakke 7c836efacc
gnu: make-bootstrap: Restore cross-compilation workarounds.
These workarounds were removed in cf82643647 and
218eb6e611, but were needed for %BOOTSTRAP-TARBALLS.

* gnu/packages/make-bootstrap.scm (%static-inputs)[coreutils, tar]: Add
<#:configure-flags>.
2019-07-02 01:06:30 +02:00
Marius Bakke 209214aaef
gnu: make-bootstrap: Remove obsolete header file.
* guix/build/make-bootstrap.scm (copy-linux-headers): Do not install 'a.out.h'.
2019-07-02 01:06:30 +02:00
Nicolas Goaziou 0f0651295e
gnu: silkaj: Update to 0.7.2.
* gnu/packages/finance.scm (silkaj): Update to 0.7.2.
2019-07-02 00:45:05 +02:00
Nicolas Goaziou 7242d5792b
gnu: giac: Update to 1.5.0-61.
* gnu/packages/algebra.scm (giac): Update to 1.5.0-61.
2019-07-02 00:38:36 +02:00
Nicolas Goaziou 2868804de6
gnu: python-duniterpy: Update to 0.54.3.
* gnu/packages/finance.scm (python-duniterpy): Update to 0.54.3.
2019-07-02 00:13:08 +02:00
Ricardo Wurmus cea5db1b84
etc: Do not recommend use of SKS key servers.
* etc/guix-install.sh: Recommend downloading the GPG key from Savannah.
2019-07-01 23:32:08 +02:00
Ludovic Courtès 8aaf42c037
gnu: guile-static-stripped: Adjust patches for 2.2.6.
* gnu/packages/patches/guile-2.2-default-utf8.patch,
gnu/packages/patches/guile-relocatable.patch: Adjust for Guile 2.2.6.
2019-07-01 14:25:56 +02:00
Ludovic Courtès 1c94df8a1b
gnu: guile: Update to 2.2.6.
* gnu/packages/guile.scm (guile-2.2): Update to 2.2.6.
2019-07-01 13:51:16 +02:00
Ludovic Courtès 78c88baad5
gnu: guile: Add 2.2.6.
* gnu/packages/guile.scm (guile-2.2.5): Rename to...
(guile-2.2.6): ... this, and update to 2.2.6.
2019-07-01 12:29:34 +02:00
Danny Milosavljevic 037bef7db4
gnu: behave: Fix build.
* gnu/packages/check.scm (behave)[propagated-inputs]: Add
python-importlib-metadata.
2019-07-01 12:08:08 +02:00
Marius Bakke a3d1a3487a
gnu: gtksourceviewmm: Build against gtksourceview@3.
* gnu/packages/gtk.scm (gtksourceviewmm)[propagated-inputs]: Change
GTKSOURCEVIEW to GTKSOURCEVIEW-3.
2019-06-30 20:14:58 +02:00
Ivan Petkov 022288ba53
guix: import: crate: fix redundant inputs list nesting
* guix/import/crate.scm (maybe-cargo-inputs): Remove one level of lists.
* guix/import/crate.scm (maybe-cargo-development-inputs): Same.
* tests/crate.scm: (crate->guix-package)[package]<#:arguments>: Remove
one level of list nesting.
2019-06-30 09:01:27 -07:00
Marius Bakke fd3594bf38
Revert "gnu: meson: Update to 0.51.0."
Meson 0.51.0 has problems with PKG_CONFIG_PATH.  See <https://bugs.gnu.org/36386>.

This reverts commit 70530036b8.
2019-06-30 17:08:13 +02:00
Marius Bakke ca9a598e8a
gnu: libuv: Update to 1.30.0.
* gnu/packages/libevent.scm (libuv): Update to 1.30.0.
2019-06-30 17:06:42 +02:00
Marius Bakke 61f34ae5bb
gnu: libssh2: Update to 1.9.0.
* gnu/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/ssh.scm (libssh2): Update to 1.9.0.
[source](patches): Remove.
2019-06-30 17:06:42 +02:00
Marius Bakke 2528006581
build-system/meson: Do not inherit the 'bootstrap' phase.
* guix/build/meson-build-system.scm (%standard-phases): Remove 'bootstrap'.
* gnu/packages/glib.scm (glib)[arguments]: Adjust accordingly.
2019-06-30 17:06:42 +02:00
Marius Bakke 1b0668272c
gnu: python-more-itertools: Update to 7.1.0.
* gnu/packages/python-xyz.scm (python-more-itertools): Update to 7.1.0.
2019-06-30 17:06:42 +02:00
Marius Bakke 984ab5daf9
gnu: poppler: Update to 0.78.0.
* gnu/packages/pdf.scm (poppler): Update to 0.78.0.
2019-06-30 17:06:42 +02:00
Marius Bakke 6c6e56fe53
gnu: nettle: Update to 3.5.1.
* gnu/packages/nettle.scm (nettle): Update to 3.5.1.
2019-06-30 17:06:41 +02:00
Marius Bakke 9011f748a5
gnu: harfbuzz: Update to 2.5.3.
* gnu/packages/gtk.scm (harfbuzz): Update to 2.5.3.
2019-06-30 17:06:41 +02:00
Marius Bakke 5dd0269244
gnu: miniupnpc: Update to 2.1.20190625.
* gnu/packages/upnp.scm (miniupnpc): Update to 2.1.20190625.
2019-06-30 14:11:02 +02:00
Marius Bakke 1307aa4427
gnu: mbedtls-apache: Update to 2.16.2.
* gnu/packages/tls.scm (mbedtls-apache): Update to 2.16.2.
2019-06-30 14:11:01 +02:00
Marius Bakke ff68ddb032
gnu: ungoogled-chromium: Build against ICU 64.
* gnu/packages/icu4c.scm (icu4c-64): New public variable.
* gnu/packages/chromium.scm (ungoogled-chromium)[inputs]: Change ICU4C to ICU4C-64.
2019-06-30 14:11:00 +02:00
Marius Bakke d1b93e91a4
gnu: python-cython: Update to 0.29.11.
* gnu/packages/python-xyz.scm (python-cython): Update to 0.29.11.
2019-06-30 13:41:53 +02:00
Marius Bakke 730c1cc04e
gnu: ImageMagick: Update to 6.9.10-50.
* gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.10-50.
2019-06-30 13:41:21 +02:00
Marius Bakke c50f15d67f
gnu: perl-net-ssleay: Update source URI.
This is a follow-up to commit 966e4beadc.

* gnu/packages/tls.scm (perl-net-ssleay)[source](uri): Update to current.
2019-06-30 12:45:52 +02:00
Marius Bakke 966e4beadc
gnu: perl-net-ssleay: Update to 1.88.
* gnu/packages/tls.scm (perl-net-ssleay): Update to 1.88.
2019-06-29 23:30:19 +02:00