jackhill/guix/guix.git
4 years agognu: Add xygrib.
Efraim Flashner [Sun, 14 Jul 2019 18:00:46 +0000 (21:00 +0300)]
gnu: Add xygrib.

* gnu/packages/geo.scm (xygrib): New variable.

4 years agognu: Add libnova.
Efraim Flashner [Sun, 14 Jul 2019 17:51:39 +0000 (20:51 +0300)]
gnu: Add libnova.

* gnu/packages/astronomy.scm (libnova): New variable.

4 years agognu: bind: Update to 9.14.4.
Tobias Geerinckx-Rice [Thu, 18 Jul 2019 10:54:05 +0000 (12:54 +0200)]
gnu: bind: Update to 9.14.4.

* gnu/packages/dns.scm (bind): Update to 9.14.4.

4 years agomachine: Fix typo.
Tobias Geerinckx-Rice [Wed, 17 Jul 2019 15:32:31 +0000 (17:32 +0200)]
machine: Fix typo.

* gnu/machine/ssh.scm (managed-host-environment-type)[description]:
Fix typo.

4 years agoRevert "gnu: emacs-org: Update to 9.2.4."
Nicolas Goaziou [Thu, 18 Jul 2019 08:43:57 +0000 (10:43 +0200)]
Revert "gnu: emacs-org: Update to 9.2.4."

This reverts commit 348753349222206809f0b1f7d4ce5fbed43290f0.

The structure of the tarball is different when obtained from
"https://orgmode.org" and emacs-build-system no longer apply.  Therefore, the
package will not build.

Org has not been updated in ELPA to its latest version (9.2.4); this was
reported upstream.

4 years agognu: starfighter: Update to 2.0.0.2.
Kei Kebreau [Thu, 18 Jul 2019 02:48:58 +0000 (22:48 -0400)]
gnu: starfighter: Update to 2.0.0.2.

* gnu/packages/games.scm (starfighter): Update to 2.0.0.2.
[source]: Use 'git-fetch' and 'git-file-name'.
[native-inputs]: Add autoconf and automake.
[inputs]: Add pango and sdl2-ttf.
[home-page]: Update project home page.

4 years agodoc: Correctly document 'host' field of <cuirass-configuration>.
Ludovic Courtès [Wed, 17 Jul 2019 22:43:54 +0000 (00:43 +0200)]
doc: Correctly document 'host' field of <cuirass-configuration>.

* doc/guix.texi (Continuous Integration): Fix doc of the 'host' field.

4 years agopull: Pass #:use-substitutes? to 'show-what-to-build'.
Ludovic Courtès [Wed, 17 Jul 2019 19:28:54 +0000 (21:28 +0200)]
pull: Pass #:use-substitutes? to 'show-what-to-build'.

Fixes <https://bugs.gnu.org/36509>.
Reported by Robert Vollmert <rob@vllmrt.net>.

* guix/scripts/pull.scm (build-and-install): Add #:use-substitutes?
parameter and pass it to UPDATE-PROFILE.
(guix-pull): Pass #:use-substitutes? to 'build-and-install'.

4 years agopull: Use (ice-9 format).
Ludovic Courtès [Wed, 17 Jul 2019 18:09:44 +0000 (20:09 +0200)]
pull: Use (ice-9 format).

* guix/scripts/pull.scm (guix): Use (ice-9 format), as reported by
'-Wformat'.

4 years agopull: Remove unused procedures.
Ludovic Courtès [Wed, 17 Jul 2019 18:09:24 +0000 (20:09 +0200)]
pull: Remove unused procedures.

* guix/scripts/pull.scm (what-to-build, indirect-root-added): Remove.

4 years agodoc: Remove note about grafts being "beta".
Ludovic Courtès [Wed, 17 Jul 2019 18:06:51 +0000 (20:06 +0200)]
doc: Remove note about grafts being "beta".

* doc/guix.texi (Security Updates): Remove pointless note about the
feature being "beta".

4 years agognu: ungoogled-chromium: Add native Wayland variant.
Marius Bakke [Wed, 17 Jul 2019 14:30:23 +0000 (16:30 +0200)]
gnu: ungoogled-chromium: Add native Wayland variant.

* gnu/packages/chromium.scm (%preserved-third-party-files): Preserve
"third_party/wayland/wayland_scanner_wrapper.py" and "third_party/wayland-protocols".
(ungoogled-chromium/wayland): New public variable.

4 years agognu: emacs-org-contrib: Update to 20190715.
Tobias Geerinckx-Rice [Wed, 17 Jul 2019 14:02:46 +0000 (16:02 +0200)]
gnu: emacs-org-contrib: Update to 20190715.

* gnu/packages/emacs-xyz.scm (emacs-org-contrib): Update to 20190715.

