Merge branch 'master' into core-updates
list-packages: Expand 'mirror://' URIs for patches.
* build-aux/list-packages.scm (package->sxml)[patches](patch-url): Use
'maybe-expand-mirrors' to get the real URL.
download: Export 'maybe-expand-mirrors'.
* guix/build/download.scm (uri-vicinity, maybe-expand-mirrors): New
procedures.
(url-fetch): Remove them from here.
tests: Make the 'lint' tests slightly more concise.
* tests/lint.scm (with-warnings): New macro.
Replace all uses of 'call-with-warnings' with the corresponding
'with-warnings' form.
tests: Factorize the 'dummy-package' macro.
* guix/tests.scm (dummy-package): New macro.
* tests/lint.scm (dummy-package): Remove.
* tests/packages.scm (dummy-package): Remove.
lint: Add tests for the 'home-page' checker.
Suggested by Cyril Roelandt <tipecaml@gmail.com>.
* tests/lint.scm (%http-server-port, %http-server-socket, %local-url,
stub-http-server): New variables.
(http-write, call-with-http-server): New procedures.
(with-http-server): New macro.
("home-page: wrong home-page", "home-page: invalid URI", "home-page:
host not found", "home-page: Connection refused", "home-page: 200",
"home-page: 404"): New tests.
* guix/scripts/lint.scm (check-home-page): Export.
gnu: Fix misuses of 'x11-style' licenses.
* gnu/packages/xorg.scm (libevdev)[license]: Actually call
'license:x11-style'.
(libxshmfence): Likewise.
gnu: Don't use --strip-all in cases where this is problematic.
This is a followup to 856ae5e. See <http://hydra.gnu.org/build/180506>
for an example of build failure.
* guix/build/gnu-build-system.scm (strip): Add #:archive-strip-flags
parameter. Use it when (ar-file? path).
* guix/build-system/gnu.scm (gnu-build): Add #:archive-strip-flags
parameter and pass it down.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Add
#:strip-flags.
* gnu/packages/base.scm (glibc)[arguments]: Likewise.
lint: Report on the package being checked.
* guix/scripts/lint.scm (run-checkers): Check
whether (current-error-port) is a tty, and print the package being
checked and the checker currently running when it is.
gnu: Fix or update a number of 'home-page' fields.
* gnu/packages/fltk.scm (fltk): Fix 'home-page'.
* gnu/packages/fonts.scm (font-bitstream-vera): Likewise, and fix
license URL.
* gnu/packages/games.scm (gnubg, cmatrix, chess): Fix 'home-page'.
* gnu/packages/kde.scm (attica): Likewise.
* gnu/packages/mail.scm (fetchmail): Likewise.
* gnu/packages/popt.scm (popt): Likewise.
* gnu/packages/python.scm (python-mock): Likewise.
* gnu/packages/stalonetray.scm (stalonetray): Likewise.
lint: Add 'home-page' checker.
* guix/build/download.scm (open-connection-for-uri): Export.
* guix/scripts/lint.scm (probe-uri, check-home-page): New procedures.
(%checkers): Add 'home-page' checker.
gnu: libxml2: Add search path specification.
* gnu/packages/xml.scm (libxml2)[native-search-paths, search-paths]: New
fields.
* gnu/packages/gnome.scm (gnome-doc-utils)[arguments]: Remove.
* gnu/packages/gps.scm (gpscorrelate)[arguments]: Remove settings for
'XML_CATALOG_FILES' from 'configure' phase.
* gnu/packages/web.scm (tinyproxy)[arguments]: Likewise.
guix package: Use 'search-path-as-list' instead of custom code.
This will handle the new 'file-type' and 'file-pattern' fields correctly.
* guix/scripts/package.scm (search-path-environment-variables)[search-path-definition]:
Rewrite in terms of 'search-path-as-list'.
utils: Export 'search-path-as-list'.
* guix/build/utils.scm (search-path-as-list): Make public.
* guix/scripts/environment.scm (for-each-search-path): Use it.
packages: Add 'file-pattern' field to 'search-path-specification'.
* guix/packages.scm (<search-path-specification>)[file-pattern]: New
field.
(search-path-specification->sexp): Honor it.
build-support/gnu: Add support for file patterns in search paths.
* guix/build/utils.scm (search-path-as-list): Add #:pattern parameter
and honor it.
(set-path-environment-variable): Likewise, and pass it to
'search-path-as-list'.
* guix/packages.scm (search-path-specification->sexp): Add PATTERN slot.
* guix/build/gnu-build-system.scm (set-paths): Adjust accordingly.
packages: Add 'file-type' field to 'search-path-specification'.
Fixes <http://bugs.gnu.org/18033>.
* guix/packages.scm (<search-path-specification>): Rename 'directories'
field to 'files'. Add 'file-type'.
(search-path-specification->sexp): Honor 'file-type'.
* gnu/packages/autotools.scm, gnu/packages/bootstrap.scm,
gnu/packages/cross-base.scm, gnu/packages/games.scm,
gnu/packages/gcc.scm, gnu/packages/glib.scm,
gnu/packages/guile.scm, gnu/packages/man.scm,
gnu/packages/perl.scm, gnu/packages/pkg-config.scm,
gnu/packages/python.scm, gnu/packages/ruby.scm,
gnu/packages/xfce.scm: Change 'directories' to 'files'.
* tests/packages.scm ("search paths"): Change 'directories' field to
'files'.
* guix/scripts/environment.scm (for-each-search-path): Likewise.
build-system/gnu: Strip with '--strip-all' instead of '--strip-debug'.
This saves 19% on the 'bin' directory of Coreutils, and certainly
helpful for things like Git's 'libexec' directory.
* guix/build-system/gnu.scm (gnu-build): Change default value for
#:strip-flags to '("--strip-all").
* guix/build/gnu-build-system.scm (strip): Ditto.
* gnu/packages/linux.scm (linux-libre)[arguments]: Add #:strip-flags.
Merge branch 'xorg-updates'