Commit Graph

27831 Commits

Author SHA1 Message Date
Ludovic Courtès 6c80641d54
memoization: Profiling support keeps track of lookups and hits.
* guix/memoization.scm (<cache>): New record type.
(define-lookup-procedure, define-update-procedure): New macros.
(cache-ref, cacheq-ref, cache-set!, cacheq-set!): New procedures.
(cached/mv, cachedq/mv, cached, cachedq): Use them instead of 'hash-ref'
and 'hash-set!'.
(%make-hash-table*): When 'profiled?' returns true, return a <cache>
object.
(define-cache-procedure): Adjust to show cache lookups and hits.
2017-12-12 18:11:22 +01:00
Ludovic Courtès 252c408377
memoization: Add profiling support.
* guix/memoization.scm (%memoization-tables): New variable.
(%make-hash-table*, show-memoization-tables): New procedures.
(make-hash-table*): New macro.
Add top-level call to 'register-profiling-hook!'.
(memoize): Adjust to pass the resulting procedure to
'make-hash-table*'.
(%mlambda): Likewise.
2017-12-12 18:11:22 +01:00
Ludovic Courtès 03870da819
Add (guix profiling).
* guix/profiling.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/store.scm (record-operation): Use 'profiled?' and
'register-profiling-hook!'.
2017-12-12 18:11:22 +01:00
Tobias Geerinckx-Rice 6e119bad60
gnu: xfig, transfig: Update home pages.
* gnu/packages/xfig.scm (xfig, transfig)[home-page]: Use SourceForge.net.
2017-12-12 05:12:14 +01:00
Tobias Geerinckx-Rice cc3ac162c5
gnu: Add uthash.
* gnu/packages/datastructures.scm (uthash): New public variable.
2017-12-12 05:12:13 +01:00
Tobias Geerinckx-Rice 8d8d227bbb
gnu: Add fbcat.
* gnu/packages/linux.scm (fbcat): New public variable.
2017-12-12 05:12:13 +01:00
Tobias Geerinckx-Rice c1c8258443
gnu: Add snapscreenshot.
* gnu/packages/linux.scm (snapscreenshot): New public variable.
2017-12-12 05:12:13 +01:00
Mark H Weaver 111841c33e
gnu: linux-libre: Update to 4.14.5.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.14.5.
(%linux-libre-hash): Update hash.
2017-12-11 19:22:47 -05:00
Mark H Weaver 7dd51f2dd0
gnu: linux-libre@4.9: Update to 4.9.68.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.68.
2017-12-11 19:22:12 -05:00
Mark H Weaver 3bbc6fae15
gnu: linux-libre@4.4: Update to 4.4.105.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.105.
2017-12-11 19:21:35 -05:00
Marius Bakke eb6263f215
gnu: whois: Update to 5.2.19.
* gnu/packages/networking.scm (whois): Update to 5.2.19.
[arguments]: Don't set HAVE_LIBIDN in 'setenv' phase; this is now autodetected.
[native-inputs]: Add PKG-CONFIG.
2017-12-12 01:08:06 +01:00
Marius Bakke f419fe4ddb
gnu: Remove ffmpeg@3.3.
The reason this was required was because of a regression in ffmpeg 3.4; see
<https://trac.ffmpeg.org/ticket/6775>.

* gnu/packages/gstreamer.scm (gst-libav)[inputs]: Change FFMPEG-3.3 to FFMPEG.
* gnu/packages/video.scm (ffmpeg-3.3): Remove variable.
2017-12-12 01:08:06 +01:00
Marius Bakke 7f7419b56f
gnu: ffmpeg: Update to 3.4.1.
* gnu/packages/video.scm (ffmpeg): Update to 3.4.1.
2017-12-12 00:50:58 +01:00
Oleg Pykhalov adedbe95d4
gnu: Add cli-visualizer.
* gnu/packages/audio.scm (cli-visualizer): New variable.
2017-12-12 00:08:38 +03:00
Christopher Baines 472368a8ac
services: web: Switch nginx related functions to use match-record.
As this is less prone to mistakes than match.