4 years agognu: emacs-org: Update to 9.2.4.
Tobias Geerinckx-Rice [Wed, 17 Jul 2019 14:02:38 +0000 (16:02 +0200)]
gnu: emacs-org: Update to 9.2.4.

* gnu/packages/emacs-xyz.scm (emacs-org): Update to 9.2.4.

4 years agognu: c-reduce: Update to 2.10.0.
Tobias Geerinckx-Rice [Wed, 17 Jul 2019 13:55:51 +0000 (15:55 +0200)]
gnu: c-reduce: Update to 2.10.0.

* gnu/packages/debug.scm (c-reduce): Update to 2.10.0.
[inputs]: Use default clang & llvm versions (currently 8).

4 years agognu: sord: Propagate serd.
Tobias Geerinckx-Rice [Wed, 17 Jul 2019 12:52:31 +0000 (14:52 +0200)]
gnu: sord: Propagate serd.

* gnu/packages/rdf.scm (sord)[inputs]: Move serd from here…
[propagated-inputs]: …to here.

4 years agognu: python-pathlib2: Fix synopsis typo.
Tobias Geerinckx-Rice [Wed, 17 Jul 2019 11:14:43 +0000 (13:14 +0200)]
gnu: python-pathlib2: Fix synopsis typo.

* gnu/packages/python-xyz.scm (synopsis): Fix typo.

4 years agognu: npth: Update to 1.6.
Tobias Geerinckx-Rice [Wed, 17 Jul 2019 08:34:05 +0000 (10:34 +0200)]
gnu: npth: Update to 1.6.

* gnu/packages/gnupg.scm (npth): Update to 1.6.

4 years agognu: u-boot: Fix target/system comparison in 'make-u-boot-package'.
Ludovic Courtès [Wed, 17 Jul 2019 13:23:04 +0000 (15:23 +0200)]
gnu: u-boot: Fix target/system comparison in 'make-u-boot-package'.

Until now, running, say:

  guix build -e '(@@ (gnu packages bootloaders) u-boot-a20-olinuxino-micro)' \
    -s armhf-linux

on an x86_64-linux machine wouldn't have the desired effect
because (%current-system) would return "x86_64-linux" when 'same-arch?'
was evaluated.  This fixes that.

* gnu/packages/bootloaders.scm (make-u-boot-package)[same-arch?]: Turn
into a thunk so that (%current-system) is evaluated in the right
context, and adjust callers.  Use 'string=?' instead of 'string-prefix?'.

4 years agognu: Add readymedia.
Jens Mølgaard [Tue, 16 Jul 2019 01:49:51 +0000 (13:49 +1200)]
gnu: Add readymedia.

* gnu/packages/upnp.scm (readymedia): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4 years agognu: telegram-purple: Update to 1.4.1.
Jonathan Brielmaier [Mon, 15 Jul 2019 17:51:01 +0000 (19:51 +0200)]
gnu: telegram-purple: Update to 1.4.1.

* gnu/packages/messaging.scm (telegram-purple): Update to 1.4.1.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4 years agognu: emacs-prescient: Update to 3.2.
Brian Leung [Sun, 14 Jul 2019 02:24:32 +0000 (04:24 +0200)]
gnu: emacs-prescient: Update to 3.2.

* gnu/packages/emacs-xyz.scm (emacs-prescient): Update to 3.2.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4 years agognu: Add emacs-so-long.
Brian Leung [Sun, 14 Jul 2019 02:24:46 +0000 (04:24 +0200)]
gnu: Add emacs-so-long.

* gnu/packages/emacs-xyz.scm (emacs-so-long): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4 years agodoc: Reorder and clarify contributing instructions.
Florian Pelz [Sat, 13 Jul 2019 06:29:26 +0000 (08:29 +0200)]
doc: Reorder and clarify contributing instructions.

* doc/contributing.texi (Building from Git, Running Guix Before It Is
Installed): Make instructions using Guix come first and clarify which code is
an instruction and which is merely an example.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4 years agognu: python-ipykernel: Record absolute file name of 'python'.
Ludovic Courtès [Tue, 16 Jul 2019 21:25:18 +0000 (23:25 +0200)]
gnu: python-ipykernel: Record absolute file name of 'python'.

* gnu/packages/python-xyz.scm (python-ipykernel)[arguments]: Add
'set-python-file-name' phase.

4 years agognu: multipath-tools: Update to 0.8.2.
Marius Bakke [Wed, 17 Jul 2019 13:10:58 +0000 (15:10 +0200)]
gnu: multipath-tools: Update to 0.8.2.

* gnu/packages/linux.scm (multipath-tools): Update to 0.8.2.

