Commit Graph

46778 Commits

Author SHA1 Message Date
Robert Vollmert 4fde0030d4
build/cargo-build-system: Use bundled json instead of guile-json.
* guix/build/cargo-build-system.scm: Use (gnu build json) instead
of (json parser).
* guix/build-system/cargo.scm: Import (gnu build json) instead of
(json parser).

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2019-07-16 09:54:12 +02:00
Robert Vollmert 848862f029
gnu: rust-proc-macro2: Update to 0.4.30.
* gnu/packages/crates-io.scm (rust-proc-macro2): Update to 0.4.30.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2019-07-16 09:53:51 +02:00
Robert Vollmert c82c16a6f3
build/cargo-build-system: Set CARGO_HOME early.
* guix/build/cargo-build-system.scm (configure): Set CARGO_HOME.
(install): No longer set CARGO_HOME.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2019-07-16 09:52:07 +02:00
Efraim Flashner 857ff51562
gnu: direvent: Update to 5.2.
* gnu/packages/admin.scm (direvent): Update to 5.2.
2019-07-16 09:40:57 +03:00
Christopher Baines 38f3176a57
lint: Separate checkers by dependence on the internet.
I think there are a couple of potential uses for this. It's somewhat a
separation in to what checkers are just checking the contents of the
repository (line length for example), and other checkers which are bringing in
external information which could change.

I'm thinking particularly, about treating network dependent checkers
differently when automatically running them, but this commit also adds a
--no-network flag to guix lint, which selects the checkers that don't access
the network, which could be useful if no network access is available.

* guix/lint.scm (%checkers): Rename to %all-checkers.
(%local-checkers, %network-dependent-checkers): New variables.
* guix/scripts/lint.scm (run-checkers): Make the checkers argument mandatory.
(list-checkers-and-exit): Handle the checkers as an argument.
(%options): Adjust for changes to %checkers, add a --no-network option, and
change how the --list-checkers option is handled.
(guix-lint): Adjust indentation, and update how the checkers are handled.
2019-07-15 22:32:19 +01:00
Christopher Baines f363c836e0
lint: Move the linting code to a different module.
To try and move towards making programatic access to the linting code easier,
this commit separates out the linting script, from the linting functionality
that it uses.

* guix/scripts/lint.scm (emit-warnings): Alter to to not use match-lambda, as
<lint-warning> isn't accessible.
(<lint-warning>, lint-warning, make-lint-warning, lint-warning?,
lint-warning-message, lint-warning-message-text, lint-warning-message-data,
lint-warning-location, package-file, %make-warning make-warning,
<lint-checker>, lint-checker, make-lint-checker, lint-checker?,
lint-checker-name, lint-checker-description, lint-checker-check,
properly-starts-sentance?, starts-with-abbreviation?, %quoted-identifier-rx,
check-description-style, package-input-intersection,
check-inputs-should-be-native, check-inputs-should-not-be-an-input-at-all,
package-name-regexp, check-synopsis-style, probe-uri,
tls-certificate-error-string, validate-uri, check-home-page,
%distro-directory, check-patch-file-names, escape-quotes,
official-gnu-packages*, check-gnu-synopsis+description, origin-uris,
check-source, check-source-file-name, check-source-unstable-tarball,
check-mirror-url, check-github-url, check-derivation, check-license,
call-with-networking-fail-safe, with-networking-fail-safe,
current-vulnerabilities*, package-vulnerabilities, check-vulnerabilities,
check-for-updates, report-tabulations, report-trailing-white-space,
report-long-line, %hanging-paren-rx, report-lone-parantheses,
%formatting-reporters, report-formatting-issues, check-formatting, %checkers):
Move to…
* guix/lint.scm: … here
* po/guix/POTFILES.in: Add guix/lint.scm.
* Makefile.am: Add guix/lint.scm.
* tests/lint.scm: Change to import (guix lint), rather than (guix scripts lint).
2019-07-15 22:32:19 +01:00
Christopher Baines 57238532f4
scripts: lint: Separate the message warning text and data.
So that translations can be handled more flexibly, rather than having to
translate the message text within the checker.

