Merge branch 'master' into core-updates

This merge commit includes a fix for CVE-2017-6512 in Perl 5.26.0.
This commit is contained in:
Leo Famulari 2017-06-07 12:11:24 -04:00
commit c67d587f94
No known key found for this signature in database
GPG Key ID: 2646FA30BACA7F08
50 changed files with 1680 additions and 409 deletions

View File

@ -5329,7 +5329,7 @@ a container similar to the one the build daemon creates:
$ guix build -K foo $ guix build -K foo
@dots{} @dots{}
$ cd /tmp/guix-build-foo.drv-0 $ cd /tmp/guix-build-foo.drv-0
$ guix environment -C foo --ad-hoc strace gdb $ guix environment --no-grafts -C foo --ad-hoc strace gdb
[env]# source ./environment-variables [env]# source ./environment-variables
[env]# cd foo-1.2 [env]# cd foo-1.2
@end example @end example
@ -5337,7 +5337,10 @@ $ guix environment -C foo --ad-hoc strace gdb
Here, @command{guix environment -C} creates a container and spawns a new Here, @command{guix environment -C} creates a container and spawns a new
shell in it (@pxref{Invoking guix environment}). The @command{--ad-hoc shell in it (@pxref{Invoking guix environment}). The @command{--ad-hoc
strace gdb} part adds the @command{strace} and @command{gdb} commands to strace gdb} part adds the @command{strace} and @command{gdb} commands to
the container, which would may find handy while debugging. the container, which would may find handy while debugging. The
@option{--no-grafts} option makes sure we get the exact same
environment, with ungrafted packages (@pxref{Security Updates}, for more
info on grafts).
To get closer to a container like that used by the build daemon, we can To get closer to a container like that used by the build daemon, we can
remove @file{/bin/sh}: remove @file{/bin/sh}:
@ -9260,6 +9263,12 @@ Whether to use substitutes.
@item @code{substitute-urls} (default: @var{%default-substitute-urls}) @item @code{substitute-urls} (default: @var{%default-substitute-urls})
The list of URLs where to look for substitutes by default. The list of URLs where to look for substitutes by default.
@item @code{max-silent-time} (default: @code{0})
@itemx @code{timeout} (default: @code{0})
The number of seconds of silence and the number of seconds of activity,
respectively, after which a build process times out. A value of zero
disables the timeout.
@item @code{extra-options} (default: @code{'()}) @item @code{extra-options} (default: @code{'()})
List of extra command-line options for @command{guix-daemon}. List of extra command-line options for @command{guix-daemon}.

View File