4 years agognu: multipath-tools: Remove Ceph input.
Marius Bakke [Wed, 17 Jul 2019 13:09:45 +0000 (15:09 +0200)]
gnu: multipath-tools: Remove Ceph input.

Ceph adds a massive dependency for a little-used feature.  It was mainly added
because the build-system previously could not cope with librados being missing.

* gnu/packages/linux.scm (multipath-tools)[inputs]: Remove CEPH:LIB.

4 years agognu: python-swagger-spec-validator: Update to 2.4.3.
Danny Milosavljevic [Wed, 17 Jul 2019 09:52:40 +0000 (11:52 +0200)]
gnu: python-swagger-spec-validator: Update to 2.4.3.

* gnu/packages/python-xyz.scm (python-swagger-spec-validator): Update to
2.4.3.
[native-inputs]: Add python-pyyaml.

4 years agognu: Add python-flask-htpasswd.
Danny Milosavljevic [Wed, 17 Jul 2019 09:48:49 +0000 (11:48 +0200)]
gnu: Add python-flask-htpasswd.

* gnu/packages/python-web.scm (python-flask-htpasswd): New variable.

4 years agognu: Add network-manager-vpnc.
Jelle Licht [Wed, 3 Jul 2019 14:32:41 +0000 (16:32 +0200)]
gnu: Add network-manager-vpnc.

* gnu/packages/gnome.scm (network-manager-vpnc): New variable.

4 years agognu: network-manager-openvpn: Patch hardcoded paths.
Jelle Licht [Sun, 7 Jul 2019 19:01:05 +0000 (21:01 +0200)]
gnu: network-manager-openvpn: Patch hardcoded paths.

* gnu/packages/gnome.scm (network-manager-openvpn)[arguments]: Add custom
'patch-path' phase to replace references to openvpn and modprobe.
[inputs]: Add kmod.

4 years agognu: network-manager-openvpn: Pass '--localstatedir=/var'.
Jelle Licht [Sun, 7 Jul 2019 18:57:25 +0000 (20:57 +0200)]
gnu: network-manager-openvpn: Pass '--localstatedir=/var'.

* gnu/packages/gnome.scm (network-manager-openvpn)[arguments]: Pass
'--localstatedir=/var' to #:configure-flags.

4 years agoservices: network-manager: Clear default OpenVPN user.
Jelle Licht [Wed, 3 Jul 2019 14:30:15 +0000 (16:30 +0200)]
services: network-manager: Clear default OpenVPN user.

* gnu/services/networking.scm (network-manager-shepherd-service): Clear
'NM_OPENVPN_USER' and 'NM_OPENVPN_GROUP' in #:environment-variables.

4 years agoservices: network-manager: Properly load vpn plugins
Jelle Licht [Wed, 3 Jul 2019 12:03:25 +0000 (14:03 +0200)]
services: network-manager: Properly load vpn plugins

Extends the dbus service when vpn plugins are enabled.

* gnu/services/networking.scm (network-manager-service-type): Load vpn plugins
when extending dbus service.

4 years agognu: network-manager: Fix plugin loading problem.
Tomáš Čech [Wed, 3 Jul 2019 11:43:12 +0000 (13:43 +0200)]
gnu: network-manager: Fix plugin loading problem.

* gnu/packages/patches/nm-plugin-path.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (network-manager)[source](patches): New field.

Signed-off-by: Jelle Licht <jlicht@fsfe.org>
4 years agognu: Add gnaural.
Arun Isaac [Mon, 15 Jul 2019 15:15:41 +0000 (20:45 +0530)]
gnu: Add gnaural.

* gnu/packages/audio.scm (gnaural): New variable.

4 years agognu: msmtp: Update to 1.8.5.
Tobias Geerinckx-Rice [Tue, 16 Jul 2019 21:48:39 +0000 (23:48 +0200)]
gnu: msmtp: Update to 1.8.5.

* gnu/packages/mail.scm (msmtp): Update to 1.8.5.

4 years agognu: mpop: Update to 1.4.5.
Tobias Geerinckx-Rice [Tue, 16 Jul 2019 21:43:19 +0000 (23:43 +0200)]
gnu: mpop: Update to 1.4.5.

* gnu/packages/mail.scm (mpop): Update to 1.4.5.

4 years agognu: qjackctl: Update to 0.5.9.
Tobias Geerinckx-Rice [Tue, 16 Jul 2019 21:31:39 +0000 (23:31 +0200)]
gnu: qjackctl: Update to 0.5.9.

* gnu/packages/audio.scm (qjackctl): Update to 0.5.9.

4 years agognu: qsynth: Update to 0.5.7.
Tobias Geerinckx-Rice [Tue, 16 Jul 2019 21:22:58 +0000 (23:22 +0200)]
gnu: qsynth: Update to 0.5.7.