* guix/scripts/lint.scm (lint-warning-message-text,
lint-warning-message-data): New procedures.
(lint-warning-message): Remove record field accessor, replace with procedure
that handles the lint warning data and translating the message.
(make-warning): Rename to %make-warning.
(make-warning): New macro.
(emit-warnings): Handle the message-text and message-data fields.
(check-description-style): Adjust for changes to make-warning.
[check-trademarks, check-end-of-sentence-space): Adjust for changes to
make-warning.
(check-inputs-should-be-native, check-inputs-should-not-be-an-input-at-all,
check-synopsis-style, validate-uri, check-home-page, check-patch-file-names,
check-gnu-synopsis+description, check-mirror-url, check-github-url,
check-derivation, check-vulnerabilities, check-for-updates,
report-tabulations, report-trailing-white-space, report-long-line,
report-lone-parentheses): Adjust for changes to make-warning.
2019-07-15 22:32:19 +01:00
Christopher Baines 50fc2384fe
scripts: lint: Handle warnings with a record type.
Rather than emiting warnings directly to a port, have the checkers return the
warning or warnings.

This makes it easier to use the warnings in different ways, for example,
loading the data in to a database, as you can work with the <lint-warning>
records directly, rather than having to parse the output to determine the
package and location.

* guix/scripts/lint.scm (<lint-warning>): New record type.
(lint-warning): New macro.
(lint-warning?, lint-warning-package, lint-warning-message,
lint-warning-location, package-file, make-warning): New procedures.
(call-with-accumulated-warnings, with-accumulated-warnings): Remove.
(emit-warning): Rename to emit-warnings, and switch to displaying multiple
warnings.
(check-description-style)[check-not-empty-description, check-texinfo-markup,
check-trademarks, check-quotes, check-proper-start,
check-end-of-sentence-space]: Switch to generating a list of warnings, and
using make-warning, rather than emit-warning.
(check-inputs-should-be-native, check-inputs-should-not-be-an-input-at-all):
Switch to generating a list of warnings, and using make-warning, rather than
emit-warning.
(check-synopsis): Switch to generating a list of warnings, and using
make-warning, rather than emit-warning.
[check-not-empty]: Remove, this is handled in the match clause
to avoid other warnings being emitted.
[check-final-period, check-start-article, check-synopsis-length,
check-proper-start, check-start-with-package-name, check-texinfo-markup]:
Switch to generating a list of warnings, and using make-warning, rather than
emit-warning.
[checks]: Remove check-not-empty.
(validate-uri, check-home-page, check-patch-file-names,
check-gnu-synopsis+description): Switch to generating a list of warnings, and
using make-warning, rather than emit-warning.
(check-source): Switch to generating a list of warnings, and using
make-warning, rather than emit-warning.
[try-uris]: Remove.
[warnings-for-uris]: New procedure, replacing try-uris.
(check-source-file-name, check-source-unstable-tarball, check-mirror-url,
check-github-url, check-derivation, check-vulnerabilities, check-for-updates,
report-tabulations, report-trailing-white-space, report-long-line,
report-lone-parentheses, report-formatting-issues, check-formatting): Switch
to generating a list of warnings, and using make-warning, rather than
emit-warning.
(run-checkers): Call emit-warnings on the warnings returned from the checker.
* tests/lint.scm (string-match-or-error, single-lint-warning-message): New
procedures.
(call-with-warnings, with-warnings): Remove.
("description: not a string", "description: not empty", "description: invalid
Texinfo markup", "description: does not start with an upper-case letter",
"description: may start with a digit", "description: may start with lower-case
package name", "description: two spaces after end of sentence", "description:
end-of-sentence detection with abbreviations", "description: may not contain
trademark signs: ™", "description: may not contain trademark signs: ®",
"description: suggest ornament instead of quotes", "synopsis: not a string",
"synopsis: not empty", "synopsis: valid Texinfo markup", "synopsis: does not
start with an upper-case letter", "synopsis: may start with a digit",
"synopsis: ends with a period", "synopsis: ends with 'etc.'", "synopsis:
starts with 'A'", "synopsis: starts with 'a'", "synopsis: starts with 'an'",
"synopsis: too long", "synopsis: start with package name", "synopsis: start
with package name prefix", "synopsis: start with abbreviation", "inputs:
pkg-config is probably a native input", "inputs: glib:bin is probably a native
input", "inputs: python-setuptools should not be an input at all (input)",
"inputs: python-setuptools should not be an input at all (native-input)",
"inputs: python-setuptools should not be an input at all (propagated-input)",
"patches: file names", "patches: file name too long", "patches: not found",
"derivation: invalid arguments", "license: invalid license", "home-page: wrong
home-page", "home-page: invalid URI", "home-page: host not found", "home-page:
Connection refused", "home-page: 200", "home-page: 200 but short length",
"home-page: 404", "home-page: 301, invalid", "home-page: 301 -> 200",
"home-page: 301 -> 404", "source-file-name", "source-file-name: v prefix",
"source-file-name: bad checkout", "source-file-name: good checkout",
"source-file-name: valid", "source-unstable-tarball",
"source-unstable-tarball: source #f", "source-unstable-tarball: valid",
"source-unstable-tarball: package named archive", "source-unstable-tarball:
not-github", "source-unstable-tarball: git-fetch", "source: 200", "source: 200
but short length", "source: 404", "source: 301 -> 200", "source: 301 -> 404",
"mirror-url", "mirror-url: one suggestion", "github-url", "github-url: one
suggestion", "github-url: already the correct github url", "cve", "cve: one
vulnerability", "cve: one patched vulnerability", "cve: known safe from
vulnerability", "cve: vulnerability fixed in replacement version", "cve:
patched vulnerability in replacement", "formatting: lonely parentheses",
"formatting: alright"): Change test-assert to test-equal, and adjust to work
with the changes above.
("formatting: tabulation", "formatting: trailing white space", "formatting:
long line"): Use string-match-or-error rather than string-contains.
2019-07-15 22:32:18 +01:00
Mark H Weaver 5b524f448c
gnu: linux-libre: Update to 5.2.1.
* gnu/packages/linux.scm (%linux-libre-version): Update to 5.2.1.
(%linux-libre-hash): Update hash.
2019-07-15 15:26:40 -04:00
Mark H Weaver ec92941a82
gnu: linux-libre@4.19: Update to 4.19.59.
* gnu/packages/linux.scm (%linux-libre-4.19-version): Update to 4.19.59.
(%linux-libre-4.19-hash): Update hash.
2019-07-15 15:25:19 -04:00
Marius Bakke 464a29d3d7
gnu: libnsl: Do not build 'libnsl.a'.
* gnu/packages/onc-rpc.scm (libnsl)[arguments]: Add <#:configure-flags>.
2019-07-15 21:19:35 +02:00
Marius Bakke 4b70b776e5
gnu: libnsl: Fix build with gettext 0.20.
* gnu/packages/onc-rpc.scm (libnsl)[arguments]: New field.
2019-07-15 21:18:01 +02:00
Marius Bakke 6e00b1ea62
gnu: python-cachecontrol: Do not use unstable source archive.
* gnu/packages/python-web.scm (python-cachecontrol)[source]: Change to GIT-FETCH.
2019-07-15 20:38:00 +02:00
Efraim Flashner 9db2cad68d
gnu: uim-qt: Build with qt-5 support.
* gnu/packages/xorg.scm (uim-qt)[inputs]: Remove qt@4.  Add qtbase,
qtx11extras.
[arguments]: Replace qt4 configure flags with qt5 configure flags.
2019-07-15 21:17:26 +03:00
Marius Bakke e6e09dc9c5
gnu: sooperlooper: Adjust for GCC 7.
* gnu/packages/music.scm (sooperlooper)[arguments]: Remove <#:make-flags>.
Preserve CPATH in <#:phases>.
2019-07-15 20:09:51 +02:00
Marius Bakke 5ba856aba3
gnu: Adjust CPATH overrides to work with GCC 7 search paths.
* gnu/packages/education.scm (gcompris)[arguments]: Preserve original CPATH,
if any.
* gnu/packages/games.scm (ltris, prboom-plus, abbaye, red-eclipse, btanks,
4dtris, edgar)[arguments]: Likewise.
2019-07-15 19:46:40 +02:00
Marius Bakke cdc07e6854
gnu: msgpack: Update to 3.2.0.
* gnu/packages/serialization.scm (msgpack): Update to 3.2.0.
[build-system]: Change to CMAKE-BUILD-SYSTEM.
[native-inputs]: Remove AUTOCONF, AUTOMAKE and LIBTOOL.
2019-07-15 18:51:17 +02:00
Marius Bakke adad147b4b
gnu: lua-libmpack: Update to 1.0.8.
* gnu/packages/serialization.scm (lua-libmpack): Update to 1.0.8.
2019-07-15 18:45:36 +02:00
Marius Bakke 2ec3df7019
gnu: lua-libmpack: Do not use unstable source tarball.
* gnu/packages/serialization.scm (lua-libmpack)[source]: Change to GIT-FETCH.
2019-07-15 18:44:01 +02:00
Ludovic Courtès e8fc56a3d2
gnu: open-zwave: Use the bundled TinyXML.
* gnu/packages/zwave.scm (open-zwave)[source](snippet): Remove code to
use our own TinyXML.
[inputs]: Remove TINYXML.
2019-07-15 18:27:23 +02:00
Ludovic Courtès 6f8eb9f1d8
remote: Make sure the user doesn't mess up with the REPL protocol.
Reported by zerodaysfordays@sdf.lonestar.org (Jakob L. Kreuze).

* guix/remote.scm (trampoline): Wrap 'primitive-load' in
'with-output-to-port'.
2019-07-15 18:27:22 +02:00
Ludovic Courtès 5db07b971d
remote: Fix type error in the list of store items to send.
Fixes a regression introduced in 3868577480.

* guix/remote.scm (remote-eval): Use 'append-map', not 'map', for
'derivation-input-output-paths'.
2019-07-15 18:27:22 +02:00
Marius Bakke f8e0d93ca3
gnu: salmon: Fix build with GCC 7.
* gnu/packages/bioinformatics.scm (salmon)[arguments]: Do not read from
CPLUS_INCLUDE_PATH, and add headers to CPATH only.
2019-07-15 18:21:47 +02:00
Marius Bakke 0b58cb427d
gnu: python-datrie: Update to 0.8.
* gnu/packages/python-xyz.scm (python-datrie): Update to 0.8.
[arguments]: Remove.
2019-07-15 18:13:39 +02:00
Marius Bakke b5b56b7f27
gnu: python-gevent: Fix build with libev 4.25 and GCC 7.
* gnu/packages/python-xyz.scm (python-gevent)[arguments]: Simplify libev
unbundling, which failed with the newer libev.  Use C_INCLUDE_PATH instead of CPATH.
[native-inputs]: Remove (PACKAGE-SOURCE LIBEV).
2019-07-15 16:56:15 +02:00
Marius Bakke c1cb85bf76
gnu: gRPC: Re-add custom c-ares variant.
Commit e8393ebe46 updated c-ares without knowing
that cmake-build-system was the most important feature of 'c-ares-next'.

* gnu/packages/adns.scm (c-ares/cmake): New hidden package.
* gnu/packages/machine-learning.scm (grpc)[inputs]: Change C-ARES to C-ARES/CMAKE.
2019-07-15 16:51:16 +02:00
Marius Bakke d08482f03f
gnu: python-hamcrest: Update to 1.9.0-0.25fdc5f.
* gnu/packages/check.scm (python-pyhamcrest): Update to 1.9.0-0.25fdc5f.
[arguments]: Replace CHECK phase with custom Pytest invokation.
2019-07-15 16:43:57 +02:00
Kei Kebreau 794ce8eaf7
gnu: libgweather: Update to 3.28.3.
* gnu/packages/gnome.scm (libgweather): Update to 3.28.3.
2019-07-15 09:58:52 -04:00
Kei Kebreau bc09c41631
gnu: dconf-editor: Update to 3.30.2.
* gnu/packages/gnome.scm (dconf-editor): Update to 3.30.2.
2019-07-15 09:58:52 -04:00
Kei Kebreau 757f863bd2
gnu: gnome-clocks: Update to 3.30.1.
* gnu/packages/gnome.scm (gnome-clocks): Update to 3.30.1.
2019-07-15 09:58:52 -04:00
Kei Kebreau 496d7ccd4d
gnu: gnome-calendar: Update to 3.30.1.
* gnu/packages/gnome.scm (gnome-calendar): Update to 3.30.1.
2019-07-15 09:58:51 -04:00
Kei Kebreau 2aabc647f2
gnu: gnome-shell-extensions: Update to 3.30.1.
* gnu/packages/gnome.scm (gnome-shell-extensions): Update to 3.30.1.
2019-07-15 09:58:51 -04:00
Kei Kebreau ef9b7d4c9f
gnu: orca: Update to 3.30.2.
* gnu/packages/gnome.scm (orca): Update to 3.30.2.
2019-07-15 09:58:51 -04:00
Kei Kebreau 676e7cb4fa
gnu: gnome-screenshot: Update to 3.30.0.
* gnu/packages/gnome.scm (gnome-screenshot): Update to 3.30.0.
[home-page]: Update URI.
2019-07-15 09:58:51 -04:00
Kei Kebreau 00b14dbb09
gnu: cheese: Update to 3.30.0.
* gnu/packages/gnome.scm (cheese): Update to 3.30.0.
2019-07-15 09:58:51 -04:00
Kei Kebreau 3b79afa6a8
gnu: shotwell: Update to 0.30.4.
* gnu/packages/gnome.scm (shotwell): Update to 0.30.4.
[build-system]: Use meson-build-system.
[arguments]: Set glib-or-gtk? flag.
[native-inputs]: Add desktop-file-utils.  Remove itstool duplicate.  Order
inputs alphabetically.
2019-07-15 09:58:51 -04:00
Kei Kebreau b1a8b40818
gnu: gexiv2: Update to 0.12.0.
* gnu/packages/gnome.scm (gexiv2): Update to 0.12.0.
[native-inputs]: Add gcr and vala.
2019-07-15 09:58:50 -04:00
Kei Kebreau 7734b4a2d9
gnu: gdm: Update to 3.30.3.
* gnu/packages/gnome.scm (gdm): Update to 3.30.3.
2019-07-15 09:58:50 -04:00
Kei Kebreau 11d28bd9f6
gnu: devhelp: Update to 3.30.1.
* gnu/packages/gnome.scm (devhelp): Update to 3.30.1.
[build-system]: Use meson-build-system.
[native-inputs]: Add gobject-introspection, glib:bin and gtk+:bin.
[inputs]: Add amtk.
2019-07-15 09:58:50 -04:00
Kei Kebreau f828d05b28
gnu: Add amtk.
* gnu/packages/gnome.scm (amtk): New variable.
2019-07-15 09:58:50 -04:00
Kei Kebreau d054fbf57d
gnu: gjs: Update to 1.56.2.
* gnu/packages/gnome.scm (gjs): Update to 1.56.2.
[arguments]: Adjust pre-check phase.
[propagated-inputs]: Replace mozjs-52 with mozjs-60.
2019-07-15 09:58:50 -04:00
Kei Kebreau 9d4d439b0a
gnu: gnome-tweaks: Update to 3.30.2.
* gnu/packages/gnome.scm (gnome-tweaks): Update to 3.30.2.
2019-07-15 09:58:50 -04:00
Kei Kebreau bea6b829b8
gnu: gcr: Update to 3.28.1.
* gnu/packages/gnome.scm (gcr): Update to 3.28.1.
[native-inputs]: Add vala.
2019-07-15 09:58:50 -04:00
Kei Kebreau 77425f04f2
gnu: totem: Update to 3.30.0.
* gnu/packages/gnome.scm (totem): Update to 3.30.0.
2019-07-15 09:28:23 -04:00
Kei Kebreau 18138ab939
gnu: shared-mime-info: Update to 1.10.
* gnu/packages/gnome.scm (shared-mime-info): Update to 1.10.
2019-07-15 09:28:23 -04:00
Kei Kebreau c71bb3f29d
gnu: nautilus: Update to 3.30.5.
* gnu/packages/gnome.scm (nautilus): Update to 3.30.5.
2019-07-15 09:28:23 -04:00
Kei Kebreau 12fe484673
gnu: gvfs: Update to 1.40.1.
* gnu/packages/gnome.scm (gvfs): Update to 1.40.1.
2019-07-15 09:28:23 -04:00
Kei Kebreau 1f8b5515ed
gnu: gucharmap: Update to 12.0.1.
* gnu/packages/gnome.scm (gucharmap): Update to 12.0.1.
[native-inputs]: Update unicode-files.
2019-07-15 09:28:23 -04:00
Kei Kebreau 5088834271
gnu: gnome-terminal: Update to 3.30.3.
* gnu/packages/gnome.scm (gnome-terminal): Update to 3.30.3.
2019-07-15 09:28:23 -04:00
Kei Kebreau 90fdc80f77
gnu: gnome-settings-daemon: Update to 3.30.2.
* gnu/packages/gnome.scm (gnome-settings-daemon): Update to 3.30.2.
2019-07-15 09:28:22 -04:00