* gnu/services/web.scm (default-nginx-config, nginx-activation,
  nginx-shepherd-service): Switch from using match-lambda to match-record.
2017-12-11 20:57:41 +00:00
Christopher Baines 2881f85220
services: web: Add support for configuring the nginx server names hash.
The nginx service can fail to start if the server names hash bucket size is
too small, which can happen on some systems, and when using QEMU, depending on
the CPU.

* gnu/services/web.scm (<nginx-configuration>): Add
  server-names-hash-bucket-size and server-names-hash-bucket-max-size.
  (default-nginx-config): Add support for the new hash bucket size parameters.
  (nginx-service, nginx-activation): Pass the new hash bucket size parameters
  through to the default-nginx-config procedure.
* doc/guix.texi (Web Services): Document the new hash bucket size parameters.
2017-12-11 20:57:34 +00:00
Christopher Baines c48aa70a9a
services: web: Remove default certificate and key files for nginx.
If nginx is configured with a ssl-certificate file, and ssl-certificate-key,
it will fail to start unless these exist. To avoid this happening, change the
default to #f.

* gnu/services/web.scm (<nginx-server-configuration>)
  [ssl-certificate,ssl-certificate-key]: Set the defaults to #f.
* gnu/tests/web.scm (%nginx-servers): Remove redundant
  nginx-server-configuration fields.
* doc/guix.texi (Web Services): Update examples and documentation.
2017-12-11 20:36:43 +00:00
Christopher Baines b7db2c63ed
web: Don't error about missing ssl related files.
Erroring here prevents doing things like building a system using nginx on a
different machine from where it's intended to be deployed, or creating
containers and VMs that use the ssl-certificate parts of the nginx
configuration, without also getting these files to exist.

* gnu/services/web.scm (emit-nginx-server-config): Don't error on missing ssl
  related files.
2017-12-11 20:36:35 +00:00
Efraim Flashner 0d57068333
gnu: cargo: Add file-name field to input sources.
* gnu/packages/rust.scm (cargo)[inputs]: Add 'file-name' field to all
source inputs.
2017-12-11 21:21:46 +02:00
Efraim Flashner e85d681cbf
gnu: rust: Add support for all platforms.
* gnu/packages/rust.scm (%rust-bootstrap-binaries): Add entries for all
platforms supported by Guix.
(rustc-bootstrap, cargo-bootstrap)[supported-systems]: Remove field.
2017-12-11 21:21:45 +02:00
Efraim Flashner fd3ddefa1f
gnu: %rust-bootstrap-binaries: Add missing catch-all entry.
* gnu/packages/rust.scm (%rust-bootstrap-binaries): Add missing
catch-all entry to prevent various errors in Guix.
2017-12-11 21:21:41 +02:00
Christopher Baines 9cf5f134d5
gnu: Switch to using the version-major procedure.
* gnu/packages/audio.scm (ardour)[arguments]: Switch to using version-major.
  (hmmer)[source]: Switch to using version-major.
  (pidgin)[native-search-paths]: Switch to using version-major.
  (r-minimal)[source]: Switch to using version-major.