* gnu/packages/audio.scm (qsynth): Update to 0.5.7.
[arguments]: Remove CXXFLAGS=-std=gnu++11 #:configure-flag.

4 years agognu: qsynth: Use newer (HTTPS) home page.
Tobias Geerinckx-Rice [Tue, 16 Jul 2019 21:22:21 +0000 (23:22 +0200)]
gnu: qsynth: Use newer (HTTPS) home page.

* gnu/packages/audio.scm (qsynth)[home-page]: Update.

4 years agognu: Add opencascade-occt.
Paul Garlick [Fri, 12 Jul 2019 09:56:41 +0000 (10:56 +0100)]
gnu: Add opencascade-occt.

* gnu/packages/maths.scm (opencascade-occt): New variable.

4 years agognu: osc: Update to 0.165.2.
Tobias Geerinckx-Rice [Tue, 16 Jul 2019 20:42:14 +0000 (22:42 +0200)]
gnu: osc: Update to 0.165.2.

* gnu/packages/build-tools.scm (osc): Update to 0.165.2.

4 years agognu: gap: Update to 4.10.2.
Tobias Geerinckx-Rice [Tue, 16 Jul 2019 20:37:03 +0000 (22:37 +0200)]
gnu: gap: Update to 4.10.2.

* gnu/packages/algebra.scm (gap): Update to 4.10.2.

4 years agognu: font-google-noto: Update to 20171025.
Tobias Geerinckx-Rice [Tue, 16 Jul 2019 01:00:03 +0000 (03:00 +0200)]
gnu: font-google-noto: Update to 20171025.

* gnu/packages/fonts.scm (font-google-noto): Update to 20171025.

4 years agognu: r-pmcmr: Fix description.
Tobias Geerinckx-Rice [Mon, 15 Jul 2019 18:52:22 +0000 (20:52 +0200)]
gnu: r-pmcmr: Fix description.

* gnu/packages/cran.scm (r-pmcmr)[description]: Use ‘dependent’.

4 years agoUse more guix.gnu.org.
Tobias Geerinckx-Rice [Mon, 15 Jul 2019 16:46:39 +0000 (18:46 +0200)]
Use more guix.gnu.org.

* build-aux/build-self.scm (make-config.scm): Replace gnu.org/s/guix with guix.gnu.org.
* guix/scripts/publish.scm (render-home-page): Likewise.
* guix/self.scm (make-config.scm): Likewise.

4 years agognu: hdup: Use archived home page.
Tobias Geerinckx-Rice [Mon, 15 Jul 2019 16:44:51 +0000 (18:44 +0200)]
gnu: hdup: Use archived home page.

* gnu/packages/backup.scm (hdup)[home-page]: Load from archive.org.

4 years agognu: mercurial: Update to 5.0.2.
Tobias Geerinckx-Rice [Sat, 13 Jul 2019 04:13:39 +0000 (06:13 +0200)]
gnu: mercurial: Update to 5.0.2.

* gnu/packages/version-control.scm (mercurial): Update to 5.0.2.

4 years agognu: pari-gp: Update to 2.11.2.
Tobias Geerinckx-Rice [Sat, 13 Jul 2019 04:13:09 +0000 (06:13 +0200)]
gnu: pari-gp: Update to 2.11.2.

* gnu/packages/algebra.scm (pari-gp): Update to 2.11.2.

4 years agognu: xauth: Update to 1.1.
Tobias Geerinckx-Rice [Sat, 13 Jul 2019 04:14:20 +0000 (06:14 +0200)]
gnu: xauth: Update to 1.1.

* gnu/packages/xorg.scm (xauth): Update to 1.1.

4 years agognu: gp2c: Update to 0.0.11pl2.
Tobias Geerinckx-Rice [Sat, 13 Jul 2019 04:12:49 +0000 (06:12 +0200)]
gnu: gp2c: Update to 0.0.11pl2.

* gnu/packages/algebra.scm (gp2c): Update to 0.0.11pl2.

4 years agognu: jekyll: Update to 3.8.6.
Tobias Geerinckx-Rice [Sat, 13 Jul 2019 04:12:16 +0000 (06:12 +0200)]
gnu: jekyll: Update to 3.8.6.

* gnu/packages/ruby.scm (jekyll): Update to 3.8.6.

4 years agognu: ghc-clock-bootstrap: Move and inherit from ghc-clock.
Timothy Sample [Tue, 16 Jul 2019 18:43:03 +0000 (14:43 -0400)]
gnu: ghc-clock-bootstrap: Move and inherit from ghc-clock.

Fixes <https://bugs.gnu.org/36084>.

* gnu/packages/haskell-check.scm (ghc-clock-bootstrap): Move this...
* gnu/packages/haskell.scm (ghc-clock-bootstrap): ...here and inherit
from ghc-clock (which implies updating to version 0.7.2).