@ -268,12 +268,18 @@ as a bytevector, or #f if DEVICE does not contain an iso9660 file system."
(define (iso9660-superblock-uuid sblock) (define (iso9660-superblock-uuid sblock)
"Return the modification time of an iso9660 primary volume descriptor "Return the modification time of an iso9660 primary volume descriptor
SBLOCK as a bytevector." SBLOCK as a bytevector. If that's not set, returns the creation time."
;; Drops GMT offset for compatibility with Grub, blkid and /dev/disk/by-uuid. ;; Drops GMT offset for compatibility with Grub, blkid and /dev/disk/by-uuid.
;; Compare Grub: "2014-12-02-19-30-23-00". ;; Compare Grub: "2014-12-02-19-30-23-00".
;; Compare blkid result: "2014-12-02-19-30-23-00". ;; Compare blkid result: "2014-12-02-19-30-23-00".
;; Compare /dev/disk/by-uuid entry: "2014-12-02-19-30-23-00". ;; Compare /dev/disk/by-uuid entry: "2014-12-02-19-30-23-00".
(sub-bytevector sblock 830 16)) (let* ((creation-time (sub-bytevector sblock 813 17))
(modification-time (sub-bytevector sblock 830 17))
(unset-time (make-bytevector 17 0))
(time (if (bytevector=? unset-time modification-time)
creation-time
modification-time)))
(sub-bytevector time 0 16))) ; strips GMT offset.
(define (iso9660-uuid->string uuid) (define (iso9660-uuid->string uuid)
"Given an UUID bytevector, return its timestamp string." "Given an UUID bytevector, return its timestamp string."

View File

@ -208,6 +208,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/irc.scm \ %D%/packages/irc.scm \
%D%/packages/iso-codes.scm \ %D%/packages/iso-codes.scm \
%D%/packages/java.scm \ %D%/packages/java.scm \
%D%/packages/javascript.scm \
%D%/packages/jemalloc.scm \ %D%/packages/jemalloc.scm \
%D%/packages/jrnl.scm \ %D%/packages/jrnl.scm \
%D%/packages/julia.scm \ %D%/packages/julia.scm \
@ -631,7 +632,6 @@ dist_patch_DATA = \
%D%/packages/patches/glog-gcc-5-demangling.patch \ %D%/packages/patches/glog-gcc-5-demangling.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \ %D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \ %D%/packages/patches/gmp-faulty-test.patch \
%D%/packages/patches/gnome-shell-CVE-2017-8288.patch \
%D%/packages/patches/gnome-tweak-tool-search-paths.patch \ %D%/packages/patches/gnome-tweak-tool-search-paths.patch \
%D%/packages/patches/gnucash-price-quotes-perl.patch \ %D%/packages/patches/gnucash-price-quotes-perl.patch \
%D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \ %D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \
@ -724,6 +724,8 @@ dist_patch_DATA = \
%D%/packages/patches/libevent-2.1-skip-failing-test.patch \ %D%/packages/patches/libevent-2.1-skip-failing-test.patch \
%D%/packages/patches/libextractor-ffmpeg-3.patch \ %D%/packages/patches/libextractor-ffmpeg-3.patch \
%D%/packages/patches/libgit2-0.25.1-mtime-0.patch \ %D%/packages/patches/libgit2-0.25.1-mtime-0.patch \
%D%/packages/patches/libgdata-fix-tests.patch \
%D%/packages/patches/libgdata-glib-duplicate-tests.patch \
%D%/packages/patches/libgit2-use-after-free.patch \ %D%/packages/patches/libgit2-use-after-free.patch \
%D%/packages/patches/libffi-3.2.1-complex-alpha.patch \ %D%/packages/patches/libffi-3.2.1-complex-alpha.patch \
%D%/packages/patches/libjxr-fix-function-signature.patch \ %D%/packages/patches/libjxr-fix-function-signature.patch \
@ -738,6 +740,7 @@ dist_patch_DATA = \
%D%/packages/patches/libsndfile-armhf-type-checks.patch \ %D%/packages/patches/libsndfile-armhf-type-checks.patch \
%D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \ %D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \
%D%/packages/patches/libsndfile-CVE-2017-8362.patch \ %D%/packages/patches/libsndfile-CVE-2017-8362.patch \
%D%/packages/patches/libssh-hostname-parser-bug.patch \
%D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \ %D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \
%D%/packages/patches/libtar-CVE-2013-4420.patch \ %D%/packages/patches/libtar-CVE-2013-4420.patch \
%D%/packages/patches/libtheora-config-guess.patch \ %D%/packages/patches/libtheora-config-guess.patch \
@ -840,6 +843,7 @@ dist_patch_DATA = \
%D%/packages/patches/ocaml-findlib-make-install.patch \ %D%/packages/patches/ocaml-findlib-make-install.patch \
%D%/packages/patches/omake-fix-non-determinism.patch \ %D%/packages/patches/omake-fix-non-determinism.patch \
%D%/packages/patches/ola-readdir-r.patch \ %D%/packages/patches/ola-readdir-r.patch \
%D%/packages/patches/openscenegraph-ffmpeg3.patch \
%D%/packages/patches/openexr-missing-samples.patch \ %D%/packages/patches/openexr-missing-samples.patch \
%D%/packages/patches/openjpeg-CVE-2016-9850-CVE-2016-9851.patch \ %D%/packages/patches/openjpeg-CVE-2016-9850-CVE-2016-9851.patch \
%D%/packages/patches/openjpeg-CVE-2016-9572-CVE-2016-9573.patch \ %D%/packages/patches/openjpeg-CVE-2016-9572-CVE-2016-9573.patch \
@ -859,6 +863,7 @@ dist_patch_DATA = \
%D%/packages/patches/pcre-CVE-2017-7186.patch \ %D%/packages/patches/pcre-CVE-2017-7186.patch \
%D%/packages/patches/pcre2-CVE-2017-7186.patch \ %D%/packages/patches/pcre2-CVE-2017-7186.patch \
%D%/packages/patches/pcre2-CVE-2017-8786.patch \ %D%/packages/patches/pcre2-CVE-2017-8786.patch \
%D%/packages/patches/perl-file-path-CVE-2017-6512.patch \
%D%/packages/patches/perl-autosplit-default-time.patch \ %D%/packages/patches/perl-autosplit-default-time.patch \
%D%/packages/patches/perl-deterministic-ordering.patch \ %D%/packages/patches/perl-deterministic-ordering.patch \
%D%/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \ %D%/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \
@ -1041,7 +1046,6 @@ dist_patch_DATA = \
%D%/packages/patches/xcb-proto-python3-whitespace.patch \ %D%/packages/patches/xcb-proto-python3-whitespace.patch \
%D%/packages/patches/wxwidgets-fix-windowGTK.patch \ %D%/packages/patches/wxwidgets-fix-windowGTK.patch \
%D%/packages/patches/xdotool-fix-makefile.patch \ %D%/packages/patches/xdotool-fix-makefile.patch \
%D%/packages/patches/xf86-input-wacom-xorg-abi-25.patch \
%D%/packages/patches/xf86-video-ark-remove-mibstore.patch \ %D%/packages/patches/xf86-video-ark-remove-mibstore.patch \
%D%/packages/patches/xf86-video-ast-remove-mibstore.patch \ %D%/packages/patches/xf86-video-ast-remove-mibstore.patch \
%D%/packages/patches/xf86-video-geode-glibc-2.20.patch \ %D%/packages/patches/xf86-video-geode-glibc-2.20.patch \

View File

@ -93,14 +93,14 @@ highlighting your own code that seemed comprehensible when you wrote it.")
(define-public global ; a global variable (define-public global ; a global variable
(package (package
(name "global") (name "global")
(version "6.5.6") (version "6.5.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/global/global-" (uri (string-append "mirror://gnu/global/global-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"018m536k5y6lks1a6gqn3bsp7r8zk017znqj9kva1nm8d7x9lbqj")))) "0cnd7a7d1pl46yk15q6mnr9i9w3xi8pxgchw4ia9njgr4jjqzh6r"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses) (inputs `(("ncurses" ,ncurses)
("libltdl" ,libltdl) ("libltdl" ,libltdl)

View File

@ -80,7 +80,7 @@ communication, encryption, decryption, signatures, etc.")
(define-public signify (define-public signify
(package (package
(name "signify") (name "signify")
(version "20") (version "21")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/aperezdc/signify/" (uri (string-append "https://github.com/aperezdc/signify/"
@ -88,7 +88,7 @@ communication, encryption, decryption, signatures, etc.")
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"08my2kbbjdal9z6c1fykgr9zpixh694fw42lyiaci01a7i50zp4r")))) "0jd26kxwmmar3bylpx9x5dpqxzs17ky5dvwx8pdgcg95n4lyk223"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; TODO Build with libwaive (described in README.md), to implement something ;; TODO Build with libwaive (described in README.md), to implement something
;; like OpenBSD's pledge(). ;; like OpenBSD's pledge().

View File

@ -321,14 +321,14 @@ Extensions} (DNSSEC).")
(define-public knot (define-public knot
(package (package
(name "knot") (name "knot")
(version "2.4.3") (version "2.4.4")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://secure.nic.cz/files/knot-dns/" (uri (string-append "https://secure.nic.cz/files/knot-dns/"
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0kvhibnnk77nqi9gdw2zbnp0dydfcy6zy96qv0f3a7wwnay5h0pr")) "0g2n5r2n03bqz322xlwdw4bqhj8l4n8q0hzrqngi4rgmk4rp97ly"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin

View File

@ -3618,14 +3618,14 @@ passive voice.")
(define-public emacs-org (define-public emacs-org
(package (package
(name "emacs-org") (name "emacs-org")
(version "20170515") (version "20170606")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://elpa.gnu.org/packages/org-" (uri (string-append "http://elpa.gnu.org/packages/org-"
version ".tar")) version ".tar"))
(sha256 (sha256
(base32 (base32
"0lfapcxil69x1a63cszgq72lqks1z3gpyxw7vcllqlgi7n7a4y6f")))) "0m2gln3wz9v3aflyxxy2317808yy05rrzrjx35spw2d90d10hmkz"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "http://orgmode.org/") (home-page "http://orgmode.org/")
(synopsis "Outline-based notes management and organizer") (synopsis "Outline-based notes management and organizer")

View File

@ -19,6 +19,7 @@
;;; Copyright © 2017 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org> ;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -1227,3 +1228,42 @@ Ensuring readability and clarity at both large and small sizes, these icons
have been optimized for beautiful display on all common platforms and display have been optimized for beautiful display on all common platforms and display
resolutions.") resolutions.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public font-mathjax
(package
(name "font-mathjax")
(version "2.7.1")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/mathjax/MathJax/archive/"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0sbib5lk0jrvbq6s72ag6ss3wjlz5wnk07ddxij1kp96yg3c1d1b"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils)
(ice-9 match))
(set-path-environment-variable
"PATH" '("bin") (map (match-lambda
((_ . input)
input))
%build-inputs))
(let ((install-directory (string-append %output "/share/fonts/mathjax")))
(mkdir-p install-directory)
(zero? (system* "tar" "-C" install-directory "-xvf"
(assoc-ref %build-inputs "source")
"MathJax-2.7.1/fonts" "--strip" "2"))))))
(native-inputs
`(("gzip" ,gzip)
("tar" ,tar)))
(home-page "https://www.mathjax.org/")
(synopsis "Fonts for MathJax")
(description "This package contains the fonts required for MathJax.")
(license license:asl2.0)))

View File

@ -35,6 +35,7 @@
#:use-module (gnu packages acl) #:use-module (gnu packages acl)
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
@ -267,6 +268,46 @@ the org.freedesktop.login1 interface over the system bus, allowing other parts
of a the system to know what users are logged in, and where.") of a the system to know what users are logged in, and where.")
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
(define-public packagekit
(package
(name "packagekit")
(version "1.1.5")
(source (origin
(method url-fetch)
(uri (string-append
"https://www.freedesktop.org/software/"
"PackageKit/releases/"
"PackageKit-" version ".tar.xz"))
(sha256
(base32
"035pqxgkyki813hyw2frrbpfllq113zfk5qcp9wvsq5lsp74ix2h"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:make-flags (list (string-append "BASH_COMPLETIONS_DIR="
%output "/etc/bash_completion.d"))
#:configure-flags
'("--disable-systemd")))
(native-inputs
`(("intltool" ,intltool)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("glib:bin" ,glib "bin")))
(inputs
`(("glib" ,glib)
("bash-completion", bash-completion)
("polkit" ,polkit)))
(propagated-inputs
`(("sqlite" ,sqlite)))
(home-page "https://www.freedesktop.org/software/PackageKit/")
(synopsis "API for package management, through D-Bus")
(description
"PackageKit provides a way of performing package management tasks,
e.g. updating, removing and installing software. Through supporting many
backends, PackageKit can perform these tasks using the appropriate package
manager for the current system.")
(license license:gpl2+)))
(define-public python-pyxdg (define-public python-pyxdg
(package (package
(name "python-pyxdg") (name "python-pyxdg")

View File

@ -30,6 +30,7 @@
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system python) #:use-module (guix build-system python)
@ -221,7 +222,8 @@ possible, and it also makes the SGE easy to learn.")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://savannah/python-tmx/tmx-" (uri (string-append "mirror://savannah/python-tmx/"
(version-major+minor version) "/tmx-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
@ -293,7 +295,7 @@ support.")
(define-public tiled (define-public tiled
(package (package
(name "tiled") (name "tiled")
(version "0.18.2") (version "1.0.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/bjorn/tiled/archive/v" (uri (string-append "https://github.com/bjorn/tiled/archive/v"
@ -301,7 +303,7 @@ support.")
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1kcj2blrlfpghjv0qigip2qcbxfx7vv9i8nr4997hkwhsh6i2pjp")))) "0g6ld9znydbdzy4x9h532gf1fg5bnz1mmrpvw4jg2a4lxkrz3rd5"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("qtbase" ,qtbase) `(("qtbase" ,qtbase)

View File

@ -37,14 +37,14 @@
(define-public gdb (define-public gdb
(package (package
(name "gdb") (name "gdb")
(version "7.12.1") (version "8.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/gdb/gdb-" (uri (string-append "mirror://gnu/gdb/gdb-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"11ii260h1sd7v0bs3cz6d5l8gqxxgldry0md60ncjgixjw5nh1s6")))) "1vplyf8v70yn0rdqjx6awl9nmfbwaj5ynwwjxwa71rhp97z4z8pn"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; FIXME "make check" fails on single-processor systems. `(#:tests? #f ; FIXME "make check" fails on single-processor systems.

View File

@ -75,7 +75,7 @@ topology functions.")
(define-public gnome-maps (define-public gnome-maps
(package (package
(name "gnome-maps") (name "gnome-maps")
(version "3.18.3") (version "3.24.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -83,7 +83,7 @@ topology functions.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1vdnr2wmhqhql2gxd5n1ijwk88qhim14izbkczncg35846hfsr5i")))) "1mnhcrawdp6fyqylh0m8l259xdd7pqwibrjyl54rmsvnm8vfrwsy"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags ; Ensure that geoclue is referred to by output. `(#:configure-flags ; Ensure that geoclue is referred to by output.

View File

@ -217,7 +217,7 @@ also known as DXTn or DXTC) for Mesa.")
(define-public mesa (define-public mesa
(package (package
(name "mesa") (name "mesa")
(version "17.0.4") (version "17.0.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -227,7 +227,7 @@ also known as DXTn or DXTC) for Mesa.")
version "/mesa-" version ".tar.xz"))) version "/mesa-" version ".tar.xz")))
(sha256 (sha256
(base32 (base32
"0im3ca1vwwmkjf5w761vh7vabr4vrrdxpckr0wm974x18n2xqs8j")) "17d60jjzg4ddm95gk2cqx0xz6b9anmmz6ax4majwr3gis2yg7v49"))
(patches (patches
(search-patches "mesa-fix-32bit-test-failures.patch" (search-patches "mesa-fix-32bit-test-failures.patch"
"mesa-wayland-egl-symbols-check-mips.patch" "mesa-wayland-egl-symbols-check-mips.patch"

View File

@ -67,7 +67,7 @@
(define dbus (define dbus
(package (package
(name "dbus") (name "dbus")
(version "1.10.16") (version "1.10.18")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -75,7 +75,7 @@
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"121kqkjsd3vgf8vca8364xl44qa5086h7qy5zs5f1l78ldpbmc57")) "0jjirhw6xwz2ffmbg5kr79108l8i1bdaw7szc67n3qpkygaxsjb0"))
(patches (search-patches "dbus-helper-search-path.patch")))) (patches (search-patches "dbus-helper-search-path.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
@ -137,7 +137,7 @@ shared NFS home directories.")
(define glib (define glib
(package (package
(name "glib") (name "glib")
(version "2.50.3") (version "2.52.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" (uri (string-append "mirror://gnome/sources/"
@ -145,7 +145,7 @@ shared NFS home directories.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"16frrwhc1yqkzx6bgh3060g94dr2biab17fb01mrni819jzr9vl2")) "1l65kab6jr9zlllgbjcbvrbgah3sdd577fpw4pdb2j195ag5s3ph"))
(patches (search-patches "glib-tests-timer.patch")))) (patches (search-patches "glib-tests-timer.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" ; everything (outputs '("out" ; everything
@ -289,14 +289,14 @@ dynamic loading, and an object system.")
(define gobject-introspection (define gobject-introspection
(package (package
(name "gobject-introspection") (name "gobject-introspection")
(version "1.50.0") (version "1.52.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" (uri (string-append "mirror://gnome/sources/"
"gobject-introspection/" (version-major+minor version) "gobject-introspection/" (version-major+minor version)
"/gobject-introspection-" version ".tar.xz")) "/gobject-introspection-" version ".tar.xz"))
(sha256 (sha256
(base32 "1i9pccig8mv6qf0c1z8fcapays190nmr7j6pyc7cfhzmcv39fr8w")) (base32 "1x5gkyrglv3dn9b4fsgw6asqgjw1wj7qc37g9pyac6pyaa6w7l1f"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(substitute* "tools/g-ir-tool-template.in" '(substitute* "tools/g-ir-tool-template.in"
@ -492,7 +492,7 @@ has an ease of use unmatched by other C++ callback libraries.")
(define glibmm (define glibmm
(package (package
(name "glibmm") (name "glibmm")
(version "2.50.0") (version "2.50.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/glibmm/" (uri (string-append "mirror://gnome/sources/glibmm/"
@ -500,7 +500,7 @@ has an ease of use unmatched by other C++ callback libraries.")
"/glibmm-" version ".tar.xz")) "/glibmm-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"152yz5w0lx0y5j9ml72az7pc83p4l92bc0sb8whpcazldqy6wwnz")))) "1926b3adx903hzvdp8glblsgjyadzqnwgkj8hg605d4wv98m1n0z"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (alist-cons-before `(#:phases (alist-cons-before
@ -573,7 +573,7 @@ useful for C++.")
(define-public python-pygobject (define-public python-pygobject
(package (package
(name "python-pygobject") (name "python-pygobject")
(version "3.22.0") (version "3.24.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -582,11 +582,13 @@ useful for C++.")
"/pygobject-" version ".tar.xz")) "/pygobject-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1ryblpc4wbhxcwf7grgib4drrab5xi6p78ihhrx0zj7g13xrrch8")))) "1zdzznrj2s1gsrv2z4r0n88fzba8zjc1n2r313xi77lhl1daja56"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("which" ,which) `(("which" ,which)
("glib-bin" ,glib "bin") ;for tests: glib-compile-schemas ;for tests: dbus-run-session and glib-compile-schemas
("dbus" ,dbus)
("glib-bin" ,glib "bin")
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(inputs (inputs
`(("python" ,python) `(("python" ,python)
@ -596,16 +598,6 @@ useful for C++.")
;; pygobject-3.0.pc refers to all these. ;; pygobject-3.0.pc refers to all these.
`(("glib" ,glib) `(("glib" ,glib)
("libffi" ,libffi))) ("libffi" ,libffi)))
(arguments
;; TODO: failing tests: test_native_calls_async
;; test_native_calls_async_errors test_native_calls_sync
;; test_native_calls_sync_errors test_python_calls_async
;; test_python_calls_async_error test_python_calls_async_error_result
;; test_python_calls_sync test_python_calls_sync_errors
;; test_python_calls_sync_noargs test_callback_user_data_middle_none
;; test_callback_user_data_middle_single
;; test_callback_user_data_middle_tuple
'(#:tests? #f))
;; For finding typelib files, since gobject-introscpetion isn't propagated. ;; For finding typelib files, since gobject-introscpetion isn't propagated.
(native-search-paths (package-native-search-paths gobject-introspection)) (native-search-paths (package-native-search-paths gobject-introspection))
(home-page "https://live.gnome.org/PyGObject") (home-page "https://live.gnome.org/PyGObject")

View File

@ -14,7 +14,7 @@
;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net> ;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org> ;;; Copyright © 2016, 2017 Kei Kebreau <kei@openmailbox.org>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org> ;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
@ -46,6 +46,7 @@
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
@ -237,6 +238,56 @@ relationship modeling, and network diagrams. The program supports various file
formats like PNG, SVG, PDF and EPS.") formats like PNG, SVG, PDF and EPS.")
(license license:gpl2+)))) (license license:gpl2+))))
(define-public libgdata
(package
(name "libgdata")
(version "0.16.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"09q8h1129xjpw33rvzz7856drygxwlm0s64z9cm0vbmjxiqy0h47"))
(patches
(search-patches "libgdata-fix-tests.patch"
"libgdata-glib-duplicate-tests.patch"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-before 'check 'use-empty-ssl-cert-file
(lambda _
;; The ca-certificates.crt is not available in the build
;; environment.
(setenv "SSL_CERT_FILE" "/dev/null")
#t)))))
(native-inputs
`(("glib:bin" ,glib "bin")
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("intltool" ,intltool)
("pkg-config" ,pkg-config)
("uhttpmock" ,uhttpmock)))
(inputs
`(("cyrus-sasl" ,cyrus-sasl)
("glib" ,glib)
("glib-networking" ,glib-networking)
("json-glib" ,json-glib)
("libsoup" ,libsoup)))
(propagated-inputs
`(("gcr" ,gcr)
("gnome-online-accounts" ,gnome-online-accounts)
("liboauth" ,liboauth)
("libxml2" ,libxml2)))
(home-page "https://wiki.gnome.org/Projects/libgdata")
(synopsis "Library for accessing online service APIs")
(description
"libgdata is a GLib-based library for accessing online service APIs using
the GData protocol most notably, Google's services. It provides APIs to
access the common Google services, and has full asynchronous support.")
(license license:lgpl2.1+)))
(define-public gnome-common (define-public gnome-common
(package (package
(name "gnome-common") (name "gnome-common")
@ -262,7 +313,7 @@ commonly used macros.")
(define-public gnome-desktop (define-public gnome-desktop
(package (package
(name "gnome-desktop") (name "gnome-desktop")
(version "3.22.2") (version "3.24.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -271,7 +322,7 @@ commonly used macros.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"074yjz4g9gii045v2pl1ad34hcg92ci04ynxqcabwnf3lvvypmsi")))) "0pkq5l1llw8gkjhfq6y58iyj6wac8dh1mc3rzjzn6nd7lrkdx8cg"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("gobject-introspection" ,gobject-introspection) `(("gobject-introspection" ,gobject-introspection)
@ -339,7 +390,7 @@ and keep up to date translations of documentation.")
(define-public gnome-disk-utility (define-public gnome-disk-utility
(package (package
(name "gnome-disk-utility") (name "gnome-disk-utility")
(version "3.22.1") (version "3.24.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -347,7 +398,7 @@ and keep up to date translations of documentation.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1hqynlcgwm72il2rdml98gcarz0alsgxs5xf6ww2x0czaj3s3953")))) "18akarcbhm8djlmz49jzavc7qx8dg71gvxc9xd23p0bwjj4h93w7"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") `(("glib:bin" ,glib "bin")
@ -521,7 +572,7 @@ forgotten when the session ends.")
(define-public evince (define-public evince
(package (package
(name "evince") (name "evince")
(version "3.22.1") (version "3.24.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -529,15 +580,10 @@ forgotten when the session ends.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0713mcrym5ykhl5smqxi6m9578gz3nkibmkmc794amss7gdkkm7k")))) "13yw0i68dgqp9alyliy3zifszh7rikkpi1xbz5binvxxgfpraf04"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags '("--disable-nautilus") `(#:configure-flags '("--disable-nautilus")
;; FIXME: Tests fail with:
;; ImportError: No module named gi.repository
;; Where should that module come from?
#:tests? #f
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'install 'skip-gtk-update-icon-cache (add-before 'install 'skip-gtk-update-icon-cache
@ -593,7 +639,7 @@ on the GNOME Desktop with a single simple application.")
(define-public gsettings-desktop-schemas (define-public gsettings-desktop-schemas
(package (package
(name "gsettings-desktop-schemas") (name "gsettings-desktop-schemas")
(version "3.22.0") (version "3.24.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -602,7 +648,7 @@ on the GNOME Desktop with a single simple application.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1qgalzqwg0fl0n22vslqcsnsmj9kc54qj25ib16rxaf36jxcf1hg")))) "145vpcljy4660cnk8zk91qf7ywa7hqfl5hhw025gy8hxcqzklmzn"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("glib" ,glib))) `(("glib" ,glib)))
@ -954,17 +1000,18 @@ the GNOME desktop environment.")
(define-public libcroco (define-public libcroco
(package (package
(name "libcroco") (name "libcroco")
(version "0.6.11") (version "0.6.12")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/" (version-major+minor version) "/"
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(patches
(search-patches "libcroco-CVE-2017-7960.patch"
"libcroco-CVE-2017-7961.patch"))
(sha256 (sha256
(base32 (base32
"0mm0wldbi40am5qn0nv7psisbg01k42rwzjxl3gv11l5jj554aqk")) "0q7qhi7z64i26zabg9dbs5706fa8pmzp1qhpa052id4zdiabbi6x"))))
(patches (search-patches "libcroco-CVE-2017-7960.patch"
"libcroco-CVE-2017-7961.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
@ -1686,7 +1733,7 @@ Hints specification (EWMH).")
(define-public gnumeric (define-public gnumeric
(package (package
(name "gnumeric") (name "gnumeric")
(version "1.12.32") (version "1.12.34")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -1694,7 +1741,7 @@ Hints specification (EWMH).")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1s3dxvdwzmppsp2dfg90rccilf4hknhwjdy7lazr9sys58zchyx0")))) "09f7h4lvwzyl0amd3axapwbsrnrvvpwxyhs540jlrv425n0j0j8b"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(;; The gnumeric developers don't worry much about failing tests. `(;; The gnumeric developers don't worry much about failing tests.
@ -1727,7 +1774,9 @@ Hints specification (EWMH).")
("zlib" ,zlib))) ("zlib" ,zlib)))
(native-inputs (native-inputs
`(("bison" ,bison) `(("bison" ,bison)
("docbook-xml" ,docbook-xml)
("intltool" ,intltool) ("intltool" ,intltool)
("itstool" ,itstool)
("glib:bin" ,glib "bin") ("glib:bin" ,glib "bin")
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(home-page "http://www.gnumeric.org") (home-page "http://www.gnumeric.org")
@ -1817,7 +1866,7 @@ passwords in the GNOME keyring.")
(define-public vala (define-public vala
(package (package
(name "vala") (name "vala")
(version "0.34.4") (version "0.36.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -1825,7 +1874,7 @@ passwords in the GNOME keyring.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"10vbd74jazc3vhfagzx8v197bshrg61hnjzna6y3wmhljhrvs5vb")))) "0706izk9prxqclm7gv4f63diwnlc1llvfl5sc9ghqbgn076lx2mc"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -2064,7 +2113,7 @@ configuration storage systems.")
(define-public json-glib (define-public json-glib
(package (package
(name "json-glib") (name "json-glib")
(version "1.2.2") (version "1.2.8")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -2072,14 +2121,7 @@ configuration storage systems.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"08d6449sgnwfh92x8rhwsm03g8frv0mvp3s4wl3cskw25asql4pa")) "02pl0wl3mf47c038bgv2r4pa6pr6y3shjhxn1l7s3rrrgl1sjmgx"))))
(modules '((guix build utils)))
(snippet
;; Don't duplicate test names.
;; <https://bugzilla.gnome.org/show_bug.cgi?id=755977>.
'(substitute* "json-glib/tests/builder.c"
(("\"/builder/complex\", test_builder_empty")
"\"/builder/empty\", test_builder_empty")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal `(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
@ -2253,7 +2295,7 @@ libxml to ease remote use of the RESTful API.")
(define-public libsoup (define-public libsoup
(package (package
(name "libsoup") (name "libsoup")
(version "2.56.0") (version "2.58.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/libsoup/" (uri (string-append "mirror://gnome/sources/libsoup/"
@ -2261,14 +2303,17 @@ libxml to ease remote use of the RESTful API.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1r8zz270qdg92gbsvy61d51y1cj7hp059h2f4xpvqiw2vrqnn8fq")))) "1fggmshk2mfsyfvml6paki65xj9rv1s5p7ds41xmnx6yazsnkik2"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" "doc")) (outputs '("out" "doc"))
(arguments (arguments
`(#:configure-flags `(#:configure-flags
(list (string-append "--with-html-dir=" (list (string-append "--with-html-dir="
(assoc-ref %outputs "doc") (assoc-ref %outputs "doc")
"/share/gtk-doc/html")) "/share/gtk-doc/html")
(string-append "--with-apache-module-dir="
(assoc-ref %build-inputs "httpd")
"/modules"))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'configure 'disable-unconnected-socket-test (add-before 'configure 'disable-unconnected-socket-test
@ -2286,6 +2331,9 @@ libxml to ease remote use of the RESTful API.")
;; The ca-certificates.crt is not available in the build ;; The ca-certificates.crt is not available in the build
;; environment. ;; environment.
(setenv "SSL_CERT_FILE" "/dev/null") (setenv "SSL_CERT_FILE" "/dev/null")
;; HTTPD in Guix uses mod_event and does not build prefork.
(substitute* "tests/httpd.conf"
(("^LoadModule mpm_prefork_module.*$") "\n"))
#t)) #t))
(replace 'install (replace 'install
(lambda _ (lambda _
@ -2371,7 +2419,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.")
(define-public gnome-mines (define-public gnome-mines
(package (package
(name "gnome-mines") (name "gnome-mines")
(version "3.22.2") (version "3.24.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2380,7 +2428,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1wia0nj5i244m6pq3lridvk3vx9yipsa9l921nsskd97115mnyza")))) "1xh2as2xmh7gx45gpnl0fh9xjpvyyn3m84qgv41kyp2s4clsyqz6"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -2409,7 +2457,7 @@ floating in an ocean using only your brain and a little bit of luck.")
(define-public gnome-sudoku (define-public gnome-sudoku
(package (package
(name "gnome-sudoku") (name "gnome-sudoku")
(version "3.22.2") (version "3.24.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2418,7 +2466,7 @@ floating in an ocean using only your brain and a little bit of luck.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1sz2ln2nc9ff7zigghil32vbmr2qhb98dc0rbrz755rlrsh8pi08")))) "1mw5ykk7wr0r9770jj5270f07rjws0pmpjs0b1fywj4li13r98h4"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -2444,7 +2492,7 @@ more fun.")
(define-public gnome-terminal (define-public gnome-terminal
(package (package
(name "gnome-terminal") (name "gnome-terminal")
(version "3.24.1") (version "3.24.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2453,7 +2501,7 @@ more fun.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1q303bljcr06w3ra737kq1hpjda45wk16kmrixxwldf3zkk2dgx7")))) "03zcvxlzg7n4pz65vrg5xj3qpkqr4bz162mgmaz4bjh71b1xl7i8"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
'(#:configure-flags '(#:configure-flags
@ -2695,7 +2743,7 @@ service via the system message bus.")
(define-public libgweather (define-public libgweather
(package (package
(name "libgweather") (name "libgweather")
(version "3.20.4") (version "3.24.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -2703,7 +2751,7 @@ service via the system message bus.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1higj4nmn3srqjbzl4iva7c0b4fkdq74xi4b35xd0qc4qiawbkbx")))) "0ggspn3wmlkdxpfv4ym68qn1mzqc3hv666sykv8sv1ah40rbk28h"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -2750,7 +2798,7 @@ services for numerous locations.")
(define-public gnome-settings-daemon (define-public gnome-settings-daemon
(package (package
(name "gnome-settings-daemon") (name "gnome-settings-daemon")
(version "3.22.1") (version "3.24.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2759,7 +2807,7 @@ services for numerous locations.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1finsr7yqvix6n3rdwclv4fpgagmz6xyrk3qzapkn9ljv76rfzdm")))) "1jnw920zn4cadhgmcv2q5ylzqhwm1rmrhf3a14q8mvp38hkdgaaa"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(;; Color management test can't reach the colord system service. `(;; Color management test can't reach the colord system service.
@ -2877,7 +2925,7 @@ which are easy to play with the aid of a mouse.")
(define-public devhelp (define-public devhelp
(package (package
(name "devhelp") (name "devhelp")
(version "3.22.0") (version "3.24.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -2885,7 +2933,7 @@ which are easy to play with the aid of a mouse.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1c7zqn8apm1lnpsp74bd880rga2vi5wxfjghqdgwqf6j28pf1jjr")))) "0c74rk46dy3kvy78m42jl3ip56c5536zmy8v1lbascjmh4fdwn28"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("intltool" ,intltool) `(("intltool" ,intltool)
@ -2936,9 +2984,13 @@ throughout GNOME for API documentation).")
("cairo" ,cairo) ("cairo" ,cairo)
("pango" ,pango) ("pango" ,pango)
("gstreamer" ,gstreamer) ("gstreamer" ,gstreamer)
("gst-plugins-base" ,gst-plugins-base))) ("gst-plugins-base" ,gst-plugins-base)
("wayland" ,wayland)))
(arguments (arguments
`(#:configure-flags (list "--enable-cogl-gst" `(#:configure-flags (list "--enable-cogl-gst"
"--enable-wayland-egl-platform"
"--enable-wayland-egl-server"
;; Arrange to pass an absolute file name to ;; Arrange to pass an absolute file name to
;; dlopen for libGL.so. ;; dlopen for libGL.so.
(string-append "--with-gl-libname=" (string-append "--with-gl-libname="
@ -3343,7 +3395,7 @@ for application developers.")
(define-public totem (define-public totem
(package (package
(name "totem") (name "totem")
(version "3.22.0") (version "3.24.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -3352,7 +3404,7 @@ for application developers.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1sjgjqhpsh3kipnbc8y31xz64s61xjayxq98pi0vkgbl2rdmnsh2")))) "00cdlll5b0wj5ckl1pc0a3g39a0hlq0gxkcsh1f6p20fjixqzmwv"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -3510,7 +3562,7 @@ supports playlists, song ratings, and any codecs installed through gstreamer.")
(define-public eog (define-public eog
(package (package
(name "eog") (name "eog")
(version "3.20.5") (version "3.24.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -3518,7 +3570,7 @@ supports playlists, song ratings, and any codecs installed through gstreamer.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0fqvfc4y1lbv0awh8dbx9khfha0hdkmnj1lzw5jq0l7jmahwbrz6")))) "1rr7zy8afqgl15j1zz8l37svyv6bw4r3l04yf70zlnf1w8bf27pm"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -3588,7 +3640,7 @@ part of udev-extras, then udev, then systemd. It's now a project on its own.")
(define-public gvfs (define-public gvfs
(package (package
(name "gvfs") (name "gvfs")
(version "1.30.3") (version "1.32.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -3596,7 +3648,7 @@ part of udev-extras, then udev, then systemd. It's now a project on its own.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0xgis1kgglnazy1vm66xiqyz8yvvmiad3h0g3agg7ryai6aa495q")))) "1pkahczniar1yyas7awcqpkb4ca8l7qa4msn6mr29m89mgnwkdnh"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:tests? #f)) ; XXX: requiring `pidof' '(#:tests? #f)) ; XXX: requiring `pidof'
@ -3741,7 +3793,7 @@ work and the interface is well tested.")
(define-public epiphany (define-public epiphany
(package (package
(name "epiphany") (name "epiphany")
(version "3.22.7") (version "3.24.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -3749,7 +3801,7 @@ work and the interface is well tested.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1167x5s0kawkqngjnzml0a11ib18raxqc4p11kacivj4jv0pwnx1")))) "13f5h7mbxdyjf93jp46hiaxsrngpr6frgf69d8iza7arc060vg2s"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
;; FIXME: tests run under Xvfb, but fail with: ;; FIXME: tests run under Xvfb, but fail with:
@ -3772,6 +3824,7 @@ work and the interface is well tested.")
("glib-networking" ,glib-networking) ("glib-networking" ,glib-networking)
("gnome-desktop" ,gnome-desktop) ("gnome-desktop" ,gnome-desktop)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("json-glib" ,json-glib)
("iso-codes" ,iso-codes) ("iso-codes" ,iso-codes)
("libnotify" ,libnotify) ("libnotify" ,libnotify)
("libsecret" ,libsecret) ("libsecret" ,libsecret)
@ -4002,7 +4055,7 @@ metadata in photo and video files of various formats.")
(define-public shotwell (define-public shotwell
(package (package
(name "shotwell") (name "shotwell")
(version "0.25.5") (version "0.26.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -4010,7 +4063,7 @@ metadata in photo and video files of various formats.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"10pv3v789hky8h7ladqzzmgvkmgy3c41n4xz0nnyjmpycwl26g29")))) "0xak1f69lp1yx3p8jgmr9c0z3jypi8zjpy3kiknn5n9g2f5cqq0a"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(propagated-inputs (propagated-inputs
`(("dconf" ,dconf))) `(("dconf" ,dconf)))
@ -4025,6 +4078,7 @@ metadata in photo and video files of various formats.")
`(("glib:bin" ,glib "bin") `(("glib:bin" ,glib "bin")
("gstreamer" ,gstreamer) ("gstreamer" ,gstreamer)
("gst-plugins-base" ,gst-plugins-base) ("gst-plugins-base" ,gst-plugins-base)
("libgdata" ,libgdata)
("libgee" ,libgee) ("libgee" ,libgee)
("gexiv2" ,gexiv2) ("gexiv2" ,gexiv2)
("libraw" ,libraw) ("libraw" ,libraw)
@ -4048,7 +4102,7 @@ share them with others via social networking and more.")
(define-public file-roller (define-public file-roller
(package (package
(name "file-roller") (name "file-roller")
(version "3.22.2") (version "3.24.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -4056,7 +4110,7 @@ share them with others via social networking and more.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1yaxd0lqhajszilblkidqfkaffhzml10l7ib64023y36qgf8q597")))) "0fkz9h9a6149crmf6311fsqlmv9wyrxk86470vxib941ppl4a581"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -4090,7 +4144,7 @@ such as gzip tarballs.")
(define-public gnome-session (define-public gnome-session
(package (package
(name "gnome-session") (name "gnome-session")
(version "3.22.2") (version "3.24.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -4098,7 +4152,7 @@ such as gzip tarballs.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1xahljysbpnc1zafm1y2lqnmmqi2jh4fx7h2y48d9ipqnknk26in")))) "1vkfjsgks9czajivcg3y1krzlnilv2cnzzbdc7wrasrriqilji1v"))))
(arguments (arguments
'(#:phases '(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
@ -4169,7 +4223,7 @@ configuration program to choose applications starting on login.")
(define-public gjs (define-public gjs
(package (package
(name "gjs") (name "gjs")
(version "1.46.0") (version "1.48.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -4177,10 +4231,7 @@ configuration program to choose applications starting on login.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1m2ssa6qsipbp8lz4xbhf0nhadhv0xkdpmz1jcvl9187lwgmk0r2")) "0cqgv460wfhwkw6j1h46v6bg29bycg6dfl7c5rv0lfcqmmw7v6v6"))))
(modules '((guix build utils)))
(snippet '(substitute* "test/run-with-dbus"
(("/bin/rm") "rm")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -4195,11 +4246,11 @@ configuration program to choose applications starting on login.")
;; For the missing /etc/machine-id. ;; For the missing /etc/machine-id.
(setenv "DBUS_FATAL_WARNINGS" "0") (setenv "DBUS_FATAL_WARNINGS" "0")
;; XXX: fails with: ;; Our mozjs-38 package does not compile the required Intl API
;; Failed to convert UTF-8 string to JS string: ... ;; support for these failing tests.
;; TODO: actually fix it. (substitute* "installed-tests/js/testLocale.js"
(substitute* "installed-tests/js/testEverythingBasic.js" ((".*toBeDefined.*") "")
((".*test_utf8_inout.*") "")) ((".*expect\\(datestr\\).*") ""))
#t))))) #t)))))
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") ; for glib-compile-resources `(("glib:bin" ,glib "bin") ; for glib-compile-resources
@ -4211,8 +4262,9 @@ configuration program to choose applications starting on login.")
("xvfb" ,xorg-server))) ("xvfb" ,xorg-server)))
(propagated-inputs (propagated-inputs
;; These are all in the Requires.private field of gjs-1.0.pc. ;; These are all in the Requires.private field of gjs-1.0.pc.
`(("gobject-introspection" ,gobject-introspection) `(("cairo" ,cairo)
("mozjs" ,mozjs-24))) ("gobject-introspection" ,gobject-introspection)
("mozjs" ,mozjs-38)))
(inputs (inputs
`(("gtk+" ,gtk+) `(("gtk+" ,gtk+)
("readline" ,readline))) ("readline" ,readline)))
@ -4286,7 +4338,7 @@ powerful general purpose text editor.")
(define-public zenity (define-public zenity
(package (package
(name "zenity") (name "zenity")
(version "3.22.0") (version "3.24.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -4294,7 +4346,7 @@ powerful general purpose text editor.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0rp4l0vgyjhlkpk2imfwf7b05m1qxjrm8n8kp1rv70ykf48gmk8y")))) "1xzpm63cib2xzr99phplhbcjzy7lahggk3gp60dvrrclxhka1w3g"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
@ -4311,20 +4363,17 @@ to display dialog boxes from the commandline and shell scripts.")
(license license:lgpl2.0+))) (license license:lgpl2.0+)))
(define-public mutter (define-public mutter
;; Uses the gnome 3.22 branch that only contains bug fixes.
(let ((commit "23c315ea7121e9bd108e2837d0b4beeba53c5e18"))
(package (package
(name "mutter") (name "mutter")
(version (git-version "3.22.2" "1" commit)) (version "3.24.2")
(source (origin (source (origin
(method git-fetch) (method url-fetch)
(uri (git-reference (uri (string-append "mirror://gnome/sources/" name "/"
(url "git://git.gnome.org/mutter") (version-major+minor version) "/"
(commit commit))) name "-" version ".tar.xz"))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1v1f9xyzjr1ihmfwpq9kzlv2lyr9qn63ck8zny699mbp5hsi11mb")))) "043q3384vwrkjdfhbwn9pwdml6z0g0ad0cj2fjnjzg6402i67071"))))
;; NOTE: Since version 3.21.x, mutter now bundles and exports forked ;; NOTE: Since version 3.21.x, mutter now bundles and exports forked
;; versions of cogl and clutter. As a result, many of the inputs, ;; versions of cogl and clutter. As a result, many of the inputs,
;; propagated-inputs, and configure flags used in cogl and clutter are ;; propagated-inputs, and configure flags used in cogl and clutter are
@ -4337,8 +4386,7 @@ to display dialog boxes from the commandline and shell scripts.")
;; implicit declaration of function ?roundf? ;; implicit declaration of function ?roundf?
(list "--enable-compile-warnings=minimum" (list "--enable-compile-warnings=minimum"
"--disable-wayland" ; TODO enable wayland "--enable-native-backend"
;; "--enable-native-backend" ; TODO enable the native backend
;; The following flags are needed for the bundled clutter ;; The following flags are needed for the bundled clutter
"--enable-x11-backend=yes" "--enable-x11-backend=yes"
@ -4350,9 +4398,14 @@ to display dialog boxes from the commandline and shell scripts.")
"/lib/libGL.so")) "/lib/libGL.so"))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'autoreconf ;; Replace references to systemd libraries to elogind references.
(add-before 'configure 'use-elogind
(lambda _ (lambda _
(zero? (system* "autoreconf" "-vfi"))))))) (substitute* (list "configure"
"src/backends/native/meta-launcher.c"
"src/core/main.c")
(("systemd") "elogind"))
#t)))))
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc. `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
("gobject-introspection" ,gobject-introspection) ("gobject-introspection" ,gobject-introspection)
@ -4385,17 +4438,17 @@ to display dialog boxes from the commandline and shell scripts.")
("mesa" ,mesa) ("mesa" ,mesa)
("pango" ,pango) ("pango" ,pango)
("udev" ,eudev) ("udev" ,eudev)
("wayland" ,wayland)
("wayland-protocols" ,wayland-protocols)
("xinput" ,xinput))) ("xinput" ,xinput)))
(inputs (inputs
`(("gnome-desktop" ,gnome-desktop) `(("elogind" ,elogind)
("gnome-desktop" ,gnome-desktop)
("libcanberra-gtk" ,libcanberra) ("libcanberra-gtk" ,libcanberra)
("libgudev" ,libgudev) ("libgudev" ,libgudev)
("libice" ,libice) ("libice" ,libice)
("libsm" ,libsm) ("libsm" ,libsm)
("libxkbfile" ,libxkbfile) ("libxkbfile" ,libxkbfile)
("libxrandr" ,libxrandr) ("libxrandr" ,libxrandr)
("libxtst" ,libxtst)
("startup-notification" ,startup-notification) ("startup-notification" ,startup-notification)
("upower-glib" ,upower) ("upower-glib" ,upower)
("xkeyboard-config" ,xkeyboard-config) ("xkeyboard-config" ,xkeyboard-config)
@ -4407,12 +4460,12 @@ to display dialog boxes from the commandline and shell scripts.")
desktop via OpenGL. Mutter combines a sophisticated display engine using the desktop via OpenGL. Mutter combines a sophisticated display engine using the
Clutter toolkit with solid window-management logic inherited from the Metacity Clutter toolkit with solid window-management logic inherited from the Metacity
window manager.") window manager.")
(license license:gpl2+)))) (license license:gpl2+)))
(define-public gnome-online-accounts (define-public gnome-online-accounts
(package (package
(name "gnome-online-accounts") (name "gnome-online-accounts")
(version "3.22.3") (version "3.24.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -4420,7 +4473,7 @@ window manager.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"13wvnfh3hnasdnb6fhjssybj2327qihd32kpdjjb3r1qiyc8dvqb")))) "0yy10znqj278lnhdiqjcqxrwwv5c1jdjd0ncjbbdyh8n0q77hbwy"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc. `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
@ -4450,7 +4503,7 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
(define-public evolution-data-server (define-public evolution-data-server
(package (package
(name "evolution-data-server") (name "evolution-data-server")
(version "3.22.3") (version "3.24.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -4458,26 +4511,20 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0kygd46s0is6i451bqykagrfx34wjvrgjbjyyszaabnppp1dyn0c")))) "1ywqy939n27v3kchlnyxs6ikhjxmlasv6f08ap4bldgr121vkfx9"))))
(build-system gnu-build-system) (build-system cmake-build-system)
(arguments (arguments
'(;; XXX: fails with: '(;; XXX FIXME: 11/85 tests are failing.
;; /Fixture/Calendar0: cleaning up pid xxxx
;; t status: 139)
#:tests? #f #:tests? #f
#:configure-flags #:configure-flags
(let ((nss (assoc-ref %build-inputs "nss")) (list "-DENABLE_UOA=OFF" ;disable Ubuntu Online Accounts support
(nspr (assoc-ref %build-inputs "nspr"))) "-DENABLE_GOOGLE=OFF" ;disable Google Contacts support
(list "--disable-uoa" ; disable Ubuntu Online Accounts support "-DENABLE_GOOGLE_AUTH=OFF" ;disable Google authentication
"--disable-google" ; disable Google Contacts support "-DENABLE_VALA_BINDINGS=ON"
"--disable-google-auth" ; disable Google authentication "-DENABLE_INTROSPECTION=ON") ;required for Vala bindings
"--enable-vala-bindings"
(string-append "--with-nspr-includes=" nspr "/include/nspr")
(string-append "--with-nss-includes=" nss "/include/nss")
(string-append "--with-nss-libs=" nss "/lib/nss")))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'check 'pre-check (add-after 'unpack 'patch-paths
(lambda _ (lambda _
(substitute* "tests/test-server-utils/e-test-server-utils.c" (substitute* "tests/test-server-utils/e-test-server-utils.c"
(("/bin/rm") (which "rm"))) (("/bin/rm") (which "rm")))
@ -4489,7 +4536,7 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
("intltool" ,intltool) ("intltool" ,intltool)
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("vala" ,vala) ("vala" ,vala)
("python" ,python))) ("python" ,python-wrapper)))
(propagated-inputs (propagated-inputs
;; These are all in the Requires field of .pc files. ;; These are all in the Requires field of .pc files.
`(("gtk+" ,gtk+) `(("gtk+" ,gtk+)
@ -4502,7 +4549,9 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
`(("bdb" ,bdb) `(("bdb" ,bdb)
("gcr" ,gcr) ("gcr" ,gcr)
("gnome-online-accounts" ,gnome-online-accounts) ("gnome-online-accounts" ,gnome-online-accounts)
("libgweather" ,libgweather))) ("libgweather" ,libgweather)
("mit-krb5" ,mit-krb5)
("openldap" ,openldap)))
(synopsis "Store address books and calendars") (synopsis "Store address books and calendars")
(home-page "https://wiki.gnome.org/Apps/Evolution") (home-page "https://wiki.gnome.org/Apps/Evolution")
(description (description
@ -4800,7 +4849,7 @@ libxml2.")
(define-public gdm (define-public gdm
(package (package
(name "gdm") (name "gdm")
(version "3.22.1") (version "3.24.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -4808,7 +4857,7 @@ libxml2.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"17wnsrv91mx14xp96wrc21g2hsjjc38yhbkw55kf7hk3yliychva")))) "1s2xzrwcjhfb4ra8jrxqfycs1jpv97id0f6idb2h6vjkspxbjy23"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags '(#:configure-flags
@ -4887,7 +4936,7 @@ usage and information about running processes.")
(define-public gnome-bluetooth (define-public gnome-bluetooth
(package (package
(name "gnome-bluetooth") (name "gnome-bluetooth")
(version "3.20.0") (version "3.20.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -4895,7 +4944,7 @@ usage and information about running processes.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0lzbwk2kn7kp39sv5bf4ja92mfkxkc27gxxk8k86i8a8ncbcmcwk")))) "1zlqcz6jz4vzzr8gd1678i9s4015kiwcpr5szrwz4kmryfsm147a"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc. `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
@ -4920,7 +4969,7 @@ devices using the GNOME desktop.")
(define-public gnome-control-center (define-public gnome-control-center
(package (package
(name "gnome-control-center") (name "gnome-control-center")
(version "3.22.1") (version "3.24.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -4928,7 +4977,7 @@ devices using the GNOME desktop.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"06h9937sjfrzjf36pxqybg4wmkc5xdhbxgdkclnkjxiiqidjjsax")))) "0awga40jh6gvn335mn6kyl6yg79frap1znrsz3sw2m27yldlnaiq"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -4991,16 +5040,15 @@ properties, screen resolution, and other GNOME parameters.")
(define-public gnome-shell (define-public gnome-shell
(package (package
(name "gnome-shell") (name "gnome-shell")
(version "3.22.2") (version "3.24.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/" (version-major+minor version) "/"
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(patches (search-patches "gnome-shell-CVE-2017-8288.patch"))
(sha256 (sha256
(base32 (base32
"16smvjfrpyfphv479hjky5261hgl4kli4q86bcb2b8xdcav4w3yq")))) "1xp2ccmdrvzlczsrcplykwqwx2v4lbmkr0rxyylb06danlw9mivh"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -5201,7 +5249,7 @@ shared object databases, search tools and indexing.")
(define-public nautilus (define-public nautilus
(package (package
(name "nautilus") (name "nautilus")
(version "3.22.2") (version "3.24.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -5209,7 +5257,7 @@ shared object databases, search tools and indexing.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1cv5xsah04svxx0b6di7iah9gcwk6na2c6lp442pal9v2ybrw76f")))) "1cn6bmzmahzlwcd4gllsvx6dva386xm3papgzpv1r34abw73sf27"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
'(#:configure-flags '(#:configure-flags
@ -5281,7 +5329,7 @@ is complete it provides a graphical representation of each selected folder.")
(define-public gnome-backgrounds (define-public gnome-backgrounds
(package (package
(name "gnome-backgrounds") (name "gnome-backgrounds")
(version "3.22.1") (version "3.24.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -5290,7 +5338,7 @@ is complete it provides a graphical representation of each selected folder.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"09gfdrm1kaz2knyghhjb0ka1kklgbcbnqgy4c90bg0v3n899ij5z")))) "1jkikis9k3psp6rb8axnqy86awdyg5rzfbcp9gx40a99b4hlrnnb"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("intltool" ,intltool))) `(("intltool" ,intltool)))
@ -5509,7 +5557,7 @@ Microsoft SkyDrive and Hotmail, using their REST protocols.")
(define-public gnome-calendar (define-public gnome-calendar
(package (package
(name "gnome-calendar") (name "gnome-calendar")
(version "3.22.2") (version "3.24.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -5517,7 +5565,7 @@ Microsoft SkyDrive and Hotmail, using their REST protocols.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"03wivk7hbyqrqcrd7jg0m2xj6q13248la2184qkf7zncnj72g5ih")))) "0lc0xdgn0y12i87775xyy0p3a5l82w9k49cmwl1my8r8pwf9lp6s"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("intltool" ,intltool) `(("intltool" ,intltool)
@ -5538,7 +5586,7 @@ desktop. It supports multiple calendars, monthly view and yearly view.")
(define-public gnome-dictionary (define-public gnome-dictionary
(package (package
(name "gnome-dictionary") (name "gnome-dictionary")
(version "3.20.0") (version "3.24.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -5546,7 +5594,7 @@ desktop. It supports multiple calendars, monthly view and yearly view.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"08b1f5s5aqka3dwxnzmwr2fmyddjm9xw7zmqsf8r5zvfsivn7czg")))) "1wnrpg8yndacq0xnzc84d519yp7f28brzklm3a48xcgs1i50drs1"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") `(("glib:bin" ,glib "bin")
@ -5568,7 +5616,7 @@ existing databases over the internet.")
(define-public gnome-tweak-tool (define-public gnome-tweak-tool
(package (package
(name "gnome-tweak-tool") (name "gnome-tweak-tool")
(version "3.22.0") (version "3.24.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/gnome-tweak-tool/" (uri (string-append "mirror://gnome/sources/gnome-tweak-tool/"
@ -5578,7 +5626,7 @@ existing databases over the internet.")
(search-patch "gnome-tweak-tool-search-paths.patch"))) (search-patch "gnome-tweak-tool-search-paths.patch")))
(sha256 (sha256
(base32 (base32
"1frs16p2284mdw65g1ldmf9cz5sn3rg16wz58gjrw5pn2cgf2six")))) "000ygz9wgnv8pimb6rwbjfm12vbx4138pwkq36ci0k6v827282wk"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags '("--localstatedir=/tmp" `(#:configure-flags '("--localstatedir=/tmp"
@ -5619,7 +5667,7 @@ GNOME Shell appearance and extension, etc.")
(define-public gnome-shell-extensions (define-public gnome-shell-extensions
(package (package
(name "gnome-shell-extensions") (name "gnome-shell-extensions")
(version "3.22.2") (version "3.24.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -5627,7 +5675,7 @@ GNOME Shell appearance and extension, etc.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"11wa4f9arr89a4y8nsvla5j58dzwlawjb2q1lz0jn5i9kv324z6z")))) "10sg87wml5cmyk90pybnr6r942ba7173sl7yplhj2sfggp0wc74s"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags '("--enable-extensions=all"))) '(#:configure-flags '("--enable-extensions=all")))
@ -5883,7 +5931,7 @@ handling the startup notification side.")
(define-public gnome-calculator (define-public gnome-calculator
(package (package
(name "gnome-calculator") (name "gnome-calculator")
(version "3.22.2") (version "3.24.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -5892,7 +5940,7 @@ handling the startup notification side.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"03il7xl4yr6xbzj6x1lbl16yzlb166c9h9wny1w7mj9dccnz99wr")))) "041d40as8y0r5d0kk83dy842711zchydwwqh71kh1lpd373qlxa4"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0. `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
@ -5902,6 +5950,7 @@ handling the startup notification side.")
(inputs (inputs
`(("gtksourceview" ,gtksourceview) `(("gtksourceview" ,gtksourceview)
("libsoup" ,libsoup) ("libsoup" ,libsoup)
("mpc" ,mpc)
("mpfr" ,mpfr))) ("mpfr" ,mpfr)))
(home-page "https://wiki.gnome.org/Apps/Calculator") (home-page "https://wiki.gnome.org/Apps/Calculator")
(synopsis "Desktop calculator") (synopsis "Desktop calculator")
@ -6005,7 +6054,7 @@ Bluefish supports many programming and markup languages.")
(define-public gnome-system-monitor (define-public gnome-system-monitor
(package (package
(name "gnome-system-monitor") (name "gnome-system-monitor")
(version "3.22.2") (version "3.24.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -6014,7 +6063,7 @@ Bluefish supports many programming and markup languages.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"10n9bl2q9xxnd6mfi4scfw5x0xyyzvnblz26q9gl8vks2nbv19b8")))) "1x3343hchkllj8wyifk844v8psi45kyjhphyd03fzahi4h34aay3"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") ; for glib-mkenums. `(("glib:bin" ,glib "bin") ; for glib-mkenums.

View File

@ -407,6 +407,35 @@ instead. This way bug fixes or improvements can be done at a central place
and every application benefits from this.") and every application benefits from this.")
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
(define-public qgpgme
(package
(inherit gpgme)
(name "qgpgme")
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'chdir-and-symlink
(lambda* (#:key inputs #:allow-other-keys)
(let ((gpgme (assoc-ref inputs "gpgme")))
(symlink (string-append gpgme "/lib/libgpgmepp.la")
"lang/cpp/src/libgpgmepp.la")
(symlink (string-append gpgme "/lib/libgpgme.la")
"src/libgpgme.la"))
(chdir "lang/qt")
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("gpgme" ,gpgme)
("qtbase" ,qtbase)
,@(package-inputs gpgme)))
(synopsis "Qt API bindings for gpgme")
(description "QGpgme provides a very high level Qt API around GpgMEpp.
QGpgME was originally developed as part of libkleo and incorporated into
gpgpme starting with version 1.7.")
(license license:gpl2+))) ;; Note: this differs from gpgme
(define-public python-gpg (define-public python-gpg
(package (package
(name "python-gpg") (name "python-gpg")

View File

@ -5,6 +5,7 @@
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -54,6 +55,7 @@
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages jemalloc) #:use-module (gnu packages jemalloc)
#:use-module (gnu packages photo) #:use-module (gnu packages photo)
#:use-module (gnu packages pth)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages qt) #:use-module (gnu packages qt)
#:use-module (gnu packages readline) #:use-module (gnu packages readline)
@ -318,6 +320,47 @@ visual effects work for film.")
(home-page "http://www.openimageio.org") (home-page "http://www.openimageio.org")
(license license:bsd-3))) (license license:bsd-3)))
(define-public openscenegraph
(package
(name "openscenegraph")
(version "3.4.0")
(source
(origin
(method url-fetch)
(uri (string-append "http://trac.openscenegraph.org/downloads/developer_releases/"
"OpenSceneGraph-" version ".zip"))
(sha256
(base32
"03h4wfqqk7rf3mpz0sa99gy715cwpala7964z2npd8jxfn27swjw"))
(patches (search-patches "openscenegraph-ffmpeg3.patch"))
(file-name (string-append name "-" version ".zip"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ;; No test target available.
#:configure-flags
(list (string-append "-DCMAKE_INSTALL_RPATH="
(assoc-ref %outputs "out") "/lib:"
(assoc-ref %outputs "out") "/lib64"))))
(native-inputs
`(("unzip" ,unzip)))
(inputs
`(("giflib", giflib)
("jasper", jasper)
("librsvg", librsvg)
("pth", pth)
("qtbase", qtbase)
("ffmpeg", ffmpeg)
("mesa", mesa)))
(synopsis "High performance real-time graphics toolkit")
(description
"The OpenSceneGraph is a high performance 3D graphics toolkit
used by application developers in fields such as visual simulation, games,
virtual reality, scientific visualization and modeling.")
(home-page "http://www.openscenegraph.org")
;; The 'LICENSE' file explains that the source is licensed under
;; LGPL 2.1, but with 4 exceptions. This version is called OSGPL.
(license license:lgpl2.1)))
(define-public rapicorn (define-public rapicorn
(package (package
(name "rapicorn") (name "rapicorn")

View File

@ -50,6 +50,7 @@
#:use-module (gnu packages docbook) #:use-module (gnu packages docbook)
#:use-module (gnu packages enchant) #:use-module (gnu packages enchant)
#:use-module (gnu packages fontutils) #:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gettext) #:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript) #:use-module (gnu packages ghostscript)
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
@ -72,7 +73,7 @@
(define-public atk (define-public atk
(package (package
(name "atk") (name "atk")
(version "2.22.0") (version "2.24.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -80,7 +81,7 @@
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1dj47ndvspa7lghw1jvjhv3v08q5f9ab5rb395mcgjbl975gajfk")))) "0jbs90vacl95mwgvmqsizi1bwx5sw0rz70r9knksfwwch2dalbdv"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" "doc")) (outputs '("out" "doc"))
(arguments (arguments
@ -170,7 +171,7 @@ affine transformation (scale, rotation, shear, etc.).")
(define-public harfbuzz (define-public harfbuzz
(package (package
(name "harfbuzz") (name "harfbuzz")
(version "1.4.3") (version "1.4.6")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.freedesktop.org/software/" (uri (string-append "https://www.freedesktop.org/software/"
@ -178,7 +179,7 @@ affine transformation (scale, rotation, shear, etc.).")
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"08akv3qzwnf48xajb60dfcchkmfdjkpp65a0xd8s98w81901g343")))) "14yj514yfy373np3gxk930a443j1zgnwg6mm0kdzzjr0rn0qp9r1"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" (outputs '("out"
"bin")) ; 160K, only hb-view depend on cairo "bin")) ; 160K, only hb-view depend on cairo
@ -208,7 +209,7 @@ affine transformation (scale, rotation, shear, etc.).")
(define-public pango (define-public pango
(package (package
(name "pango") (name "pango")
(version "1.40.5") (version "1.40.6")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/pango/" (uri (string-append "mirror://gnome/sources/pango/"
@ -216,7 +217,7 @@ affine transformation (scale, rotation, shear, etc.).")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1j81kmdq2kndayahfck60myd05hj5qd7mixj0w5kchkc8m082x14")))) "0wz5b5knpw4gfvz3ny8l6h2ca3bpqqyh55mffkyzgsd1hdrjn5fa"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(propagated-inputs (propagated-inputs
`(("cairo" ,cairo) `(("cairo" ,cairo)
@ -378,7 +379,7 @@ printing and other features typical of a source code editor.")
(define-public gtksourceview (define-public gtksourceview
(package (package
(name "gtksourceview") (name "gtksourceview")
(version "3.22.2") (version "3.24.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -386,7 +387,7 @@ printing and other features typical of a source code editor.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0pmgff3p9q1z500aiqfn5l4mmij4yfi4qhq8fxscqc89vlql5s3c")))) "17xqrnh2v9gba57ij2m9kngxwh19fzsqkx1rfasnv4zaqvqqhv69"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -508,7 +509,7 @@ in the GNOME project.")
(define-public at-spi2-core (define-public at-spi2-core
(package (package
(name "at-spi2-core") (name "at-spi2-core")
(version "2.22.0") (version "2.24.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -516,7 +517,7 @@ in the GNOME project.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"02n8ybhg8344mpjwvkhnzvr0qbvvl6ryi2q9irwhi0ri46ps6pj1")))) "0nwvjmd30rgq6d1zznavx0bdfa1xwv3jl8wnkbkwzaipp5jd140y"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" "doc")) (outputs '("out" "doc"))
(arguments (arguments
@ -553,7 +554,7 @@ is part of the GNOME accessibility project.")
(define-public at-spi2-atk (define-public at-spi2-atk
(package (package
(name "at-spi2-atk") (name "at-spi2-atk")
(version "2.22.0") (version "2.24.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -561,7 +562,7 @@ is part of the GNOME accessibility project.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1h8k271ad78smm41c9bmw5dc4gki0wfy324cn2g25svkp2zfvgg8")))) "0zcmsq7g4jg5dpmfzkyfpa0v6hx4119c4qwkdblzzf3l9yn91p30"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -653,7 +654,7 @@ application suites.")
(name "gtk+") (name "gtk+")
;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in
;; mate.scm will also need to be updated. ;; mate.scm will also need to be updated.
(version "3.22.12") (version "3.22.15")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -661,7 +662,7 @@ application suites.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1359w81sxs2izkan2rni985x78s6zr1arf469qmyw4bazg7f1yl4")) "1nqgb71vx222g9fd2p017948hqybnyi69xs3n2d64clim7115868"))
(patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch" (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch")))) "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
(outputs '("out" "bin" "doc")) (outputs '("out" "bin" "doc"))
@ -673,8 +674,12 @@ application suites.")
("libxcursor" ,libxcursor) ("libxcursor" ,libxcursor)
("libxi" ,libxi) ("libxi" ,libxi)
("libxinerama" ,libxinerama) ("libxinerama" ,libxinerama)
("libxkbcommon" ,libxkbcommon)
("libxdamage" ,libxdamage) ("libxdamage" ,libxdamage)
("pango" ,pango))) ("mesa" ,mesa)
("pango" ,pango)
("wayland" ,wayland)
("wayland-protocols" ,wayland-protocols)))
(inputs (inputs
`(("libxml2" ,libxml2) `(("libxml2" ,libxml2)
;; XXX: colord depends on mozjs (through polkit), which fails on ;; XXX: colord depends on mozjs (through polkit), which fails on
@ -700,7 +705,12 @@ application suites.")
;; to "doc". ;; to "doc".
#:configure-flags (list (string-append "--with-html-dir=" #:configure-flags (list (string-append "--with-html-dir="
(assoc-ref %outputs "doc") (assoc-ref %outputs "doc")
"/share/gtk-doc/html")) "/share/gtk-doc/html")
;; The header file <gdk/gdkwayland.h> is required
;; by gnome-control-center
"--enable-wayland-backend"
;; This is necessary to build both backends.
"--enable-x11-backend")
#:phases (modify-phases %standard-phases #:phases (modify-phases %standard-phases
(add-before 'configure 'pre-configure (add-before 'configure 'pre-configure
(lambda _ (lambda _

View File

@ -54,7 +54,7 @@
(define-public feh (define-public feh
(package (package
(name "feh") (name "feh")
(version "2.18.3") (version "2.19")
(home-page "https://feh.finalrewind.org/") (home-page "https://feh.finalrewind.org/")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -62,7 +62,7 @@
name "-" version ".tar.bz2")) name "-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0qq567d0g181k6llr6p759lnni39va5xakjqngd6063fm73nhbyq")))) "1sfhr6628xpj9p6bqihdq35y139x2gmrpydjlrwsl1rs77c2bgnf"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-delete 'configure %standard-phases) '(#:phases (alist-delete 'configure %standard-phases)

View File

@ -46,14 +46,14 @@
;; The 7 release series has an incompatible API, while the 6 series is still ;; The 7 release series has an incompatible API, while the 6 series is still
;; maintained. Don't update to 7 until we've made sure that the ImageMagick ;; maintained. Don't update to 7 until we've made sure that the ImageMagick
;; users are ready for the 7-series API. ;; users are ready for the 7-series API.
(version "6.9.8-6") (version "6.9.8-9")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://imagemagick/ImageMagick-" (uri (string-append "mirror://imagemagick/ImageMagick-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1sxg2wx3nrzbymh5wcqiv1x401nrz95xkrqgk3x446vx8lq7ln6w")))) "0wr6wcmvaw62f6pkgnpqnjmp331wfwmds9wmqzr4zv53s9k1lkzn"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch")

View File

@ -102,7 +102,7 @@ irssi, but graphical.")
(define-public irssi (define-public irssi
(package (package
(name "irssi") (name "irssi")
(version "1.0.2") (version "1.0.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/irssi/irssi/" (uri (string-append "https://github.com/irssi/irssi/"
@ -110,7 +110,7 @@ irssi, but graphical.")
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1sgvfprgrncbxcyg99rkd10kpjzqw00b1ppsfg8al0zirb13q72w")))) "10gmmxk5jgyigarks177nyvzb0lsfxcm00015p2cirybgllj10l3"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases

View File

@ -0,0 +1,85 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages javascript)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages fonts)
#:use-module (gnu packages lisp)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system trivial))
(define-public js-mathjax
(package
(inherit font-mathjax)
(name "js-mathjax")
(arguments
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils)
(ice-9 match)
(ice-9 popen)
(ice-9 regex))
(set-path-environment-variable
"PATH" '("bin") (map (match-lambda
((_ . input)
input))
%build-inputs))
(set-path-environment-variable
"GUIX_LOCPATH" '("lib/locale")
(list (assoc-ref %build-inputs "glibc-utf8-locales")))
(setenv "LANG" "en_US.UTF-8")
(let ((install-directory (string-append %output "/share/javascript/mathjax")))
(system* "tar" "xvf" (assoc-ref %build-inputs "source")
"MathJax-2.7.1/unpacked" "--strip" "2")
(mkdir-p install-directory)
(symlink (string-append (assoc-ref %build-inputs "font-mathjax")
"/share/fonts/mathjax")
(string-append install-directory "/fonts"))
(for-each
(lambda (file)
(let ((installed (string-append install-directory
;; remove prefix "."
(string-drop file 1))))
(format #t "~a -> ~a~%" file installed)
(cond
((string-match "\\.js$" file)
(mkdir-p (dirname installed))
(let ((minified (open-pipe* OPEN_READ "uglify-js" file)))
(call-with-output-file installed
(lambda (port)
(dump-port minified port)))))
(else
(install-file file (dirname installed))))))
(find-files "."))))))
(native-inputs
`(("font-mathjax" ,font-mathjax)
("glibc-utf8-locales" ,glibc-utf8-locales)
("uglify-js" ,uglify-js)
,@(package-native-inputs font-mathjax)))
(synopsis "JavaScript display engine for LaTeX, MathML, and AsciiMath")
(description "MathJax is a JavaScript display engine for LaTeX, MathML,
and AsciiMath notation that works in all modern browsers. It requires no
plugins or software to be installed on the browser. So the page author can
write web documents that include mathematics and be confident that readers will
be able to view it naturally and easily.")))

View File

@ -1043,7 +1043,7 @@ packet filter.")
(define-public iproute (define-public iproute
(package (package
(name "iproute2") (name "iproute2")
(version "4.10.0") (version "4.11.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -1051,7 +1051,7 @@ packet filter.")
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1a59y1zkddvr7z0lh2y9iasbh9wpfc1n39p56xcd6jkhzk0y3c92")))) "09l0phf09mw17bn3xlzfr80sbhw14mq8xv28iz5x15m6pll10rvj"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no test suite `(#:tests? #f ; no test suite
@ -1291,15 +1291,16 @@ transparently through a bridge.")
(define-public libnl (define-public libnl
(package (package
(name "libnl") (name "libnl")
(version "3.2.25") (version "3.3.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"http://www.infradead.org/~tgr/libnl/files/libnl-" "https://github.com/thom311/libnl/releases/download/"
version ".tar.gz")) "libnl" (string-join (string-split version #\.) "_")
"/libnl-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1icfrv8yihcb74as1gcgmp0wfpdq632q2zvbvqqvjms9cy87bswb")))) "1r3lw3hjvqxi5zqyq2w1qadm3gisd9nlf71dkl4yplacmssnhm3h"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("flex" ,flex) ("bison" ,bison))) (native-inputs `(("flex" ,flex) ("bison" ,bison)))
(home-page "http://www.infradead.org/~tgr/libnl/") (home-page "http://www.infradead.org/~tgr/libnl/")
@ -2801,7 +2802,7 @@ Bluetooth audio output devices like headphones or loudspeakers.")
(define-public bluez (define-public bluez
(package (package
(name "bluez") (name "bluez")
(version "5.44") (version "5.45")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -2809,7 +2810,7 @@ Bluetooth audio output devices like headphones or loudspeakers.")
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"11bc6pndivd0rkqr3c8a1xd9ar9bb60gx79piskycicb3wliwchc")))) "1sb4aflgyrl7apricjipa8wx95qm69yja0lmn2f19g560c3v1b2c"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags '(#:configure-flags
@ -2861,7 +2862,7 @@ is flexible, efficient and uses a modular implementation.")
(define-public fuse-exfat (define-public fuse-exfat
(package (package
(name "fuse-exfat") (name "fuse-exfat")
(version "1.2.6") (version "1.2.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -2869,7 +2870,7 @@ is flexible, efficient and uses a modular implementation.")
version "/" name "-" version ".tar.gz")) version "/" name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1rvq4hapy2anal1vg1yidv4x8rg4iw5sxfwqixkw0q2qsxb54471")))) "0df0ccnd0dgwc6rvk9qmrz0nfb8whc5s3wg9qnw1mzbrh4rcvhw2"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))

View File

@ -1089,7 +1089,7 @@ facilities for checking incoming mail.")
(define-public dovecot (define-public dovecot
(package (package
(name "dovecot") (name "dovecot")
(version "2.2.30.1") (version "2.2.30.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1097,7 +1097,7 @@ facilities for checking incoming mail.")
(version-major+minor version) "/" (version-major+minor version) "/"
name "-" version ".tar.gz")) name "-" version ".tar.gz"))
(sha256 (base32 (sha256 (base32
"1943n0b9zcwvymslai9qmdmnfy47zdnqjwkql586imycyx4xnjch")))) "17hqhzfqlk08d20x9rwi0lyvy13pc0x8sr1zcg89vapf3jfagnzk"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))

View File

@ -61,7 +61,7 @@
(define-public mate-themes (define-public mate-themes
(package (package
(name "mate-themes") (name "mate-themes")
(version "3.22.10") (version "3.22.11")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://pub.mate-desktop.org/releases/themes/" (uri (string-append "http://pub.mate-desktop.org/releases/themes/"
@ -69,7 +69,7 @@
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"03ficjfxa4qpx4vcshhk2zxryivckxpw7wcjgbn8xqnjk3lgzjcb")))) "1gfa1cny3q68y139m96iz8haiik6ygad5613gx0m4wd9hi5scafm"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)

View File

@ -2047,7 +2047,7 @@ to BMP, JPEG or PNG image formats.")
(define-public maxima (define-public maxima
(package (package
(name "maxima") (name "maxima")
(version "5.39.0") (version "5.40.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2055,7 +2055,7 @@ to BMP, JPEG or PNG image formats.")
version "-source/" name "-" version ".tar.gz")) version "-source/" name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1cvignn5y6qzrby6qb885yc8zdcdqdr1d50vcvc3gapw2f0gk3zm")) "15pp35ayglv723bjbqc60gcdv2bm54s6pywsm4i4cwbjsf64dzkl"))
(patches (search-patches "maxima-defsystem-mkdir.patch")))) (patches (search-patches "maxima-defsystem-mkdir.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs

View File

@ -48,7 +48,7 @@ FAT-specific file attributes.")
(define-public exfat-utils (define-public exfat-utils
(package (package
(name "exfat-utils") (name "exfat-utils")
(version "1.2.6") (version "1.2.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -56,7 +56,7 @@ FAT-specific file attributes.")
version "/" name "-" version ".tar.gz")) version "/" name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0hxcz0y3rd79nycjlzaca9wh9qj64rw8rzm0xk4jk9ljry96csxr")))) "1r7z3n1zxkvlqf1wv7pg0jwlr1144wznd0slfckpsb5rap8k4q9q"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(home-page "https://github.com/relan/exfat") (home-page "https://github.com/relan/exfat")
(synopsis "Utilities to manipulate exFAT file systems") (synopsis "Utilities to manipulate exFAT file systems")

View File

@ -306,14 +306,14 @@ receiving NDP messages.")
(define-public ethtool (define-public ethtool
(package (package
(name "ethtool") (name "ethtool")
(version "4.10") (version "4.11")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://kernel.org/software/network/" (uri (string-append "mirror://kernel.org/software/network/"
name "/" name "-" version ".tar.xz")) name "/" name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1fklbjwr41cvd5b7d1qvpl3bqzc4aak732r3m2wjhhgkxhk9f07h")))) "1cp132kk2xd2cwn1ysjv0cl8i9lnq3n4zi4wy676p5k4h2mfvn0j"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(home-page "https://www.kernel.org/pub/software/network/ethtool/") (home-page "https://www.kernel.org/pub/software/network/ethtool/")
(synopsis "Display or change Ethernet device settings") (synopsis "Display or change Ethernet device settings")

View File

@ -448,6 +448,10 @@ written in Objective Caml.")
(sha256 (sha256
(base32 (base32
"0wyywia0darak2zmc5v0ra9rn0b9whwdfiahralm8v5za499s8w3")))) "0wyywia0darak2zmc5v0ra9rn0b9whwdfiahralm8v5za499s8w3"))))
(native-search-paths
(list (search-path-specification
(variable "COQPATH")
(files (list "lib/coq/user-contrib")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("texlive" ,texlive) `(("texlive" ,texlive)
@ -2907,3 +2911,245 @@ the expected output.")
(synopsis "Standard Jane Street ppx rewriters") (synopsis "Standard Jane Street ppx rewriters")
(description "Ppx_jane is a ppx_driver including all standard ppx rewriters.") (description "Ppx_jane is a ppx_driver including all standard ppx rewriters.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public ocaml-core-kernel
(package
(name "ocaml-core-kernel")
(version "113.33.03")
(source (janestreet-origin "core_kernel" version
"0fl23jrwivixawhxinbwaw9cabqnzn7fini7dxpxjjvkxdc8ip5y"))
(native-inputs
`(("js-build-tools" ,ocaml-js-build-tools)
("ppx-jane" ,ocaml-ppx-jane)
("opam" ,opam)))
(propagated-inputs
`(("bin_prot" ,ocaml-bin-prot)
("ppx-assert" ,ocaml-ppx-assert)
("ppx-bench" ,ocaml-ppx-bench)
("ppx-driver" ,ocaml-ppx-driver)
("ppx-expect" ,ocaml-ppx-expect)
("ppx-inline-test" ,ocaml-ppx-inline-test)
("typerep" ,ocaml-typerep)
("sexplib" ,ocaml-sexplib)
("variantslib" ,ocaml-variantslib)
("result" ,ocaml-result)
("fieldslib" ,ocaml-fieldslib)))
(build-system ocaml-build-system)
(arguments janestreet-arguments)
(home-page "https://github.com/janestreet/core_kernel/")
(synopsis "Portable standard library for OCaml")
(description "Core is an alternative to the OCaml standard library.
Core_kernel is the system-independent part of Core. It is aimed for cases when
the full Core is not available, such as in Javascript.")
(license license:asl2.0)))
(define-public ocaml-async-kernel
(package
(name "ocaml-async-kernel")
(version "113.33.03")
(source (janestreet-origin "async_kernel" version
"04bjsaa23j831r09r38x6xx9nhryvp0z5ihickvhxqa4fb2snyvd"))
(native-inputs
`(("oasis" ,ocaml-oasis)
("js-build-tools" ,ocaml-js-build-tools)
("ppx-jane" ,ocaml-ppx-jane)
("opam" ,opam)))
(propagated-inputs
`(("core-kernel" ,ocaml-core-kernel)))
(build-system ocaml-build-system)
(arguments janestreet-arguments)
(home-page "https://github.com/janestreet/async_kernel/")
(synopsis "Monadic concurrency library")
(description "Async-kernel is a library for concurrent programming in OCaml.")
(license license:asl2.0)))
(define-public ocaml-async-rpc-kernel
(package
(name "ocaml-async-rpc-kernel")
(version "113.33.03")
(source (janestreet-origin "async_rpc_kernel" version
"0y97h9pkb00v7jpf87m8cbb0ffkclj9g26ph6sq97q8dpisnkjwh"))
(native-inputs
`(("oasis" ,ocaml-oasis)
("js-build-tools" ,ocaml-js-build-tools)
("ppx-jane" ,ocaml-ppx-jane)
("opam" ,opam)))
(propagated-inputs
`(("async-kernel" ,ocaml-async-kernel)))
(build-system ocaml-build-system)
(arguments janestreet-arguments)
(home-page "https://github.com/janestreet/async_rpc_kernel/")
(synopsis "Platform-independent core of the Async RPC library")
(description "Async_rpc_kernel is the platform-independent core of
the Async RPC library.")
(license license:asl2.0)))
(define-public ocaml-core
(package
(name "ocaml-core")
(version "113.33.03")
(source (janestreet-origin "core" version
"1znll157qg56g9d3247fjibv1hxv3r9wxgr4nhy19j2vzdh6a268"))
(native-inputs
`(("oasis" ,ocaml-oasis)
("js-build-tools" ,ocaml-js-build-tools)
("ppx-jane" ,ocaml-ppx-jane)
("opam" ,opam)))
(propagated-inputs
`(("core-kernel" ,ocaml-core-kernel)))
(build-system ocaml-build-system)
(arguments janestreet-arguments)
(home-page "https://github.com/janestreet/core/")
(synopsis "Alternative to OCaml's standard library")
(description "The Core suite of libraries is an alternative to OCaml's
standard library that was developed by Jane Street.")
(license license:asl2.0)))
(define-public ocaml-async-unix
(package
(name "ocaml-async-unix")
(version "113.33.03")
(source (janestreet-origin "async_unix" version
"1fwl0lfrizllcfjk8hk8m7lsz9ha2jg6qgk4gssfyz377qvpcq4h"))
(native-inputs
`(("oasis" ,ocaml-oasis)
("js-build-tools" ,ocaml-js-build-tools)
("ppx-jane" ,ocaml-ppx-jane)
("opam" ,opam)))
(propagated-inputs
`(("async-kernel" ,ocaml-async-kernel)
("core" ,ocaml-core)))
(build-system ocaml-build-system)
(arguments janestreet-arguments)
(home-page "https://github.com/janestreet/async_unix")
(synopsis "Asynchronous execution library for Unix")
(description "Async_unix is an asynchronous execution library for Unix.")
(license license:asl2.0)))
(define-public ocaml-async-extra
(package
(name "ocaml-async-extra")
(version "113.33.03")
(source (janestreet-origin "async_extra" version
"1si8jgiq5xh5sl9f2b7f9p17p7zx5h1pg557x2cxywi2x7pxqg4f"))
(native-inputs
`(("oasis" ,ocaml-oasis)
("js-build-tools" ,ocaml-js-build-tools)
("ppx-jane" ,ocaml-ppx-jane)
("opam" ,opam)))
(propagated-inputs
`(("async-rpc-kernel" ,ocaml-async-rpc-kernel)
("async-unix" ,ocaml-async-unix)
("core" ,ocaml-core)))
(build-system ocaml-build-system)
(arguments janestreet-arguments)
(home-page "https://github.com/janestreet/async_extra")
(synopsis "Extra functionnalities for the async library")
(description "Async_extra provides additional functionnalities for the
async library.")
(license license:asl2.0)))
(define-public ocaml-async
(package
(name "ocaml-async")
(version "113.33.03")
(source (janestreet-origin "async" version
"0210fyhcs12kpmmd26015bgivkfd2wqkyn3c5wd7688d0f872y25"))
(native-inputs
`(("oasis" ,ocaml-oasis)
("js-build-tools" ,ocaml-js-build-tools)
("ppx-jane" ,ocaml-ppx-jane)
("opam" ,opam)))
(propagated-inputs
`(("async-extra" ,ocaml-async-extra)))
(build-system ocaml-build-system)
(arguments janestreet-arguments)
(home-page "https://github.com/janestreet/async")
(synopsis "Monadic concurrency library")
(description "Async is a library for concurrent programming in OCaml.")
(license license:asl2.0)))
(define-public ocaml-ocplib-endian
(package
(name "ocaml-ocplib-endian")
(version "1.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/OCamlPro/ocplib-endian/"
"archive/" version ".tar.gz"))
(sha256
(base32
"0hwj09rnzjs0m0kazz5h2mgs6p95j0zlga8cda5srnzqmzhniwkn"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system ocaml-build-system)
(native-inputs `(("cppo" ,ocaml-cppo)))
(home-page "https://github.com/OCamlPro/ocplib-endian")
(synopsis "Optimised functions to read and write int16/32/64 from strings
and bigarrays")
(description "Optimised functions to read and write int16/32/64 from strings
and bigarrays, based on new primitives added in version 4.01. It works on
strings, bytes and bigstring (Bigarrys of chars), and provides submodules for
big- and little-endian, with their unsafe counter-parts.")
(license license:lgpl2.1)))
(define-public ocaml-cstruct
(package
(name "ocaml-cstruct")
(version "2.3.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mirage/ocaml-cstruct/"
"archive/v" version ".tar.gz"))
(sha256
(base32
"15qpdc8421shq4pprdas9jznpva45229wkfqbwcxw9khaiiz7949"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system ocaml-build-system)
(arguments
`(#:configure-flags
(list "--enable-lwt" "--enable-async")
#:phases
(modify-phases %standard-phases
(add-after 'install 'link-stubs
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(stubs (string-append out "/lib/ocaml/site-lib/stubslibs"))
(lib (string-append out "/lib/ocaml/site-lib/cstruct")))
(mkdir-p stubs)
(symlink (string-append lib "/dllcstruct_stubs.so")
(string-append stubs "/dllcstruct_stubs.so"))))))))
(native-inputs
`(("ounit" ,ocaml-ounit)
("ppx-tools" ,ocaml-ppx-tools)
("camlp4" ,camlp4)))
(propagated-inputs
`(("ocplib-endian" ,ocaml-ocplib-endian)
("lwt" ,ocaml-lwt)
("async" ,ocaml-async)
("sexplib" ,ocaml-sexplib)))
(home-page "https://github.com/mirage/ocaml-cstruct")
(synopsis "Access C structures via a camlp4 extension")
(description "Cstruct is a library and syntax extension to make it easier
to access C-like structures directly from OCaml. It supports both reading and
writing to these structures, and they are accessed via the Bigarray module.")
(license license:isc)))
(define-public ocaml-hex
(package
(name "ocaml-hex")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mirage/ocaml-hex/"
"archive/" version ".tar.gz"))
(sha256
(base32
"0s63g0b8gfv2xm6fv6xg7bva8h76b5pcjb0zw3f8cygs0lq9072v"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system ocaml-build-system)
(propagated-inputs `(("cstruct" ,ocaml-cstruct)))
(home-page "https://github.com/mirage/ocaml-hex/")
(synopsis "Minimal library providing hexadecimal converters")
(description "Hex is a minimal library providing hexadecimal converters.")
(license license:isc)))

View File

@ -74,8 +74,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to ;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this. ;; start precisely like this.
(let ((version "0.13.0") (let ((version "0.13.0")
(commit "a6d728b7aaee09892b0b420d07ed2dbb7de5e63f") (commit "de9d8f0e295928d92e0e5ea43a4e594fa78c76fb")
(revision 1)) (revision 2))
(package (package
(name "guix") (name "guix")
@ -91,7 +91,7 @@
(commit commit))) (commit commit)))
(sha256 (sha256
(base32 (base32
"1nrskyk8z6w5i9cdfh5zxfgsrqf744sb30ssqi2g5xhijwagr1yq")) "0px7n4vajc9am3snhnnvddrmnwnb2ygwz0f8isk0qhk8b1ks4kdx"))
(file-name (string-append "guix-" version "-checkout")))) (file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments

View File

@ -1,54 +0,0 @@
Fix CVE-2017-8288:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8288
http://seclists.org/oss-sec/2017/q2/136
Patch copied from upstream source repository:
https://git.gnome.org/browse/gnome-shell/commit/?id=ff425d1db7082e2755d2a405af53861552acf2a1
From ff425d1db7082e2755d2a405af53861552acf2a1 Mon Sep 17 00:00:00 2001
From: Emilio Pozuelo Monfort <pochu27@gmail.com>
Date: Tue, 25 Apr 2017 17:27:42 +0200
Subject: extensionSystem: handle reloading broken extensions
Some extensions out there may fail to reload. When that happens,
we need to catch any exceptions so that we don't leave things in
a broken state that could lead to leaving extensions enabled in
the screen shield.
https://bugzilla.gnome.org/show_bug.cgi?id=781728
---
js/ui/extensionSystem.js | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/js/ui/extensionSystem.js b/js/ui/extensionSystem.js
index a4dc29e..fc352b8 100644
--- a/js/ui/extensionSystem.js
+++ b/js/ui/extensionSystem.js
@@ -282,12 +282,20 @@ function _onVersionValidationChanged() {
// temporarily disable them all
enabledExtensions = [];
for (let uuid in ExtensionUtils.extensions)
- reloadExtension(ExtensionUtils.extensions[uuid]);
+ try {
+ reloadExtension(ExtensionUtils.extensions[uuid]);
+ } catch(e) {
+ logExtensionError(uuid, e);
+ }
enabledExtensions = getEnabledExtensions();
if (Main.sessionMode.allowExtensions) {
enabledExtensions.forEach(function(uuid) {
- enableExtension(uuid);
+ try {
+ enableExtension(uuid);
+ } catch(e) {
+ logExtensionError(uuid, e);
+ }
});
}
}
--
cgit v0.12

View File

@ -0,0 +1,325 @@
From c87a112246e0bcbd5c3a8aa484a50c617d710dbf Mon Sep 17 00:00:00 2001
From: Philip Withnall <philip.withnall@collabora.co.uk>
Date: Fri, 12 Dec 2014 17:31:01 +0000
Subject: [PATCH] tests: Eliminate ISO 8601 formatting workaround for dates
Follow up to commit 732017e4e5235e28c578cc3367fa0c4548b65495.
https://bugzilla.gnome.org/show_bug.cgi?id=739956
---
gdata/tests/calendar.c | 20 ++++++++++----------
gdata/tests/general.c | 34 +++++++++++++++++-----------------
gdata/tests/tasks.c | 34 +++++++++++++++++-----------------
gdata/tests/youtube.c | 16 ++++++++--------
4 files changed, 52 insertions(+), 52 deletions(-)
diff --git a/gdata/tests/calendar.c b/gdata/tests/calendar.c
index bb1d609..c54ddda 100644
--- a/gdata/tests/calendar.c
+++ b/gdata/tests/calendar.c
@@ -620,7 +620,7 @@ test_event_xml (void)
"<gCal:guestsCanInviteOthers value='false'/>"
"<gCal:guestsCanSeeGuests value='false'/>"
"<gCal:anyoneCanAddSelf value='false'/>"
- "<gd:when startTime='2009-04-17T15:00:00.000001+00:00' endTime='2009-04-17T17:00:00.000001+00:00'/>"
+ "<gd:when startTime='2009-04-17T15:00:00Z' endTime='2009-04-17T17:00:00Z'/>"
"<gd:who email='john.smith@example.com' "
"rel='http://schemas.google.com/g/2005#event.organizer' "
"valueString='John Smith\342\200\275'/>"
@@ -706,7 +706,7 @@ test_event_xml_dates (void)
"<gCal:guestsCanSeeGuests value='false'/>"
"<gCal:anyoneCanAddSelf value='false'/>"
"<gd:when startTime='2009-04-17'/>"
- "<gd:when startTime='2009-04-17T15:00:00.000001+00:00'/>"
+ "<gd:when startTime='2009-04-17T15:00:00Z'/>"
"<gd:when startTime='2009-04-27' endTime='2009-05-06'/>"
"</entry>");
@@ -934,25 +934,25 @@ test_query_uri (void)
/* Check the built query URI with a normal feed URI */
query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com");
- g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&futureevents=true&orderby=starttime&recurrence-expansion-start=2009-04-17T15:00:00.000001+00:00"
- "&recurrence-expansion-end=2010-04-17T15:00:00.000001+00:00&singleevents=true&sortorder=descending"
- "&start-min=2009-04-17T15:00:00.000001+00:00&start-max=2010-04-17T15:00:00.000001+00:00&ctz=America%2FLos_Angeles&max-attendees=15"
+ g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&futureevents=true&orderby=starttime&recurrence-expansion-start=2009-04-17T15:00:00Z"
+ "&recurrence-expansion-end=2010-04-17T15:00:00Z&singleevents=true&sortorder=descending"
+ "&start-min=2009-04-17T15:00:00Z&start-max=2010-04-17T15:00:00Z&ctz=America%2FLos_Angeles&max-attendees=15"
"&showdeleted=true");
g_free (query_uri);
/* …with a feed URI with a trailing slash */
query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com/");
- g_assert_cmpstr (query_uri, ==, "http://example.com/?q=q&futureevents=true&orderby=starttime&recurrence-expansion-start=2009-04-17T15:00:00.000001+00:00"
- "&recurrence-expansion-end=2010-04-17T15:00:00.000001+00:00&singleevents=true&sortorder=descending"
- "&start-min=2009-04-17T15:00:00.000001+00:00&start-max=2010-04-17T15:00:00.000001+00:00&ctz=America%2FLos_Angeles&max-attendees=15"
+ g_assert_cmpstr (query_uri, ==, "http://example.com/?q=q&futureevents=true&orderby=starttime&recurrence-expansion-start=2009-04-17T15:00:00Z"
+ "&recurrence-expansion-end=2010-04-17T15:00:00Z&singleevents=true&sortorder=descending"
+ "&start-min=2009-04-17T15:00:00Z&start-max=2010-04-17T15:00:00Z&ctz=America%2FLos_Angeles&max-attendees=15"
"&showdeleted=true");
g_free (query_uri);
/* …with a feed URI with pre-existing arguments */
query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com/bar/?test=test&this=that");
g_assert_cmpstr (query_uri, ==, "http://example.com/bar/?test=test&this=that&q=q&futureevents=true&orderby=starttime"
- "&recurrence-expansion-start=2009-04-17T15:00:00.000001+00:00&recurrence-expansion-end=2010-04-17T15:00:00.000001+00:00"
- "&singleevents=true&sortorder=descending&start-min=2009-04-17T15:00:00.000001+00:00&start-max=2010-04-17T15:00:00.000001+00:00"
+ "&recurrence-expansion-start=2009-04-17T15:00:00Z&recurrence-expansion-end=2010-04-17T15:00:00Z"
+ "&singleevents=true&sortorder=descending&start-min=2009-04-17T15:00:00Z&start-max=2010-04-17T15:00:00Z"
"&ctz=America%2FLos_Angeles&max-attendees=15&showdeleted=true");
g_free (query_uri);
diff --git a/gdata/tests/general.c b/gdata/tests/general.c
index 237a908..f828d2e 100644
--- a/gdata/tests/general.c
+++ b/gdata/tests/general.c
@@ -528,8 +528,8 @@ test_entry_parse_xml (void)
"<?xml version='1.0' encoding='UTF-8'?>"
"<entry xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' xmlns:ns='http://example.com/'>"
"<title type='text'>Testing unhandled XML</title>"
- "<updated>2009-01-25T14:07:37.000001+00:00</updated>"
- "<published>2009-01-23T14:06:37.000001+00:00</published>"
+ "<updated>2009-01-25T14:07:37Z</updated>"
+ "<published>2009-01-23T14:06:37Z</published>"
"<content type='text'>Here we test unhandled XML elements.</content>"
"<foobar>Test!</foobar>"
"<barfoo shizzle=\"zing\"/>"
@@ -569,8 +569,8 @@ test_entry_parse_xml_kind_category (void)
"<?xml version='1.0' encoding='UTF-8'?>"
"<entry xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005'>"
"<title type='text'>Testing kind categories</title>"
- "<updated>2009-01-25T14:07:37.000001+00:00</updated>"
- "<published>2009-01-23T14:06:37.000001+00:00</published>"
+ "<updated>2009-01-25T14:07:37Z</updated>"
+ "<published>2009-01-23T14:06:37Z</published>"
"<content type='text'>Here we test kind categories.</content>"
"<category term='http://schemas.google.com/docs/2007#file' "
"scheme='http://schemas.google.com/g/2005#kind' "
@@ -620,7 +620,7 @@ test_entry_parse_json (void)
"{"
"\"title\":\"A title\","
"\"id\":\"some-id\","
- "\"updated\":\"2009-01-25T14:07:37.000001+00:00\","
+ "\"updated\":\"2009-01-25T14:07:37Z\","
"\"etag\":\"some-etag\","
"\"selfLink\":\"http://example.com/\","
"\"kind\":\"kind#kind\","
@@ -760,8 +760,8 @@ test_entry_escaping (void)
"<entry xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005'>"
"<title type='text'>Escaped content &amp; stuff</title>"
"<id>http://foo.com/?foo&amp;bar</id>"
- "<updated>2010-12-10T17:21:24.000001+00:00</updated>"
- "<published>2010-12-10T17:21:24.000001+00:00</published>"
+ "<updated>2010-12-10T17:21:24Z</updated>"
+ "<published>2010-12-10T17:21:24Z</published>"
"<summary type='text'>Summary &amp; stuff</summary>"
"<rights>Free &amp; open source</rights>"
"<content type='text'>Content &amp; things.</content>"
@@ -1106,7 +1106,7 @@ test_feed_escaping (void)
"<feed xmlns='http://www.w3.org/2005/Atom'>"
"<title type='text'>Test feed &amp; stuff.</title>"
"<id>http://foo.com?foo&amp;bar</id>"
- "<updated>2010-12-10T17:49:15.000001+00:00</updated>"
+ "<updated>2010-12-10T17:49:15Z</updated>"
"</feed>");
g_object_unref (feed);
}
@@ -1157,28 +1157,28 @@ test_query_dates (void)
/* updated-min */
gdata_query_set_updated_min (query, 1373280114); /* 2013-07-08T10:41:54Z */
query_uri = gdata_query_get_query_uri (query, "http://example.com");
- g_assert_cmpstr (query_uri, ==, "http://example.com?q=baz&updated-min=2013-07-08T10:41:54.000001+00:00");
+ g_assert_cmpstr (query_uri, ==, "http://example.com?q=baz&updated-min=2013-07-08T10:41:54Z");
g_free (query_uri);
gdata_query_set_updated_min (query, -1);
/* updated-max */
gdata_query_set_updated_max (query, 1373280114); /* 2013-07-08T10:41:54Z */
query_uri = gdata_query_get_query_uri (query, "http://example.com");
- g_assert_cmpstr (query_uri, ==, "http://example.com?q=baz&updated-max=2013-07-08T10:41:54.000001+00:00");
+ g_assert_cmpstr (query_uri, ==, "http://example.com?q=baz&updated-max=2013-07-08T10:41:54Z");
g_free (query_uri);
gdata_query_set_updated_max (query, -1);
/* published-min */
gdata_query_set_published_min (query, 1373280114); /* 2013-07-08T10:41:54Z */
query_uri = gdata_query_get_query_uri (query, "http://example.com");
- g_assert_cmpstr (query_uri, ==, "http://example.com?q=baz&published-min=2013-07-08T10:41:54.000001+00:00");
+ g_assert_cmpstr (query_uri, ==, "http://example.com?q=baz&published-min=2013-07-08T10:41:54Z");
g_free (query_uri);
gdata_query_set_published_min (query, -1);
/* published-max */
gdata_query_set_published_max (query, 1373280114); /* 2013-07-08T10:41:54Z */
query_uri = gdata_query_get_query_uri (query, "http://example.com");
- g_assert_cmpstr (query_uri, ==, "http://example.com?q=baz&published-max=2013-07-08T10:41:54.000001+00:00");
+ g_assert_cmpstr (query_uri, ==, "http://example.com?q=baz&published-max=2013-07-08T10:41:54Z");
g_free (query_uri);
gdata_query_set_published_max (query, -1);
@@ -3127,7 +3127,7 @@ test_gd_reminder (void)
gdata_test_assert_xml (reminder,
"<?xml version='1.0' encoding='UTF-8'?>"
"<gd:reminder xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' "
- "absoluteTime='2005-06-07T00:55:00.000001+00:00' method='alert'/>");
+ "absoluteTime='2005-06-07T00:55:00Z' method='alert'/>");
g_object_unref (reminder);
}
@@ -3218,8 +3218,8 @@ test_gd_when (void)
/* Check the outputted XML is the same */
gdata_test_assert_xml (when,
"<?xml version='1.0' encoding='UTF-8'?>"
- "<gd:when xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' startTime='2005-06-07T01:00:00.000001+00:00' "
- "endTime='2005-06-07T02:00:00.000001+00:00'/>");
+ "<gd:when xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' startTime='2005-06-07T01:00:00Z' "
+ "endTime='2005-06-07T02:00:00Z'/>");
g_object_unref (when);
/* Now parse a time with different information */
@@ -3258,7 +3258,7 @@ test_gd_when (void)
"<gd:when xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' startTime='2005-06-06' "
"endTime='2005-06-08' valueString='This weekend'>"
"<gd:reminder minutes='15'/>"
- "<gd:reminder absoluteTime='2005-06-06T00:00:00.000001+00:00' method='alert'/>"
+ "<gd:reminder absoluteTime='2005-06-06T00:00:00Z' method='alert'/>"
"<foobar/>"
"</gd:when>");
g_object_unref (when);
@@ -3278,7 +3278,7 @@ test_gd_when_escaping (void)
gdata_test_assert_xml (when,
"<?xml version='1.0' encoding='UTF-8'?>"
"<gd:when xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' "
- "startTime='2005-06-07T01:00:00.000001+00:00' valueString='Value string &amp; stuff!'/>");
+ "startTime='2005-06-07T01:00:00Z' valueString='Value string &amp; stuff!'/>");
g_object_unref (when);
}
diff --git a/gdata/tests/tasks.c b/gdata/tests/tasks.c
index 7a5bc7e..7bf3174 100644
--- a/gdata/tests/tasks.c
+++ b/gdata/tests/tasks.c
@@ -122,11 +122,11 @@ test_query_uri (void)
g_assert_cmpstr (query_uri, ==,
"http://example.com"
"?maxResults=10"
- "&updatedMin=1970-01-01T01:53:09.000001+00:00"
- "&completedMin=1970-01-01T01:34:38.000001+00:00"
- "&completedMax=1970-01-01T00:20:34.000001+00:00"
- "&dueMin=1970-01-01T00:39:05.000001+00:00"
- "&dueMax=1970-01-01T00:57:36.000001+00:00"
+ "&updatedMin=1970-01-01T01:53:09Z"
+ "&completedMin=1970-01-01T01:34:38Z"
+ "&completedMax=1970-01-01T00:20:34Z"
+ "&dueMin=1970-01-01T00:39:05Z"
+ "&dueMax=1970-01-01T00:57:36Z"
"&showCompleted=true"
"&showDeleted=true"
"&showHidden=true");
@@ -148,11 +148,11 @@ test_query_uri (void)
g_assert_cmpstr (query_uri, ==,
"http://example.com"
"?maxResults=10"
- "&updatedMin=1970-01-01T01:53:09.000001+00:00"
- "&completedMin=1970-01-01T01:34:38.000001+00:00"
- "&completedMax=1970-01-01T00:20:34.000001+00:00"
- "&dueMin=1970-01-01T00:39:05.000001+00:00"
- "&dueMax=1970-01-01T00:57:36.000001+00:00"
+ "&updatedMin=1970-01-01T01:53:09Z"
+ "&completedMin=1970-01-01T01:34:38Z"
+ "&completedMax=1970-01-01T00:20:34Z"
+ "&dueMin=1970-01-01T00:39:05Z"
+ "&dueMax=1970-01-01T00:57:36Z"
"&showCompleted=false"
"&showDeleted=false"
"&showHidden=false");
@@ -317,8 +317,8 @@ test_task_properties (void)
"\"title\": \"some-other-title\","
"\"notes\": \"more-notes\","
"\"status\": \"completed\","
- "\"due\": \"2014-08-30T17:20:00.000001+00:00\","
- "\"completed\": \"2014-08-30T17:20:00.000001+00:00\","
+ "\"due\": \"2014-08-30T17:20:00Z\","
+ "\"completed\": \"2014-08-30T17:20:00Z\","
"\"deleted\": true,"
"\"hidden\": false"
"}");
@@ -332,8 +332,8 @@ test_task_properties (void)
"\"title\": \"some-other-title\","
"\"notes\": \"more-notes\","
"\"status\": \"completed\","
- "\"due\": \"2014-08-30T17:20:00.000001+00:00\","
- "\"completed\": \"2014-08-30T17:20:00.000001+00:00\","
+ "\"due\": \"2014-08-30T17:20:00Z\","
+ "\"completed\": \"2014-08-30T17:20:00Z\","
"\"deleted\": false,"
"\"hidden\": false"
"}");
@@ -496,14 +496,14 @@ test_task_parser_normal (void)
"\"id\": \"some-id\","
"\"etag\": \"some-etag\","
"\"title\": \"some-title \\\"with quotes\\\"\","
- "\"updated\": \"2014-08-30T19:40:00.000001+00:00\","
+ "\"updated\": \"2014-08-30T19:40:00Z\","
"\"selfLink\": \"http://some-uri/\","
"\"parent\": \"some-parent-id\","
"\"position\": \"some-position\","
"\"notes\": \"Some notes!\","
"\"status\": \"needsAction\","
- "\"due\": \"2014-08-30T20:00:00.000001+00:00\","
- "\"completed\": \"2014-08-30T20:10:05.000001+00:00\","
+ "\"due\": \"2014-08-30T20:00:00Z\","
+ "\"completed\": \"2014-08-30T20:10:05Z\","
"\"deleted\": false,"
"\"hidden\": true,"
/* Unhandled for the moment: */
diff --git a/gdata/tests/youtube.c b/gdata/tests/youtube.c
index a1e070a..1195bc3 100644
--- a/gdata/tests/youtube.c
+++ b/gdata/tests/youtube.c
@@ -967,8 +967,8 @@ test_parsing_yt_recorded (void)
"gd:etag='W/\"CEMFSX47eCp7ImA9WxVUGEw.\"'>"
"<title type='text'>Judas Priest - Painkiller</title>"
"<id>tag:youtube.com,2008:video:JAagedeKdcQ</id>"
- "<updated>2009-03-23T12:46:58.000001+00:00</updated>"
- "<published>2006-05-16T14:06:37.000001+00:00</published>"
+ "<updated>2009-03-23T12:46:58Z</updated>"
+ "<published>2006-05-16T14:06:37Z</published>"
"<category term='http://gdata.youtube.com/schemas/2007#video' scheme='http://schemas.google.com/g/2005#kind'/>"
"<link href='http://www.youtube.com/watch?v=JAagedeKdcQ' rel='http://www.iana.org/assignments/relation/alternate' type='text/html'/>"
"<link href='http://gdata.youtube.com/feeds/api/videos/JAagedeKdcQ?client=ytapi-google-jsdemo' rel='http://www.iana.org/assignments/relation/self' type='application/atom+xml'/>"
@@ -1055,8 +1055,8 @@ test_parsing_yt_access_control (void)
"gd:etag='W/\"CEMFSX47eCp7ImA9WxVUGEw.\"'>"
"<title type='text'>Judas Priest - Painkiller</title>"
"<id>tag:youtube.com,2008:video:JAagedeKdcQ</id>"
- "<updated>2009-03-23T12:46:58.000001+00:00</updated>"
- "<published>2006-05-16T14:06:37.000001+00:00</published>"
+ "<updated>2009-03-23T12:46:58Z</updated>"
+ "<published>2006-05-16T14:06:37Z</published>"
"<category term='http://gdata.youtube.com/schemas/2007#video' scheme='http://schemas.google.com/g/2005#kind'/>"
"<link href='http://www.youtube.com/watch?v=JAagedeKdcQ' rel='http://www.iana.org/assignments/relation/alternate' type='text/html'/>"
"<link href='http://gdata.youtube.com/feeds/api/videos/JAagedeKdcQ?client=ytapi-google-jsdemo' rel='http://www.iana.org/assignments/relation/self' type='application/atom+xml'/>"
@@ -1255,8 +1255,8 @@ test_parsing_georss_where (void)
"xmlns:gml='http://www.opengis.net/gml'>"
"<title type='text'>Some video somewhere</title>"
"<id>tag:youtube.com,2008:video:JAagedeKdcQ</id>"
- "<updated>2009-03-23T12:46:58.000001+00:00</updated>"
- "<published>2006-05-16T14:06:37.000001+00:00</published>"
+ "<updated>2009-03-23T12:46:58Z</updated>"
+ "<published>2006-05-16T14:06:37Z</published>"
"<category term='http://gdata.youtube.com/schemas/2007#video' scheme='http://schemas.google.com/g/2005#kind'/>"
"<link href='http://www.youtube.com/watch?v=JAagedeKdcQ' rel='http://www.iana.org/assignments/relation/alternate' type='text/html'/>"
"<link href='http://gdata.youtube.com/feeds/api/videos/JAagedeKdcQ?client=ytapi-google-jsdemo' rel='http://www.iana.org/assignments/relation/self' type='application/atom+xml'/>"
@@ -1295,8 +1295,8 @@ test_parsing_georss_where (void)
"xmlns:gml='http://www.opengis.net/gml'>"
"<title type='text'>Some video somewhere</title>"
"<id>tag:youtube.com,2008:video:JAagedeKdcQ</id>"
- "<updated>2009-03-23T12:46:58.000001+00:00</updated>"
- "<published>2006-05-16T14:06:37.000001+00:00</published>"
+ "<updated>2009-03-23T12:46:58Z</updated>"
+ "<published>2006-05-16T14:06:37Z</published>"
"<category term='http://gdata.youtube.com/schemas/2007#video' scheme='http://schemas.google.com/g/2005#kind'/>"
"<link href='http://www.youtube.com/watch?v=JAagedeKdcQ' rel='http://www.iana.org/assignments/relation/alternate' type='text/html'/>"
"<link href='http://gdata.youtube.com/feeds/api/videos/JAagedeKdcQ?client=ytapi-google-jsdemo' rel='http://www.iana.org/assignments/relation/self' type='application/atom+xml'/>"
--
1.9.3

View File

@ -0,0 +1,16 @@
diff -ur a/gdata/tests/oauth1-authorizer.c b/gdata/tests/oauth1-authorizer.c
--- a/gdata/tests/oauth1-authorizer.c 1969-12-31 19:00:00.000000000 -0500
+++ b/gdata/tests/oauth1-authorizer.c 2017-05-27 19:35:30.551725678 -0400
@@ -1045,10 +1045,10 @@
/* Sync request-authentication-uri tests */
g_test_add ("/oauth1-authorizer/request-authentication-uri/sync", OAuth1AuthorizerData, NULL, set_up_oauth1_authorizer_data,
test_oauth1_authorizer_request_authentication_uri_sync, tear_down_oauth1_authorizer_data);
- g_test_add ("/oauth1-authorizer/request-authentication-uri/sync/multiple-domains", OAuth1AuthorizerData, NULL,
+ g_test_add ("/oauth1-authorizer/request-authentication-uri/sync/multiple-domains1", OAuth1AuthorizerData, NULL,
set_up_oauth1_authorizer_data_multiple_domains, test_oauth1_authorizer_request_authentication_uri_sync,
tear_down_oauth1_authorizer_data);
- g_test_add ("/oauth1-authorizer/request-authentication-uri/sync/multiple-domains", OAuth1AuthorizerData, NULL,
+ g_test_add ("/oauth1-authorizer/request-authentication-uri/sync/multiple-domains2", OAuth1AuthorizerData, NULL,
set_up_oauth1_authorizer_data_locale, test_oauth1_authorizer_request_authentication_uri_sync,
tear_down_oauth1_authorizer_data);
g_test_add ("/oauth1-authorizer/request-authentication-uri/sync/cancellation", OAuth1AuthorizerData, NULL,

View File

@ -0,0 +1,31 @@
Fix "Hostname" parsing in OpenSSH config files, as reported
at <https://red.libssh.org/issues/260>.
From: Niels Ole Salscheider <niels_ole@salscheider-online.de>
Date: Mon, 8 May 2017 17:36:13 +0200
Subject: [PATCH] Fix reading of the first parameter
This is a fixup for 7b8b5eb4eac314a3a29be812bef0264c6611f6e7.
Previously, it would return as long as the parameter was _not_ seen
before. It also did not handle the case for the unsupported opcode (-1)
which would cause a segfault when accessing the "seen" array.
---
src/config.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/config.c b/src/config.c
index 7c03b27..238a655 100644
--- a/src/config.c
+++ b/src/config.c
@@ -218,8 +218,9 @@ static int ssh_config_parse_line(ssh_session session, const char *line,
}
opcode = ssh_config_get_opcode(keyword);
- if (*parsing == 1 && opcode != SOC_HOST) {
- if (seen[opcode] == 0) {
+ if (*parsing == 1 && opcode != SOC_HOST &&
+ opcode > SOC_UNSUPPORTED && opcode < SOC_END) {
+ if (seen[opcode] == 1) {
return 0;
}
seen[opcode] = 1;

View File

@ -0,0 +1,156 @@
Description: Replace deprecated FFmpeg API
Author: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
See <http://forum.openscenegraph.org/viewtopic.php?t=15832>.
--- a/src/osgPlugins/ffmpeg/FFmpegDecoderVideo.cpp
+++ b/src/osgPlugins/ffmpeg/FFmpegDecoderVideo.cpp
@@ -71,7 +71,7 @@ void FFmpegDecoderVideo::open(AVStream *
findAspectRatio();
// Find out whether we support Alpha channel
- m_alpha_channel = (m_context->pix_fmt == PIX_FMT_YUVA420P);
+ m_alpha_channel = (m_context->pix_fmt == AV_PIX_FMT_YUVA420P);
// Find out the framerate
m_frame_rate = av_q2d(stream->avg_frame_rate);
@@ -91,20 +91,19 @@ void FFmpegDecoderVideo::open(AVStream *
throw std::runtime_error("avcodec_open() failed");
// Allocate video frame
- m_frame.reset(avcodec_alloc_frame());
+ m_frame.reset(av_frame_alloc());
// Allocate converted RGB frame
- m_frame_rgba.reset(avcodec_alloc_frame());
- m_buffer_rgba[0].resize(avpicture_get_size(PIX_FMT_RGB24, width(), height()));
+ m_frame_rgba.reset(av_frame_alloc());
+ m_buffer_rgba[0].resize(avpicture_get_size(AV_PIX_FMT_RGB24, width(), height()));
m_buffer_rgba[1].resize(m_buffer_rgba[0].size());
// Assign appropriate parts of the buffer to image planes in m_frame_rgba
- avpicture_fill((AVPicture *) (m_frame_rgba).get(), &(m_buffer_rgba[0])[0], PIX_FMT_RGB24, width(), height());
+ avpicture_fill((AVPicture *) (m_frame_rgba).get(), &(m_buffer_rgba[0])[0], AV_PIX_FMT_RGB24, width(), height());
// Override get_buffer()/release_buffer() from codec context in order to retrieve the PTS of each frame.
m_context->opaque = this;
- m_context->get_buffer = getBuffer;
- m_context->release_buffer = releaseBuffer;
+ m_context->get_buffer2 = getBuffer;
}
@@ -263,8 +262,8 @@ int FFmpegDecoderVideo::convert(AVPictur
#ifdef USE_SWSCALE
if (m_swscale_ctx==0)
{
- m_swscale_ctx = sws_getContext(src_width, src_height, (PixelFormat) src_pix_fmt,
- src_width, src_height, (PixelFormat) dst_pix_fmt,
+ m_swscale_ctx = sws_getContext(src_width, src_height, (AVPixelFormat) src_pix_fmt,
+ src_width, src_height, (AVPixelFormat) dst_pix_fmt,
/*SWS_BILINEAR*/ SWS_BICUBIC, NULL, NULL, NULL);
}
@@ -311,14 +310,14 @@ void FFmpegDecoderVideo::publishFrame(co
AVPicture * const dst = (AVPicture *) m_frame_rgba.get();
// Assign appropriate parts of the buffer to image planes in m_frame_rgba
- avpicture_fill((AVPicture *) (m_frame_rgba).get(), &(m_buffer_rgba[m_writeBuffer])[0], PIX_FMT_RGB24, width(), height());
+ avpicture_fill((AVPicture *) (m_frame_rgba).get(), &(m_buffer_rgba[m_writeBuffer])[0], AV_PIX_FMT_RGB24, width(), height());
// Convert YUVA420p (i.e. YUV420p plus alpha channel) using our own routine
- if (m_context->pix_fmt == PIX_FMT_YUVA420P)
+ if (m_context->pix_fmt == AV_PIX_FMT_YUVA420P)
yuva420pToRgba(dst, src, width(), height());
else
- convert(dst, PIX_FMT_RGB24, src, m_context->pix_fmt, width(), height());
+ convert(dst, AV_PIX_FMT_RGB24, src, m_context->pix_fmt, width(), height());
// Wait 'delay' seconds before publishing the picture.
int i_delay = static_cast<int>(delay * 1000000 + 0.5);
@@ -345,7 +344,7 @@ void FFmpegDecoderVideo::publishFrame(co
void FFmpegDecoderVideo::yuva420pToRgba(AVPicture * const dst, AVPicture * const src, int width, int height)
{
- convert(dst, PIX_FMT_RGB24, src, m_context->pix_fmt, width, height);
+ convert(dst, AV_PIX_FMT_RGB24, src, m_context->pix_fmt, width, height);
const size_t bpp = 4;
@@ -363,31 +362,28 @@ void FFmpegDecoderVideo::yuva420pToRgba(
}
}
-
-
-int FFmpegDecoderVideo::getBuffer(AVCodecContext * const context, AVFrame * const picture)
+int FFmpegDecoderVideo::getBuffer(AVCodecContext * const context, AVFrame * const picture, int flags)
{
+ AVBufferRef *ref;
const FFmpegDecoderVideo * const this_ = reinterpret_cast<const FFmpegDecoderVideo*>(context->opaque);
- const int result = avcodec_default_get_buffer(context, picture);
+ const int result = avcodec_default_get_buffer2(context, picture, flags);
int64_t * p_pts = reinterpret_cast<int64_t*>( av_malloc(sizeof(int64_t)) );
*p_pts = this_->m_packet_pts;
picture->opaque = p_pts;
+ ref = av_buffer_create((uint8_t *)picture->opaque, sizeof(int64_t), FFmpegDecoderVideo::freeBuffer, picture->buf[0], flags);
+ picture->buf[0] = ref;
+
return result;
}
-
-
-void FFmpegDecoderVideo::releaseBuffer(AVCodecContext * const context, AVFrame * const picture)
+void FFmpegDecoderVideo::freeBuffer(void *opaque, uint8_t *data)
{
- if (picture != 0)
- av_freep(&picture->opaque);
-
- avcodec_default_release_buffer(context, picture);
+ AVBufferRef *ref = (AVBufferRef *)opaque;
+ av_buffer_unref(&ref);
+ av_free(data);
}
-
-
} // namespace osgFFmpeg
--- a/src/osgPlugins/ffmpeg/FFmpegDecoderVideo.hpp
+++ b/src/osgPlugins/ffmpeg/FFmpegDecoderVideo.hpp
@@ -94,8 +94,8 @@ private:
int src_pix_fmt, int src_width, int src_height);
- static int getBuffer(AVCodecContext * context, AVFrame * picture);
- static void releaseBuffer(AVCodecContext * context, AVFrame * picture);
+ static int getBuffer(AVCodecContext * context, AVFrame * picture, int flags);
+ static void freeBuffer(void * opaque, uint8_t *data);
PacketQueue & m_packets;
FFmpegClocks & m_clocks;
--- a/src/osgPlugins/ffmpeg/FFmpegParameters.cpp
+++ b/src/osgPlugins/ffmpeg/FFmpegParameters.cpp
@@ -19,7 +19,7 @@ extern "C"
#include <libavutil/pixdesc.h>
}
-inline PixelFormat osg_av_get_pix_fmt(const char *name) { return av_get_pix_fmt(name); }
+inline AVPixelFormat osg_av_get_pix_fmt(const char *name) { return av_get_pix_fmt(name); }
namespace osgFFmpeg {
--- a/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp 2016-02-18 21:25:39.627923629 +0000
+++ b/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp 2016-02-18 21:26:17.071140100 +0000
@@ -227,8 +227,7 @@
if (avcodec_open2(m_context, p_codec, NULL) < 0)
throw std::runtime_error("avcodec_open() failed");
- m_context->get_buffer = avcodec_default_get_buffer;
- m_context->release_buffer = avcodec_default_release_buffer;
+ m_context->get_buffer2 = avcodec_default_get_buffer2;
}

View File

@ -0,0 +1,173 @@
Fix CVE-2017-6512:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-6512
https://rt.cpan.org/Public/Bug/Display.html?id=121951
Patch copied from Debian, adapted to apply to the copy of File::Path in Perl
5.24.0.
https://github.com/jkeenan/File-Path/commit/e5ef95276ee8ad471c66ee574a5d42552b3a6af2
https://anonscm.debian.org/cgit/perl/perl.git/diff/debian/patches/fixes/file_path_chmod_race.diff?id=e7b50f8fb6413f8ddfbbfda2d531615fb029e2d3
From d760748be0efca7c05454440e24f3df77bf7cf5d Mon Sep 17 00:00:00 2001
From: John Lightsey <john@nixnuts.net>
Date: Tue, 2 May 2017 12:03:52 -0500
Subject: Prevent directory chmod race attack.
CVE-2017-6512 is a race condition attack where the chmod() of directories
that cannot be entered is misused to change the permissions on other
files or directories on the system. This has been corrected by limiting
the directory-permission loosening logic to systems where fchmod() is
supported.
[Backported (whitespace adjustments) to File-Path 2.12 / perl 5.24 by
Dominic Hargreaves for Debian.]
Bug: https://rt.cpan.org/Public/Bug/Display.html?id=121951
Bug-Debian: https://bugs.debian.org/863870
Patch-Name: fixes/file_path_chmod_race.diff
---
cpan/File-Path/lib/File/Path.pm | 39 +++++++++++++++++++++++++--------------
cpan/File-Path/t/Path.t | 40 ++++++++++++++++++++++++++--------------
2 files changed, 51 insertions(+), 28 deletions(-)
diff --git a/cpan/File-Path/lib/File/Path.pm b/cpan/File-Path/lib/File/Path.pm
index 034da1e..a824cc8 100644
--- a/cpan/File-Path/lib/File/Path.pm
+++ b/cpan/File-Path/lib/File/Path.pm
@@ -354,21 +354,32 @@ sub _rmtree {
# see if we can escalate privileges to get in
# (e.g. funny protection mask such as -w- instead of rwx)
- $perm &= oct '7777';
- my $nperm = $perm | oct '700';
- if (
- !(
- $arg->{safe}
- or $nperm == $perm
- or chmod( $nperm, $root )
- )
- )
- {
- _error( $arg,
- "cannot make child directory read-write-exec", $canon );
- next ROOT_DIR;
+ # This uses fchmod to avoid traversing outside of the proper
+ # location (CVE-2017-6512)
+ my $root_fh;
+ if (open($root_fh, '<', $root)) {
+ my ($fh_dev, $fh_inode) = (stat $root_fh )[0,1];
+ $perm &= oct '7777';
+ my $nperm = $perm | oct '700';
+ local $@;
+ if (
+ !(
+ $arg->{safe}
+ or $nperm == $perm
+ or !-d _
+ or $fh_dev ne $ldev
+ or $fh_inode ne $lino
+ or eval { chmod( $nperm, $root_fh ) }
+ )
+ )
+ {
+ _error( $arg,
+ "cannot make child directory read-write-exec", $canon );
+ next ROOT_DIR;
+ }
+ close $root_fh;
}
- elsif ( !chdir($root) ) {
+ if ( !chdir($root) ) {
_error( $arg, "cannot chdir to child", $canon );
next ROOT_DIR;
}
diff --git a/cpan/File-Path/t/Path.t b/cpan/File-Path/t/Path.t
index ff52fd6..956ca09 100644
--- a/cpan/File-Path/t/Path.t
+++ b/cpan/File-Path/t/Path.t
@@ -3,7 +3,7 @@
use strict;
-use Test::More tests => 127;
+use Test::More tests => 126;
use Config;
use Fcntl ':mode';
use lib 't/';
@@ -18,6 +18,13 @@ BEGIN {
my $Is_VMS = $^O eq 'VMS';
+my $fchmod_supported = 0;
+if (open my $fh, curdir()) {
+ my ($perm) = (stat($fh))[2];
+ $perm &= 07777;
+ eval { $fchmod_supported = chmod( $perm, $fh); };
+}
+
# first check for stupid permissions second for full, so we clean up
# behind ourselves
for my $perm (0111,0777) {
@@ -299,16 +306,19 @@ is($created[0], $dir, "created directory (old style 3 mode undef) cross-check");
is(rmtree($dir, 0, undef), 1, "removed directory 3 verbose undef");
-$dir = catdir($tmp_base,'G');
-$dir = VMS::Filespec::unixify($dir) if $Is_VMS;
+SKIP: {
+ skip "fchmod of directories not supported on this platform", 3 unless $fchmod_supported;
+ $dir = catdir($tmp_base,'G');
+ $dir = VMS::Filespec::unixify($dir) if $Is_VMS;
-@created = mkpath($dir, undef, 0200);
+ @created = mkpath($dir, undef, 0400);
-is(scalar(@created), 1, "created write-only dir");
+ is(scalar(@created), 1, "created read-only dir");
-is($created[0], $dir, "created write-only directory cross-check");
+ is($created[0], $dir, "created read-only directory cross-check");
-is(rmtree($dir), 1, "removed write-only dir");
+ is(rmtree($dir), 1, "removed read-only dir");
+}
# borderline new-style heuristics
if (chdir $tmp_base) {
@@ -450,26 +460,28 @@ SKIP: {
}
SKIP : {
- my $skip_count = 19;
+ my $skip_count = 18;
# this test will fail on Windows, as per:
# http://perldoc.perl.org/perlport.html#chmod
skip "Windows chmod test skipped", $skip_count
if $^O eq 'MSWin32';
+ skip "fchmod() on directories is not supported on this platform", $skip_count
+ unless $fchmod_supported;
my $mode;
my $octal_mode;
my @inputs = (
- 0777, 0700, 0070, 0007,
- 0333, 0300, 0030, 0003,
- 0111, 0100, 0010, 0001,
- 0731, 0713, 0317, 0371, 0173, 0137,
- 00 );
+ 0777, 0700, 0470, 0407,
+ 0433, 0400, 0430, 0403,
+ 0111, 0100, 0110, 0101,
+ 0731, 0713, 0317, 0371,
+ 0173, 0137);
my $input;
my $octal_input;
- $dir = catdir($tmp_base, 'chmod_test');
foreach (@inputs) {
$input = $_;
+ $dir = catdir($tmp_base, sprintf("chmod_test%04o", $input));
# We can skip from here because 0 is last in the list.
skip "Mode of 0 means assume user defaults on VMS", 1
if ($input == 0 && $Is_VMS);

View File

@ -1,46 +0,0 @@
Resolves a test compatibility issue with xorg >= 1.19.
Upstream bug report:
https://sourceforge.net/p/linuxwacom/bugs/329/
Patch copied from upstream source repository:
https://sourceforge.net/p/linuxwacom/xf86-input-wacom/ci/f0dedf7a610ac97bc45738492b98ce4f1e0514ec/
From f0dedf7a610ac97bc45738492b98ce4f1e0514ec Mon Sep 17 00:00:00 2001
From: Jason Gerecke <killertofu@gmail.com>
Date: Wed, 18 Jan 2017 09:00:10 -0800
Subject: [PATCH] tests: Fix compilation under ABI 25 and greater
diff --git a/test/fake-symbols.c b/test/fake-symbols.c
index 6f2c10a..e649fb9 100644
--- a/test/fake-symbols.c
+++ b/test/fake-symbols.c
@@ -493,6 +493,7 @@ void TimerFree(OsTimerPtr timer)
{
}
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 24
int
xf86BlockSIGIO (void)
{
@@ -503,6 +504,15 @@ void
xf86UnblockSIGIO (int wasset)
{
}
+#else
+void input_lock (void)
+{
+}
+
+void input_unlock (void)
+{
+}
+#endif
/* This is not the same as the X server one, but it'll do for the tests */
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 14
--
2.11.1

View File

@ -60,6 +60,7 @@
(base32 (base32
"0zxn9hd7mqgq06ikyi6k70ngbvjf01z1paw0jd25byyl0rlwdrzb")) "0zxn9hd7mqgq06ikyi6k70ngbvjf01z1paw0jd25byyl0rlwdrzb"))
(patches (search-patches (patches (search-patches
"perl-file-path-CVE-2017-6512.patch"
"perl-no-sys-dirs.patch" "perl-no-sys-dirs.patch"
"perl-autosplit-default-time.patch" "perl-autosplit-default-time.patch"
"perl-deterministic-ordering.patch" "perl-deterministic-ordering.patch"
@ -2986,17 +2987,17 @@ platforms.")
(define-public perl-file-path (define-public perl-file-path
(package (package
(name "perl-file-path") (name "perl-file-path")
(version "2.12") (version "2.13")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"mirror://cpan/authors/id/R/RI/RICHE/File-Path-" "mirror://cpan/authors/id/J/JK/JKEENAN/File-Path-"
version version
".tar.gz")) ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0znihrlcnlpa0ziml0hkq9s59p1bjd2a6khgx2accdf16w6imxmv")))) "039gc0i5cbdmidl8j8x195yykwcdmzwawmpapnysvljl8l33jqwj"))))
(build-system perl-build-system) (build-system perl-build-system)
(home-page "http://search.cpan.org/dist/File-Path") (home-page "http://search.cpan.org/dist/File-Path")
(synopsis "Create or remove directory trees") (synopsis "Create or remove directory trees")

View File

@ -6,6 +6,7 @@
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2015, 2016, 2017 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net> ;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -48,8 +49,7 @@
(define-public ruby (define-public ruby
(package (package
(name "ruby") (name "ruby")
(version "2.3.3") (version "2.4.0")
(replacement ruby-2.3.4)
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -58,7 +58,7 @@
"/ruby-" version ".tar.xz")) "/ruby-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1p0rfk0blrbfjcnv0vb0ha4hxflgkfhv9zbzp4vvld2pi31ahkqs")) "141nnsdk2q83c23p5kl404id8gy1ap261gin48rbjj5sbksgx1rs"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet `(begin (snippet `(begin
;; Remove bundled libffi ;; Remove bundled libffi
@ -102,11 +102,11 @@ a focus on simplicity and productivity.")
(home-page "https://ruby-lang.org") (home-page "https://ruby-lang.org")
(license license:ruby))) (license license:ruby)))
(define ruby-2.3.4 (define-public ruby-2.3
(package (package
(inherit ruby) (inherit ruby)
(name "ruby")
(version "2.3.4") (version "2.3.4")
(replacement #f)
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -447,13 +447,13 @@ expectations and mocks frameworks.")
(define-public bundler (define-public bundler
(package (package
(name "bundler") (name "bundler")
(version "1.14.6") (version "1.15.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (rubygems-uri "bundler" version)) (uri (rubygems-uri "bundler" version))
(sha256 (sha256
(base32 (base32
"0h3x2csvlz99v2ryj1w72vn6kixf7rl35lhdryvh7s49brnj0cgl")))) "1mq0n8g08vf2rnd7fvylx3f4sspx15abid49gycf9zzsjj7w8vps"))))
(build-system ruby-build-system) (build-system ruby-build-system)
(arguments (arguments
'(#:tests? #f)) ; avoid dependency cycles '(#:tests? #f)) ; avoid dependency cycles
@ -1199,13 +1199,13 @@ use GNU gettext tools for maintenance.")
(define-public ruby-test-unit (define-public ruby-test-unit
(package (package
(name "ruby-test-unit") (name "ruby-test-unit")
(version "3.1.5") (version "3.2.4")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (rubygems-uri "test-unit" version)) (uri (rubygems-uri "test-unit" version))
(sha256 (sha256
(base32 (base32
"0jxznjzwmrlp8wqjxsd06qbiddffn68pdhz6nrqpjbiln1z3af4w")))) "09mb34lnffracsqxl4dav4c21p5nr4pj9hm5qy2s83k5hbjya3s7"))))
(build-system ruby-build-system) (build-system ruby-build-system)
(propagated-inputs (propagated-inputs
`(("ruby-power-assert" ,ruby-power-assert))) `(("ruby-power-assert" ,ruby-power-assert)))
@ -1460,16 +1460,17 @@ allows mocking and stubbing of methods on real (non-mock) classes.")
(define-public ruby-net-ssh (define-public ruby-net-ssh
(package (package
(name "ruby-net-ssh") (name "ruby-net-ssh")
(version "3.0.1") (version "4.1.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (rubygems-uri "net-ssh" version)) (uri (rubygems-uri "net-ssh" version))
(sha256 (sha256
(base32 (base32
"1dzqkgwi9xm6mbfk1rkk17rzmz8m5xakqi21w1b97ybng6kkw0hf")))) "013p5jb4wy0cq7x7036piw2a3s1i9p752ki1srx2m289mpz4ml3q"))))
(build-system ruby-build-system) (build-system ruby-build-system)
(native-inputs (native-inputs
`(("ruby-mocha" ,ruby-mocha) `(("bundler" ,bundler)
("ruby-mocha" ,ruby-mocha)
("ruby-test-unit" ,ruby-test-unit))) ("ruby-test-unit" ,ruby-test-unit)))
(synopsis "Ruby implementation of the SSH2 client protocol") (synopsis "Ruby implementation of the SSH2 client protocol")
(description "@code{Net::SSH} is a pure-Ruby implementation of the SSH2 (description "@code{Net::SSH} is a pure-Ruby implementation of the SSH2
@ -1481,13 +1482,13 @@ with processes on remote servers, via SSH2.")
(define-public ruby-minitest (define-public ruby-minitest
(package (package
(name "ruby-minitest") (name "ruby-minitest")
(version "5.10.1") (version "5.10.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (rubygems-uri "minitest" version)) (uri (rubygems-uri "minitest" version))
(sha256 (sha256
(base32 (base32
"1yk2m8sp0p5m1niawa3ncg157a4i0594cg7z91rzjxv963rzrwab")))) "11my86fnihvpndyknn3c14hc82nhsgggnhlxh8h3bdjpmfsvl0my"))))
(build-system ruby-build-system) (build-system ruby-build-system)
(native-inputs (native-inputs
`(("ruby-hoe" ,ruby-hoe))) `(("ruby-hoe" ,ruby-hoe)))
@ -1514,6 +1515,12 @@ facilities supporting TDD, BDD, mocking, and benchmarking.")
(lambda _ (lambda _
(substitute* "Rakefile" (substitute* "Rakefile"
(("self\\.rubyforge_name = .*") "")) (("self\\.rubyforge_name = .*") ""))
#t))
(add-after 'build 'exclude-failing-tests
(lambda _
;; Some tests are failing on Ruby 2.4 due to the deprecation of
;; Fixnum.
(delete-file "test/minitest/test_minitest_spec.rb")
#t))))))) #t)))))))
(define-public ruby-minitest-sprint (define-public ruby-minitest-sprint
@ -2224,9 +2231,15 @@ current line in an external editor.")
(arguments (arguments
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'check 'set-rubylib (add-before 'check 'set-rubylib-and-patch-gemfile
(lambda _ (lambda _
(setenv "RUBYLIB" "lib") (setenv "RUBYLIB" "lib")
(substitute* "sdoc.gemspec"
(("s.add_runtime_dependency.*") "\n")
(("s.add_dependency.*") "\n"))
(substitute* "Gemfile"
(("gem \"rake\".*")
"gem 'rake'\ngem 'rdoc'\ngem 'json'\n"))
#t))))) #t)))))
(propagated-inputs (propagated-inputs
`(("ruby-json" ,ruby-json))) `(("ruby-json" ,ruby-json)))
@ -2274,13 +2287,13 @@ documentation for Ruby code.")
(define-public ruby-gem-hadar (define-public ruby-gem-hadar
(package (package
(name "ruby-gem-hadar") (name "ruby-gem-hadar")
(version "1.3.1") (version "1.9.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (rubygems-uri "gem_hadar" version)) (uri (rubygems-uri "gem_hadar" version))
(sha256 (sha256
(base32 (base32
"1j8qri4m9wf8nbfv0kakrgsv2x8vg10914xgm6f69nw8zi3i39ws")))) "1zxvd9l95rbks7x3cxn396w0sn7nha5542bf97v8akkn4vm7nby9"))))
(build-system ruby-build-system) (build-system ruby-build-system)
;; This gem needs itself at development time. We disable rebuilding of the ;; This gem needs itself at development time. We disable rebuilding of the
;; gemspec to avoid this loop. ;; gemspec to avoid this loop.
@ -2294,9 +2307,7 @@ documentation for Ruby code.")
(propagated-inputs (propagated-inputs
`(("git" ,git) `(("git" ,git)
("ruby-tins" ,ruby-tins) ("ruby-tins" ,ruby-tins)
("ruby-sdoc" ,ruby-sdoc))) ("ruby-yard" ,ruby-yard)))
(native-inputs
`(("bundler" ,bundler)))
(synopsis "Library for the development of Ruby gems") (synopsis "Library for the development of Ruby gems")
(description (description
"This library contains some useful functionality to support the "This library contains some useful functionality to support the
@ -2437,14 +2448,14 @@ when working with Ruby code.")
(define-public ruby-json (define-public ruby-json
(package (package
(name "ruby-json") (name "ruby-json")
(version "1.8.3") (version "2.1.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (rubygems-uri "json" version)) (uri (rubygems-uri "json" version))
(sha256 (sha256
(base32 (base32
"1nsby6ry8l9xg3yw4adlhk2pnc7i0h0rznvcss4vk3v74qg0k8lc")))) "01v6jjpvh3gnq6sgllpfqahlgxzj50ailwhj9b3cd20hi2dx0vxp"))))
(build-system ruby-build-system) (build-system ruby-build-system)
(arguments '(#:tests? #f)) ; dependency cycle with sdoc (arguments '(#:tests? #f)) ; dependency cycle with sdoc
(synopsis "JSON library for Ruby") (synopsis "JSON library for Ruby")
@ -2697,14 +2708,14 @@ unacceptable HTML and/or CSS from a string.")
(define-public ruby-ox (define-public ruby-ox
(package (package
(name "ruby-ox") (name "ruby-ox")
(version "2.2.1") (version "2.5.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (rubygems-uri "ox" version)) (uri (rubygems-uri "ox" version))
(sha256 (sha256
(base32 (base32
"00i11xd4ayh7349rhgskajfxn0qzkb74ab01217zix9qcapssxax")))) "0rar0xr5qn3zac1r2z18kmpapx121c2l3z8jsgh60vsddwzpdh7h"))))
(build-system ruby-build-system) (build-system ruby-build-system)
(arguments (arguments
'(#:tests? #f)) ; no tests '(#:tests? #f)) ; no tests
@ -2759,14 +2770,14 @@ alternative to Marshal for Object serialization. ")
(define-public ruby-pg (define-public ruby-pg
(package (package
(name "ruby-pg") (name "ruby-pg")
(version "0.18.2") (version "0.20.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (rubygems-uri "pg" version)) (uri (rubygems-uri "pg" version))
(sha256 (sha256
(base32 (base32
"1axxbf6ij1iqi3i1r3asvjc80b0py5bz0m2wy5kdi5xkrpr82kpf")))) "03xcgwjs6faxis81jxf2plnlalg55dhhafqv3kvjxfr8ic7plpw5"))))
(build-system ruby-build-system) (build-system ruby-build-system)
(arguments (arguments
'(#:test-target "spec")) '(#:test-target "spec"))
@ -3576,7 +3587,19 @@ It has built-in support for the legacy @code{cookies.txt} and
;; be require'd. ;; be require'd.
(replace 'check (replace 'check
(lambda _ (lambda _
(zero? (system* "ruby" "-Ilib" "-r" "ansi"))))))) (zero? (system* "ruby" "-Ilib" "-r" "ansi"))))
(add-before 'validate-runpath 'replace-broken-symlink
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(file (string-append out "/lib/ruby/gems/"
,(package-version ruby)
"/gems/ansi-" ,version
"/lib/ansi.yml")))
;; XXX: This symlink is broken since ruby 2.4.
;; https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00034.html
(delete-file file)
(symlink "../.index" file)
#t))))))
(synopsis "ANSI escape code related libraries") (synopsis "ANSI escape code related libraries")
(description (description
"This package is a collection of ANSI escape code related libraries "This package is a collection of ANSI escape code related libraries
@ -3765,7 +3788,19 @@ requirement specifications systems like Cucumber.")
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'check (replace 'check
(lambda _ (zero? (system* "qed"))))))) (lambda _ (zero? (system* "qed"))))
(add-before 'validate-runpath 'replace-broken-symlink
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(file (string-append out "/lib/ruby/gems/"
,(package-version ruby)
"/gems/ae-" ,version
"/lib/ae.yml")))
;; XXX: This symlink is broken since ruby 2.4.
;; https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00034.html
(delete-file file)
(symlink "../.index" file)
#t))))))
(propagated-inputs (propagated-inputs
`(("ruby-ansi" ,ruby-ansi))) `(("ruby-ansi" ,ruby-ansi)))
(native-inputs (native-inputs

View File

@ -58,15 +58,16 @@
(define-public libssh (define-public libssh
(package (package
(name "libssh") (name "libssh")
(version "0.7.4") (version "0.7.5")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"https://red.libssh.org/attachments/download/210/libssh-" "https://red.libssh.org/attachments/download/218/libssh-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"03bcp9ksqp0s1pmwfmzhcknvkxay5k0mjzzxp3rjlifbng1vxq9r")))) "15bh6dm9c50ndddzh3gqcgw7axp3ghrspjpkb1z3dr90vkanvs2l"))
(patches (search-patches "libssh-hostname-parser-bug.patch"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(outputs '("out" "debug")) (outputs '("out" "debug"))
(arguments (arguments

View File

@ -118,14 +118,14 @@ as well as the classic centralized workflow.")
(define-public git (define-public git
(package (package
(name "git") (name "git")
(version "2.13.0") (version "2.13.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://kernel.org/software/scm/git/git-" (uri (string-append "mirror://kernel.org/software/scm/git/git-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0n0j36rapw31zb0sabap88ffncv8jg3nwc4miyim64ilyav2mgsb")))) "1zl88rlga9nhgaqc9d04vp1l1g4x6qj1d02698asnxrzk36vxh9v"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("native-perl" ,perl) `(("native-perl" ,perl)
@ -138,7 +138,7 @@ as well as the classic centralized workflow.")
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1jcp5bjam0cqzc41bvd3qwzv2f35zdajr8icxb89q29b5v3gj544")))))) "0w7z6mis1x1skhg08qj95yczdsh1qipqnimfj60nsky40ryhkpg3"))))))
(inputs (inputs
`(("curl" ,curl) `(("curl" ,curl)
("expat" ,expat) ("expat" ,expat)

View File

@ -311,7 +311,7 @@ designed to encode video or images into an H.265 / HEVC encoded bitstream.")
(define-public libass (define-public libass
(package (package
(name "libass") (name "libass")
(version "0.13.6") (version "0.13.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -319,7 +319,7 @@ designed to encode video or images into an H.265 / HEVC encoded bitstream.")
version "/libass-" version ".tar.xz")) version "/libass-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0b9cj5xfsa7zwlk5m146fhv102v51iqs3rapq0n2xrz30k8p9a7q")))) "17byv926w1mxn56n896sxvdq4m0yv1l7qbm688h6zr3nzgsyarbh"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -411,7 +411,7 @@ SMPTE 314M.")
(define-public libva (define-public libva
(package (package
(name "libva") (name "libva")
(version "1.8.1") (version "1.8.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -419,7 +419,7 @@ SMPTE 314M.")
"https://www.freedesktop.org/software/vaapi/releases/libva/libva-" "https://www.freedesktop.org/software/vaapi/releases/libva/libva-"
version".tar.bz2")) version".tar.bz2"))
(sha256 (sha256
(base32 "0wswfznj93jpnxhc3jwdk5j3pmyki0rs6k9vk4vnzds0dddximf1")))) (base32 "1pnfl3q7dzxs26l3jk9xi97gr0qwnaz6dhvf9ifp2yplr3fy7lwy"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
@ -629,14 +629,14 @@ audio/video codec library.")
(define-public ffmpeg-2.8 (define-public ffmpeg-2.8
(package (package
(inherit ffmpeg) (inherit ffmpeg)
(version "2.8.11") (version "2.8.12")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-" (uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1rhz7rhmhhh8bjcj3dc82haisn3qjbzqlr7k6d6v7064jgn3maiq")))) "1gc32akvdms3rywphnap94lqqici8l5898a09ir1ad5rif5g24v2"))))
(arguments (arguments
(substitute-keyword-arguments (package-arguments ffmpeg) (substitute-keyword-arguments (package-arguments ffmpeg)
((#:configure-flags flags) ((#:configure-flags flags)
@ -1001,7 +1001,7 @@ access to mpv's powerful playback capabilities.")
(define-public youtube-dl (define-public youtube-dl
(package (package
(name "youtube-dl") (name "youtube-dl")
(version "2017.05.07") (version "2017.06.05")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://yt-dl.org/downloads/" (uri (string-append "https://yt-dl.org/downloads/"
@ -1009,7 +1009,7 @@ access to mpv's powerful playback capabilities.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1q3b9xkbk1lmy1wxm1jcnmaj70sdksqbc8zsqxz6b6z4nmv8qc25")))) "132f4csbl4bv71b01pnqfkd7hbbc6wclrh1h12fr1182954ahk5m"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
;; The problem here is that the directory for the man page and completion ;; The problem here is that the directory for the man page and completion
@ -2172,7 +2172,7 @@ many codecs and formats supported by libmediainfo.")
(define-public livemedia-utils (define-public livemedia-utils
(package (package
(name "livemedia-utils") (name "livemedia-utils")
(version "2017.05.24") (version "2017.06.04")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -2180,7 +2180,7 @@ many codecs and formats supported by libmediainfo.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1ra64j3qa89hf3xika8jz9gd8al8mcaqlk5ivw5pclnd2df5f4im")))) "0xf3vynxqpxpd762zni0jkblnjlgbqxjx99m83m7gqx6zriph271"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:tests? #f ; no tests '(#:tests? #f ; no tests

View File

@ -19,6 +19,7 @@
;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org> ;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Kei Kebreau <kei@openmailbox.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -68,6 +69,7 @@
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gnu-doc) #:use-module (gnu packages gnu-doc)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gperf) #:use-module (gnu packages gperf)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c) #:use-module (gnu packages icu4c)
@ -708,6 +710,34 @@ modifying pages and incoming and outgoing headers, monitoring pages for
changes, and much more.") changes, and much more.")
(license l:gpl2+))) (license l:gpl2+)))
(define-public liboauth
(package
(name "liboauth")
(version "1.0.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/liboauth/liboauth-"
version ".tar.gz"))
(sha256
(base32
"07w1aq8y8wld43wmbk2q8134p3bfkp2vma78mmsfgw2jn1bh3xhd"))))
(build-system gnu-build-system)
(arguments '(#:configure-flags '("--enable-nss")))
(native-inputs `(("pkg-config" ,pkg-config)))
(propagated-inputs
`(("curl" ,curl)
("nss" ,nss)))
(home-page "https://sourceforge.net/projects/liboauth")
(synopsis "C library implementing the OAuth API")
(description
"liboauth is a collection of C functions implementing the OAuth API.
liboauth provides functions to escape and encode strings according to OAuth
specifications and offers high-level functionality built on top to sign
requests or verify signatures using either NSS or OpenSSL for calculating the
hash/signatures.")
;; Source code may be distributed under either license.
(license (list l:expat l:gpl2+))))
(define-public libyaml (define-public libyaml
(package (package
(name "libyaml") (name "libyaml")

View File

@ -72,7 +72,7 @@
(define-public libconfuse (define-public libconfuse
(package (package
(name "libconfuse") (name "libconfuse")
(version "3.1") (version "3.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/martinh/libconfuse/" (uri (string-append "https://github.com/martinh/libconfuse/"
@ -80,7 +80,7 @@
"/confuse-" version ".tar.xz")) "/confuse-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0rnacgfkd88qyxrfdfzn9cxz533l9s5wrzb9093f9mbi00gg6wc1")))) "0j2fg93w22apjfqnkak8k8m395n2l7hhm9xnjx0k2v82js3bnsm4"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(home-page "https://github.com/martinh/libconfuse") (home-page "https://github.com/martinh/libconfuse")
(synopsis "Configuration file parser library") (synopsis "Configuration file parser library")

View File

@ -791,14 +791,14 @@ Escape key when Left Control is pressed and released on its own.")
(define-public libwacom (define-public libwacom
(package (package
(name "libwacom") (name "libwacom")
(version "0.23") (version "0.25")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/linuxwacom/libwacom/" (uri (string-append "mirror://sourceforge/linuxwacom/libwacom/"
name "-" version ".tar.bz2")) name "-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0qiikh95b9crybkwgcbbv9y80hb7lsbvvmvaia4gbgbdyagwb2m0")))) "1k20w2fkql3yr0dpdg51jjwzv7d4kp53ajmpyhcjxa08s0n8dl19"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
@ -823,7 +823,7 @@ Wacom tablet applet.")
(define-public xf86-input-wacom (define-public xf86-input-wacom
(package (package
(name "xf86-input-wacom") (name "xf86-input-wacom")
(version "0.34.0") (version "0.34.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -831,9 +831,7 @@ Wacom tablet applet.")
name "-" version ".tar.bz2")) name "-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0idhkigl0pnyp08sqm6bqfb4h20v6rjrb71z1gdv59gk7d7qwpgi")) "073bf12ka1mcqvr1sviixb51bsfx37jalrj9xw53f10i2kdvkl9a"))))
(patches
(search-patches "xf86-input-wacom-xorg-abi-25.patch"))))
(arguments (arguments
`(#:configure-flags `(#:configure-flags
(list (string-append "--with-sdkdir=" (list (string-append "--with-sdkdir="

View File

@ -3623,7 +3623,7 @@ alternative implementations like XRandR or TwinView.")
(define xkbcomp-intermediate ; used as input for xkeyboard-config (define xkbcomp-intermediate ; used as input for xkeyboard-config
(package (package
(name "xkbcomp-intermediate") (name "xkbcomp-intermediate")
(version "1.3.1") (version "1.4.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -3633,7 +3633,7 @@ alternative implementations like XRandR or TwinView.")
".tar.bz2")) ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0gcjy70ppmcl610z8gxc7sydsx93f8cm8pggm4qhihaa1ngdq103")))) "0syfc6zscvai824mzihlnrqxhkcr27dzkpy8zndavi83iischsdw"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("xproto" ,xproto) `(("xproto" ,xproto)

View File

@ -1352,6 +1352,10 @@ failed to register hydra.gnu.org public key: ~a~%" status))))))))
(default #t)) (default #t))
(substitute-urls guix-configuration-substitute-urls ;list of strings (substitute-urls guix-configuration-substitute-urls ;list of strings
(default %default-substitute-urls)) (default %default-substitute-urls))
(max-silent-time guix-configuration-max-silent-time ;integer
(default 0))
(timeout guix-configuration-timeout ;integer
(default 0))
(extra-options guix-configuration-extra-options ;list of strings (extra-options guix-configuration-extra-options ;list of strings
(default '())) (default '()))
(log-file guix-configuration-log-file ;string (log-file guix-configuration-log-file ;string
@ -1371,7 +1375,9 @@ failed to register hydra.gnu.org public key: ~a~%" status))))))))
(match config (match config
(($ <guix-configuration> guix build-group build-accounts (($ <guix-configuration> guix build-group build-accounts
authorize-key? keys authorize-key? keys
use-substitutes? substitute-urls extra-options use-substitutes? substitute-urls
max-silent-time timeout
extra-options
log-file lsof http-proxy tmpdir) log-file lsof http-proxy tmpdir)
(list (shepherd-service (list (shepherd-service
(documentation "Run the Guix daemon.") (documentation "Run the Guix daemon.")
@ -1381,6 +1387,8 @@ failed to register hydra.gnu.org public key: ~a~%" status))))))))
#~(make-forkexec-constructor #~(make-forkexec-constructor
(list #$(file-append guix "/bin/guix-daemon") (list #$(file-append guix "/bin/guix-daemon")
"--build-users-group" #$build-group "--build-users-group" #$build-group
"--max-silent-time" #$(number->string max-silent-time)
"--timeout" #$(number->string timeout)
#$@(if use-substitutes? #$@(if use-substitutes?
'() '()
'("--no-substitutes")) '("--no-substitutes"))

View File

@ -88,7 +88,7 @@
"Return the base distribution module for a given module. E.g. the 'ok' "Return the base distribution module for a given module. E.g. the 'ok'
module is distributed with 'Test::Simple', so (module->dist-name \"ok\") would module is distributed with 'Test::Simple', so (module->dist-name \"ok\") would
return \"Test-Simple\"" return \"Test-Simple\""
(assoc-ref (json-fetch (string-append "https://api.metacpan.org/module/" (assoc-ref (json-fetch (string-append "https://fastapi.metacpan.org/v1/module/"
module module
"?fields=distribution")) "?fields=distribution"))
"distribution")) "distribution"))
@ -113,7 +113,7 @@ return \"Test-Simple\""
"Return an alist representation of the CPAN metadata for the perl module MODULE, "Return an alist representation of the CPAN metadata for the perl module MODULE,
or #f on failure. MODULE should be e.g. \"Test::Script\"" or #f on failure. MODULE should be e.g. \"Test::Script\""
;; This API always returns the latest release of the module. ;; This API always returns the latest release of the module.
(json-fetch (string-append "https://api.metacpan.org/release/" name))) (json-fetch (string-append "https://fastapi.metacpan.org/v1/release/" name)))
(define (cpan-home name) (define (cpan-home name)
(string-append "http://search.cpan.org/dist/" name)) (string-append "http://search.cpan.org/dist/" name))

View File

@ -150,23 +150,44 @@ can be written."
;; makes a round trip every time 32 KiB have been transferred. This ;; makes a round trip every time 32 KiB have been transferred. This
;; procedure instead opens a separate channel to use the remote ;; procedure instead opens a separate channel to use the remote
;; 'import-paths' procedure, which consumes all the data in a single round ;; 'import-paths' procedure, which consumes all the data in a single round
;; trip. ;; trip. This optimizes the successful case at the expense of error
;; conditions: errors can only be reported once all the input has been
;; consumed.
(define import (define import
`(begin `(begin
(use-modules (guix)) (use-modules (guix) (srfi srfi-34)
(rnrs io ports) (rnrs bytevectors))
(define (consume-input port)
(let ((bv (make-bytevector 32768)))
(let loop ()
(let ((n (get-bytevector-n! port bv 0
(bytevector-length bv))))
(unless (eof-object? n)
(loop))))))
;; Upon completion, write an sexp that denotes the status.
(write
(catch #t
(lambda ()
(guard (c ((nix-protocol-error? c)
;; Consume all the input since the only time we can
;; report the error is after everything has been
;; consumed.
(consume-input (current-input-port))
(list 'protocol-error (nix-protocol-error-message c))))
(with-store store (with-store store
(setvbuf (current-input-port) _IONBF) (setvbuf (current-input-port) _IONBF)
(import-paths store (current-input-port))
'(success))))
(lambda args
(cons 'error args))))))
;; FIXME: Exceptions are silently swallowed. We should report them (open-remote-pipe session
;; somehow.
(import-paths store (current-input-port)))))
(open-remote-output-pipe session
(string-join (string-join
`("guile" "-c" `("guile" "-c"
,(object->string ,(object->string (object->string import))))
(object->string import)))))) OPEN_BOTH))
(define* (store-export-channel session files (define* (store-export-channel session files
#:key recursive?) #:key recursive?)
@ -224,10 +245,29 @@ Return the list of store items actually sent."
;; mark of 'export-paths' would be enough, but in practice it's not.) ;; mark of 'export-paths' would be enough, but in practice it's not.)
(channel-send-eof port) (channel-send-eof port)
;; Wait for completion of the remote process. ;; Wait for completion of the remote process and read the status sexp from
(let ((result (zero? (channel-get-exit-status port)))) ;; PORT.
(let* ((result (false-if-exception (read port)))
(status (zero? (channel-get-exit-status port))))
(close-port port) (close-port port)
missing))) (match result
(('success . _)
missing)
(('protocol-error message)
(raise (condition
(&nix-protocol-error (message message) (status 42)))))
(('error key args ...)
(raise (condition
(&nix-protocol-error
(message (call-with-output-string
(lambda (port)
(print-exception port #f key args))))
(status 43)))))
(_
(raise (condition
(&nix-protocol-error
(message "unknown error while sending files over SSH")
(status 44)))))))))
(define (remote-store-session remote) (define (remote-store-session remote)
"Return the SSH channel beneath REMOTE, a remote store as returned by "Return the SSH channel beneath REMOTE, a remote store as returned by

View File

@ -74,10 +74,10 @@
(mock ((guix http-client) http-fetch (mock ((guix http-client) http-fetch
(lambda (url . rest) (lambda (url . rest)
(match url (match url
("https://api.metacpan.org/release/Foo-Bar" ("https://fastapi.metacpan.org/v1/release/Foo-Bar"
(values (open-input-string test-json) (values (open-input-string test-json)
(string-length test-json))) (string-length test-json)))
("https://api.metacpan.org/module/Test::Script?fields=distribution" ("https://fastapi.metacpan.org/v1/module/Test::Script?fields=distribution"
(let ((result "{ \"distribution\" : \"Test-Script\" }")) (let ((result "{ \"distribution\" : \"Test-Script\" }"))
(values (open-input-string result) (values (open-input-string result)
(string-length result)))) (string-length result))))