2017-12-11 19:12:33 +00:00
nee 47dc9a0dae
guix: utils: Add version-major.
* guix/utils.scm (version-major): New procedure.
2017-12-11 19:12:23 +00:00
Arun Isaac 1e52fd83c2
gnu: Add afew.
* gnu/packages/mail.scm (afew): New variable.
2017-12-12 00:03:48 +05:30
Maxim Cournoyer 42e891c27b
gnu: Add emacs-diff-hl.
* gnu/packages/emacs.scm (emacs-diff-hl): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-12-11 17:14:36 +01:00
Z. Ren 73138fd146
gnu: skalibs: Fix non-reproducibility issue.
* gnu/packages/skarnet.scm (skalibs)[arguments]: In 'reproducible'
phase, insert a 'sort' call in "Makefile".

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-12-11 17:14:36 +01:00
Maxim Cournoyer cdba3a8469
gnu: Add emacs-string-inflection.
* gnu/packages/emacs.scm (emacs-string-inflection): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-12-11 17:14:36 +01:00
Maxim Cournoyer fbc60db895
gnu: Add emacs-grep-a-lot.
* gnu/packages/emacs.scm (emacs-grep-a-lot): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-12-11 17:14:36 +01:00
Maxim Cournoyer 9faa46ee48
gnu: Add emacs-csv-mode.
* gnu/packages/emacs.scm (emacs-csv-mode): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-12-11 17:14:35 +01:00
Maxim Cournoyer 397d7980b7
gnu: Add emacs-ws-butler.
* gnu/packages/emacs.scm (emacs-ws-butler): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-12-11 17:14:35 +01:00
ng0 b0a2dc7245
gnu: Add i3lock-fancy.
* gnu/packages/wm.scm (i3lock-fancy): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-12-11 17:14:35 +01:00
ng0 4b563b3472
gnu: Add i3lock-color.
* gnu/packages/wm.scm (i3lock-color): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-12-11 17:14:35 +01:00
Oleg Pykhalov ca3c1439e1
gnu: Add gource.
* gnu/packages/version-control.scm (gource): New variable.
2017-12-11 18:19:44 +03:00
Mark Meyer 8be84d31ea
gnu: darktable: Add configure option 2017-12-11 11:16:23 +01:00
Efraim Flashner 16a7a74561
Revert "gnu: libinput: Update to 1.9.3."
This reverts commit 5f5083749c.

Ninja FTBFS on armhf-linux and thus cannot build libinput.
2017-12-11 11:40:52 +02:00
Eric Bavier aa5c206348
gnu: jemalloc: Fix tests for aarch64.
* gnu/packages/patches/jemalloc-arm-address-bits.patch: New patch.
* gnu/packages/jemalloc.scm (jemalloc)[source]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-12-10 16:04:16 -06:00
Eric Bavier 7f04197fef
utils: Fix cond-expand for Guile 2.0.
* guix/build/download.scm (tls-wrap): Use 'guile-2.2' feature instead.
2017-12-10 15:58:55 -06:00
Nikolai Merinov d53fb678a7
gnu: rust: Update rust to 1.22.1 and cargo to 1.23.0.
* gnu/packages/rust.scm (%rust-bootstrap-binaries-version): Update version.
(%rust-bootstrap-binaries): Use x86_64 rust bootstrap package for x86_64 build.
(%cargo-reference-project-file): Use specific file as "project" file when
patching rust vendored sources.
(%cargo-reference-hash): sha256 sum for %cargo-reference-project-file.
(rustc-bootstrap): Use bootstrap package with host architecture.
(cargo-bootstrap): Use bootstrap package with host architecture.
(rustc): Add new test dependency, fix build issues, use "./x.py" script for
build instead of "./configure".
(cargo): Update dependencies, patch shebangs for vendored sources
* gnu/packages/jemalloc.scm: Add jemalloc-4.5.0 release.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-12-11 00:05:30 +01:00
Ludovic Courtès 3b80b81358
ui: Display hints to resolve profile collisions.
Fixes <https://bugs.gnu.org/29255>.
Reported by Ben Sturmfels <ben@sturm.com.au>.