Co-authored-by: Robert Vollmert <rob@vllmrt.net>
4 years agognu: Allow building toolchain with non-default libc.
Carl Dong [Mon, 13 May 2019 20:02:13 +0000 (16:02 -0400)]
gnu: Allow building toolchain with non-default libc.

* gnu/packages/base.scm (make-gcc-libc): Make public.
* gnu/packages/commencement.scm (make-gcc-toolchain): Add 'libc'
  optional argument to specify using a non-default glibc package, also
  make public.

4 years agognu: ungoogled-chromium: Update to 75.0.3770.142 [security fixes].
Marius Bakke [Tue, 16 Jul 2019 15:06:41 +0000 (17:06 +0200)]
gnu: ungoogled-chromium: Update to 75.0.3770.142 [security fixes].

This fixes CVE-2019-972921 and CVE-2019-951487.

* gnu/packages/chromium.scm (%chromium-version): Set to 75.0.3770.142.
(%chromium-origin): Update hash.

4 years agognu: python-matplotlib: Do not propagate GTK+ or python-pyqt.
Ricardo Wurmus [Tue, 16 Jul 2019 15:00:08 +0000 (17:00 +0200)]
gnu: python-matplotlib: Do not propagate GTK+ or python-pyqt.

* gnu/packages/python-xyz.scm (python-matplotlib)[propagated-inputs]: Remove
gtk+ and python-pyqt.
[arguments]: Adjust configure-environment phase.

4 years agognu: snap: Update to 5.0.4.
Nicolas Goaziou [Tue, 16 Jul 2019 12:34:45 +0000 (14:34 +0200)]
gnu: snap: Update to 5.0.4.

* gnu/packages/education.scm (snap): Update to 5.0.4.

4 years agodoc: Add 'images' directory next to HTML pages.
Ludovic Courtès [Tue, 16 Jul 2019 08:37:12 +0000 (10:37 +0200)]
doc: Add 'images' directory next to HTML pages.

* doc/build.scm (html-manual): Add images/ symlinks.

4 years agobuild/cargo-build-system: Use bundled json instead of guile-json.
Robert Vollmert [Mon, 15 Jul 2019 19:41:55 +0000 (21:41 +0200)]
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>
4 years agognu: rust-proc-macro2: Update to 0.4.30.
Robert Vollmert [Mon, 15 Jul 2019 19:41:54 +0000 (21:41 +0200)]
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>
4 years agobuild/cargo-build-system: Set CARGO_HOME early.
Robert Vollmert [Mon, 15 Jul 2019 19:41:53 +0000 (21:41 +0200)]
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>
4 years agognu: direvent: Update to 5.2.
Efraim Flashner [Tue, 16 Jul 2019 06:40:57 +0000 (09:40 +0300)]
gnu: direvent: Update to 5.2.

* gnu/packages/admin.scm (direvent): Update to 5.2.

4 years agolint: Separate checkers by dependence on the internet.
Christopher Baines [Tue, 2 Jul 2019 19:25:42 +0000 (20:25 +0100)]
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.

4 years agolint: Move the linting code to a different module.
Christopher Baines [Tue, 2 Jul 2019 19:25:41 +0000 (20:25 +0100)]
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).

4 years agoscripts: lint: Separate the message warning text and data.
Christopher Baines [Sun, 16 Jun 2019 12:52:13 +0000 (13:52 +0100)]
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.

4 years agoscripts: lint: Handle warnings with a record type.
Christopher Baines [Mon, 6 May 2019 18:00:58 +0000 (19:00 +0100)]
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.

4 years agognu: linux-libre: Update to 5.2.1.
Mark H Weaver [Mon, 15 Jul 2019 19:26:40 +0000 (15:26 -0400)]
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.

4 years agognu: linux-libre@4.19: Update to 4.19.59.
Mark H Weaver [Mon, 15 Jul 2019 19:25:19 +0000 (15:25 -0400)]
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.

4 years agognu: python-cachecontrol: Do not use unstable source archive.
Marius Bakke [Mon, 15 Jul 2019 15:20:24 +0000 (17:20 +0200)]
gnu: python-cachecontrol: Do not use unstable source archive.

* gnu/packages/python-web.scm (python-cachecontrol)[source]: Change to GIT-FETCH.

4 years agognu: uim-qt: Build with qt-5 support.
Efraim Flashner [Mon, 15 Jul 2019 18:16:41 +0000 (21:16 +0300)]
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.

4 years agognu: open-zwave: Use the bundled TinyXML.
Ludovic Courtès [Mon, 15 Jul 2019 16:24:10 +0000 (18:24 +0200)]
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.

4 years agoremote: Make sure the user doesn't mess up with the REPL protocol.
Ludovic Courtès [Mon, 15 Jul 2019 15:58:01 +0000 (17:58 +0200)]
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'.

4 years agoremote: Fix type error in the list of store items to send.
Ludovic Courtès [Mon, 15 Jul 2019 14:02:44 +0000 (16:02 +0200)]
remote: Fix type error in the list of store items to send.

Fixes a regression introduced in 386857748097619b3b75a7bf93677b6aa742d03c.

* guix/remote.scm (remote-eval): Use 'append-map', not 'map', for
'derivation-input-output-paths'.

4 years agognu: swayidle: Update to 1.5.
Rutger Helling [Mon, 15 Jul 2019 12:20:12 +0000 (14:20 +0200)]
gnu: swayidle: Update to 1.5.

* gnu/packages/wm.scm (swayidle): Update to 1.5.

4 years agognu: openrct2: Update to 0.2.3.
Rutger Helling [Mon, 15 Jul 2019 12:19:01 +0000 (14:19 +0200)]
gnu: openrct2: Update to 0.2.3.

* gnu/packages/games.scm (openrct2): Update to 0.2.3.

4 years agodoc: note how to install git send-email
Arne Babenhauserheide [Fri, 12 Jul 2019 21:43:33 +0000 (23:43 +0200)]
doc: note how to install git send-email

* doc/contributing.texi (git send-email): Add install instructions.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4 years agognu: python-aiorpcx: capitalize description
Arne Babenhauserheide [Fri, 12 Jul 2019 21:41:10 +0000 (23:41 +0200)]
gnu: python-aiorpcx: capitalize description

* gnu/packages/python-web.scm (python-aiorpcx): capitalize description

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4 years agognu: python-aiohttp: Update to 3.5.4
Arne Babenhauserheide [Fri, 12 Jul 2019 21:33:48 +0000 (23:33 +0200)]
gnu: python-aiohttp: Update to 3.5.4

* gnu/packages/python-web.scm (python-aiohttp): Update to 3.5.4.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4 years agognu: python-aiorpcx: Update to 0.18.3
Arne Babenhauserheide [Fri, 12 Jul 2019 21:33:47 +0000 (23:33 +0200)]
gnu: python-aiorpcx: Update to 0.18.3

* gnu/packages/python-web.scm (python-aiorpcx): Update to 0.18.3

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4 years agodoc: Build a top-level index of the manuals.
Ludovic Courtès [Mon, 15 Jul 2019 10:33:07 +0000 (12:33 +0200)]
doc: Build a top-level index of the manuals.

Suggested by Julien Lepiller.

* doc/build.scm (html-manual-indexes)[build]: Add 'with-extensions'.
(translate): Actually honor DOMAIN.  Add call to 'bindtextdomain' for
ISO-CODES.
(%iso639-languages): New variable.
(language-code->name, top-level-index): New procedures.
Add call to 'write-html' for OUTPUT/index.html.

4 years agodoc: Generalize build procedures of HTML indexes.
Ludovic Courtès [Mon, 15 Jul 2019 09:51:43 +0000 (11:51 +0200)]
doc: Generalize build procedures of HTML indexes.

* doc/build.scm (html-manual-indexes)[build](sxml-index): Generalize;
add a 'title' and a 'body' parameter and honor them.
(language-index): New procedure.
(write-index): Remove.
(write-html): New procedure.
Use 'write-html' and 'language-index'.

4 years agognu: monero: Make tests more verbose.
Guillaume Le Vaillant [Sun, 14 Jul 2019 15:37:19 +0000 (17:37 +0200)]
gnu: monero: Make tests more verbose.

Increase the verbosity of the 'check' phase to prevent 'core_tests' from
hitting 'max-silent-timeout'.

* gnu/packages/finance.scm (monero)[arguments]: Add '--verbose' option to
  'check' phase.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4 years agognu: Add python-ont-fast5-api.
Ricardo Wurmus [Mon, 15 Jul 2019 10:13:42 +0000 (12:13 +0200)]
gnu: Add python-ont-fast5-api.

* gnu/packages/bioinformatics.scm (python-ont-fast5-api): New variable.

4 years agognu: Add python-progressbar33.
Ricardo Wurmus [Mon, 15 Jul 2019 10:13:34 +0000 (12:13 +0200)]
gnu: Add python-progressbar33.

* gnu/packages/python-xyz.scm (python-progressbar33): New variable.

4 years agognu: rkflashtool: Update to 5.2-1.8966c4e.
Efraim Flashner [Mon, 15 Jul 2019 09:10:08 +0000 (12:10 +0300)]
gnu: rkflashtool: Update to 5.2-1.8966c4e.

* gnu/packages/flashing-tools.scm (rkflashtool): Update to 5.2-1.8966c4e.
[version]: Use 'git-version'.
[source]: Use 'git-file-name'.