* guix/ui.scm (display-collision-resolution-hint): New procedure.
(call-with-error-handling): Call it upon '&profile-collistion-error'.
2017-12-10 23:44:58 +01:00
Ludovic Courtès 8bc1935c7c
build-system/asdf: Use 'mlambda'.
* guix/build-system/asdf.scm (package-with-build-system): Use 'mlambda'
instead of 'memoize'.
2017-12-10 23:44:58 +01:00
Tobias Geerinckx-Rice 6146603d54
gnu: youtube-dl: Update to 2017.12.10.
* gnu/packages/video.scm (youtube-dl): Update to 2017.12.10.
2017-12-10 22:19:05 +01:00
Efraim Flashner 9c2d2c13ce
gnu: t1lib: Change how patched CVEs are listed.
* gnu/packages/fontutils.scm (t1lib)[source]: Change patch name.
[properties]: New field, register patched CVEs.
* gnu/packages/patches/CVE-2011-1552+CVE-2011-1553+CVE-2011-1554.patch:
Rename to CVE-2011-1552+.patch.
* gnu/local.mk (dist_patch_DATA): Change patch name.
2017-12-10 21:59:08 +02:00
Efraim Flashner f4007b2547
lint: 'check-vulnerabilities' also checks package properties.
* guix/scripts/lint.scm (check-vulnerabilities): Also check for CVEs
listed as mitigated in the package properties.
* tests/lint.scm ("cve: known safe from vulnerability"): New test.
2017-12-10 21:59:07 +02:00
Alex Kost 308b8f79c5
gnu: emacs-smartparens: Update to 1.11.0.
* gnu/packages/emacs.scm (emacs-smartparens): Update to 1.11.0.
2017-12-10 22:38:43 +03:00
Alex Kost 6d21272b22
gnu: git-modes: Rename to 'emacs-git-modes'.
* gnu/packages/emacs.scm (git-modes)[name]: Change to "emacs-git-modes".
(git-modes/old-name): New variable.
2017-12-10 22:38:43 +03:00
Marius Bakke 0f4ab4a59f
gnu: graphicsmagick: Update to 1.3.27.
* gnu/packages/patches/graphicsmagick-CVE-2017-11403+CVE-2017-14103.patch,
gnu/packages/patches/graphicsmagick-CVE-2017-12935.patch,
gnu/packages/patches/graphicsmagick-CVE-2017-12936.patch,
gnu/packages/patches/graphicsmagick-CVE-2017-12937.patch,
gnu/packages/patches/graphicsmagick-CVE-2017-13775.patch,
gnu/packages/patches/graphicsmagick-CVE-2017-13776+CVE-2017-13777.patch,
gnu/packages/patches/graphicsmagick-CVE-2017-14042.patch,
gnu/packages/patches/graphicsmagick-CVE-2017-14165.patch,
gnu/packages/patches/graphicsmagick-CVE-2017-14649.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
* gnu/packages/imagemagick.scm (graphicsmagick): Update to 1.3.27.
[source](patches): Remove.
2017-12-10 19:15:44 +01:00
Marius Bakke 4cb7794115
gnu: gstreamer: Update to 1.12.4.
* gnu/packages/gstreamer.scm (gstreamer, gst-plugins-base, gst-plugins-good,
gst-plugins-ugly, gst-libav, python-gst): Update to 1.12.4.
(gst-plugins-bad): Likewise.
[arguments]: Remove #:phases.
2017-12-10 16:15:23 +01:00
Marius Bakke 831db64fe3
gnu: notmuch: Update to 0.25.3.
* gnu/packages/mail.scm (notmuch): Update to 0.25.3.
2017-12-10 15:56:57 +01:00
Marius Bakke 73b3eaf047
gnu: xapian: Update to 1.4.5.
* gnu/packages/search.scm (xapian, python-xapian-bindings): Update to 1.4.5.
2017-12-10 15:56:44 +01:00
Efraim Flashner 316fd29f9b
gnu: picprog: Fix non-Intel support.
* gnu/packages/patches/picprog-non-intel-support.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/embedded.scm (picprog)[source]: Add patch.
[arguments]: Skip building the 'testport' binary.
2017-12-10 12:38:48 +02:00