4 years agochannels: Avoid use of 'derivation-input-path'.
Ludovic Courtès [Wed, 10 Jul 2019 16:51:56 +0000 (18:51 +0200)]
channels: Avoid use of 'derivation-input-path'.

* guix/channels.scm (old-style-guix?): Use 'derivation-name' rather than
'derivation-input-path'.

4 years agogexp: 'lowered-gexp-guile' now returns a <derivation-input>.
Ludovic Courtès [Wed, 10 Jul 2019 16:39:25 +0000 (18:39 +0200)]
gexp: 'lowered-gexp-guile' now returns a <derivation-input>.

* guix/derivations.scm (derivation-input-output-path): New procedure.
* guix/gexp.scm (lower-gexp): Wrap GUILE in a <derivation-input>.
(gexp->derivation): Adjust accordingly.
* guix/remote.scm (remote-pipe-for-gexp, remote-eval): Adjust
accordingly.
* tests/gexp.scm ("lower-gexp"): Adjust accordingly.

4 years agoderivations: Deprecate the previous calling convention.
Ludovic Courtès [Wed, 10 Jul 2019 16:18:19 +0000 (18:18 +0200)]
derivations: Deprecate the previous calling convention.

We will eventually require #:inputs to be a list of <derivation-input>;
store items will have to be passed as #:sources, already interned.

* guix/derivations.scm (warn-about-derivation-deprecation): New procedure.
(derivation): Add #:%deprecation-warning? parameter.
[warn-deprecation]: New macro.
[input->derivation-input, input->source]: Use it.
(build-expression->derivation): Pass #:%deprecation-warning?.
* po/guix/POTFILES.in: Add guix/derivations.scm.

4 years agoderivations: Update tests to use new calling convention.
Ludovic Courtès [Wed, 10 Jul 2019 16:14:47 +0000 (18:14 +0200)]
derivations: Update tests to use new calling convention.

* tests/derivations.scm ("build derivation with 1 source"): Adjust to
new 'derivation' calling convention.
("identical files are deduplicated"): Likewise.
("fixed-output-derivation?"): Likewise.
("fixed-output derivation"): Likewise.
("fixed-output derivation, recursive"): Likewise.
("derivation with a fixed-output input"): Likewise.
("multiple-output derivation"): Likewise.
("multiple-output derivation, non-alphabetic order"): Likewise.
("read-derivation vs. derivation"): Likewise.
("user of multiple-output derivation"): Likewise.
("derivation with #:references-graphs"): Likewise.
("derivation #:allowed-references, ok"): Likewise.
("derivation #:allowed-references, not allowed"): Likewise.
("derivation #:allowed-references, self allowed"): Likewise.
("derivation #:allowed-references, self not allowed"): Likewise.
("derivation #:disallowed-references, ok"): Likewise.
("derivation #:disallowed-references, not ok"): Likewise.
("derivation #:leaked-env-vars"): Likewise.
("build derivation with coreutils"): Likewise.
("map-derivation, sources"): Likewise.
("derivation with local file as input"): Remove.

4 years agoderivations: 'map-derivation' uses the new 'derivation' calling convention.
Ludovic Courtès [Tue, 9 Jul 2019 21:51:44 +0000 (23:51 +0200)]
derivations: 'map-derivation' uses the new 'derivation' calling convention.

* guix/derivations.scm (map-derivation)[input->output-paths]: Adjust to
deal with an argument that's either 'derivation-input?' or a string.
[rewritten-input]: Return a <derivation-input> or a string.
Pass #:inputs and #:sources to 'derivation'.

4 years agodownload: Use the new 'derivation' calling convention.
Ludovic Courtès [Tue, 9 Jul 2019 21:22:48 +0000 (23:22 +0200)]
download: Use the new 'derivation' calling convention.

* guix/download.scm (built-in-download): Pass MIRRORS and
CONTENT-ADDRESSED-MIRRORS as #:sources, not #:inputs.

4 years agognu: guile-bootstrap: Use the new 'derivation' calling convention.
Ludovic Courtès [Tue, 9 Jul 2019 21:21:20 +0000 (23:21 +0200)]
gnu: guile-bootstrap: Use the new 'derivation' calling convention.

* gnu/packages/bootstrap.scm (raw-build): In 'derivation' call,
distinguish #:inputs from #:sources, passing a list of
<derivation-input> as #:inputs.

4 years agogexp: <lowered-gexp> separates sources from derivation inputs.
Ludovic Courtès [Tue, 9 Jul 2019 21:05:01 +0000 (23:05 +0200)]
gexp: <lowered-gexp> separates sources from derivation inputs.

* guix/gexp.scm (lower-inputs): Return either <derivation-input> records
or store items.
(lower-reference-graphs): Return file/input pairs.
(<lowered-gexp>)[sources]: New field.
(lower-gexp): Adjust accordingly.
(gexp->input-tuple): Remove.
(gexp->derivation)[graphs-file-names]: Handle only the
'derivation-input?' and 'string?' cases.
Pass #:sources to 'raw-derivation'; ensure #:inputs contains only
<derivation-input> records.
* guix/remote.scm (remote-eval): Adjust to the new <lowered-gexp>
interface.
* tests/gexp.scm ("lower-gexp"): Adjust to expect <derivation-input>
records instead of <gexp-input>

4 years agoderivations: 'derivation' primitive accepts <derivation> and #:sources.
Ludovic Courtès [Mon, 8 Jul 2019 16:39:20 +0000 (18:39 +0200)]
derivations: 'derivation' primitive accepts <derivation> and #:sources.

This brings us closer to the <derivation> data type.

* guix/derivations.scm (derivation): Add #:sources parameter.
[input->derivation-input]: Add clause for 'derivation-input?'.
Honor SOURCES.

4 years agosyscalls: Use 'define-as-needed' for 'AT_' constants introduced in Guile 2.2.5.
Ludovic Courtès [Mon, 15 Jul 2019 07:56:27 +0000 (09:56 +0200)]
syscalls: Use 'define-as-needed' for 'AT_' constants introduced in Guile 2.2.5.

* guix/build/syscalls.scm (AT_FDCWD, AT_SYMLINK_NOFOLLOW, AT_REMOVEDIR)
(AT_SYMLINK_FOLLOW, AT_NO_AUTOMOUNT, AT_EMPTY_PATH): Define using
'define-as-needed'.

4 years agocompile: Report the name of the file that cannot be compiled.
Ludovic Courtès [Sun, 14 Jul 2019 15:07:09 +0000 (17:07 +0200)]
compile: Report the name of the file that cannot be compiled.

Fixes <https://bugs.gnu.org/36640>.
Reported by Robert Vollmert <rob@vllmrt.net>.

* guix/build/compile.scm (call/exit-on-exception): Add 'file' parameter
and honor it.
(exit-on-exception): Likewise.
(compile-files): Pass FILE to 'exit-on-exception'.

4 years agognu: linux-libre: Fix build on aarch64.
Pierre Langlois [Sun, 14 Jul 2019 11:47:06 +0000 (12:47 +0100)]
gnu: linux-libre: Fix build on aarch64.

* gnu/packages/linux.scm (make-linux-libre)[arguments]: Remove
'work-around-gcc-7-include-path-issue phase.

4 years agognu: linux-libre: Update to 5.2.
Mark H Weaver [Mon, 8 Jul 2019 05:44:09 +0000 (01:44 -0400)]
gnu: linux-libre: Update to 5.2.

* gnu/packages/linux.scm (%linux-libre-version): Update to 5.2.
(%linux-libre-hash): Update hash.
* linux-libre-5.1: Rename to ...
* linux-libre-5.2: ... this.  Use %linux-libre-5.2-patches.
* linux-libre: Switch to linux-libre-5.2.
* linux-libre-arm-veyron, linux-libre-arm-generic, linux-libre-arm-omap2plus:
Use %linux-libre-5.2-patches.
* linux-libre-headers-5.1: Rename to ...
* linux-libre-headers-5.2: ... this.
* %linux-libre-5.1-patches: Rename to ...
* %linux-libre-5.2-patches: ... this.
* gnu/packages/aux-files/linux-libre/5.1-arm-veyron.conf,
gnu/packages/aux-files/linux-libre/5.1-arm.conf,
gnu/packages/aux-files/linux-libre/5.1-arm64.conf,
gnu/packages/aux-files/linux-libre/5.1-i686.conf,
gnu/packages/aux-files/linux-libre/5.1-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/5.2-arm-veyron.conf,
gnu/packages/aux-files/linux-libre/5.2-arm.conf,
gnu/packages/aux-files/linux-libre/5.2-arm64.conf,
gnu/packages/aux-files/linux-libre/5.2-i686.conf,
gnu/packages/aux-files/linux-libre/5.2-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Update accordingly.

4 years agoRevert "guix: node-build-system: Use guile-json instead of a custom parser."
Julien Lepiller [Sun, 14 Jul 2019 18:16:19 +0000 (20:16 +0200)]
Revert "guix: node-build-system: Use guile-json instead of a custom parser."

The effect of this change was to import the (json parser) from the host
side into the build side. The solution here would be to do the equivalent
of ‘with-extensions’ for gexps. Since we don't use gexps for build
systems just yet, revert this for now.

This reverts commit 8eb0ba532ebbebef23180e666e0607ea735f9c1a.