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
@dots{}
$ 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]# cd foo-1.2
@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
shell in it (@pxref{Invoking guix environment}). The @command{--ad-hoc
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
remove @file{/bin/sh}:
@ -9260,6 +9263,12 @@ Whether to use substitutes.
@item @code{substitute-urls} (default: @var{%default-substitute-urls})
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{'()})
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)
"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.
;; Compare Grub: "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".
(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)
"Given an UUID bytevector, return its timestamp string."

View File

@ -208,6 +208,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/irc.scm \
%D%/packages/iso-codes.scm \
%D%/packages/java.scm \
%D%/packages/javascript.scm \
%D%/packages/jemalloc.scm \
%D%/packages/jrnl.scm \
%D%/packages/julia.scm \
@ -631,7 +632,6 @@ dist_patch_DATA = \
%D%/packages/patches/glog-gcc-5-demangling.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.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/gnucash-price-quotes-perl.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/libextractor-ffmpeg-3.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/libffi-3.2.1-complex-alpha.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-CVE-2017-8361-8363-8365.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/libtar-CVE-2013-4420.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/omake-fix-non-determinism.patch \
%D%/packages/patches/ola-readdir-r.patch \
%D%/packages/patches/openscenegraph-ffmpeg3.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-9572-CVE-2016-9573.patch \
@ -859,6 +863,7 @@ dist_patch_DATA = \
%D%/packages/patches/pcre-CVE-2017-7186.patch \
%D%/packages/patches/pcre2-CVE-2017-7186.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-deterministic-ordering.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/wxwidgets-fix-windowGTK.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-ast-remove-mibstore.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
(package
(name "global")
(version "6.5.6")
(version "6.5.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/global/global-"
version ".tar.gz"))
(sha256
(base32
"018m536k5y6lks1a6gqn3bsp7r8zk017znqj9kva1nm8d7x9lbqj"))))
"0cnd7a7d1pl46yk15q6mnr9i9w3xi8pxgchw4ia9njgr4jjqzh6r"))))
(build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses)
("libltdl" ,libltdl)

View File

@ -80,7 +80,7 @@ communication, encryption, decryption, signatures, etc.")
(define-public signify
(package
(name "signify")
(version "20")
(version "21")
(source (origin
(method url-fetch)
(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"))
(sha256
(base32
"08my2kbbjdal9z6c1fykgr9zpixh694fw42lyiaci01a7i50zp4r"))))
"0jd26kxwmmar3bylpx9x5dpqxzs17ky5dvwx8pdgcg95n4lyk223"))))
(build-system gnu-build-system)
;; TODO Build with libwaive (described in README.md), to implement something
;; like OpenBSD's pledge().

View File

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

View File

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

View File

@ -19,6 +19,7 @@
;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; 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
resolutions.")
(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 admin)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
#:use-module (gnu packages compression)
#: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.")
(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
(package
(name "python-pyxdg")

View File

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

View File

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

View File

@ -75,7 +75,7 @@ topology functions.")
(define-public gnome-maps
(package
(name "gnome-maps")
(version "3.18.3")
(version "3.24.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -83,7 +83,7 @@ topology functions.")
name "-" version ".tar.xz"))
(sha256
(base32
"1vdnr2wmhqhql2gxd5n1ijwk88qhim14izbkczncg35846hfsr5i"))))
"1mnhcrawdp6fyqylh0m8l259xdd7pqwibrjyl54rmsvnm8vfrwsy"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#: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
(package
(name "mesa")
(version "17.0.4")
(version "17.0.6")
(source
(origin
(method url-fetch)
@ -227,7 +227,7 @@ also known as DXTn or DXTC) for Mesa.")
version "/mesa-" version ".tar.xz")))
(sha256
(base32
"0im3ca1vwwmkjf5w761vh7vabr4vrrdxpckr0wm974x18n2xqs8j"))
"17d60jjzg4ddm95gk2cqx0xz6b9anmmz6ax4majwr3gis2yg7v49"))
(patches
(search-patches "mesa-fix-32bit-test-failures.patch"
"mesa-wayland-egl-symbols-check-mips.patch"

View File

@ -67,7 +67,7 @@
(define dbus
(package
(name "dbus")
(version "1.10.16")
(version "1.10.18")
(source (origin
(method url-fetch)
(uri (string-append
@ -75,7 +75,7 @@
version ".tar.gz"))
(sha256
(base32
"121kqkjsd3vgf8vca8364xl44qa5086h7qy5zs5f1l78ldpbmc57"))
"0jjirhw6xwz2ffmbg5kr79108l8i1bdaw7szc67n3qpkygaxsjb0"))
(patches (search-patches "dbus-helper-search-path.patch"))))
(build-system gnu-build-system)
(arguments
@ -137,7 +137,7 @@ shared NFS home directories.")
(define glib
(package
(name "glib")
(version "2.50.3")
(version "2.52.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/"
@ -145,7 +145,7 @@ shared NFS home directories.")
name "-" version ".tar.xz"))
(sha256
(base32
"16frrwhc1yqkzx6bgh3060g94dr2biab17fb01mrni819jzr9vl2"))
"1l65kab6jr9zlllgbjcbvrbgah3sdd577fpw4pdb2j195ag5s3ph"))
(patches (search-patches "glib-tests-timer.patch"))))
(build-system gnu-build-system)
(outputs '("out" ; everything
@ -289,14 +289,14 @@ dynamic loading, and an object system.")
(define gobject-introspection
(package
(name "gobject-introspection")
(version "1.50.0")
(version "1.52.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/"
"gobject-introspection/" (version-major+minor version)
"/gobject-introspection-" version ".tar.xz"))
(sha256
(base32 "1i9pccig8mv6qf0c1z8fcapays190nmr7j6pyc7cfhzmcv39fr8w"))
(base32 "1x5gkyrglv3dn9b4fsgw6asqgjw1wj7qc37g9pyac6pyaa6w7l1f"))
(modules '((guix build utils)))
(snippet
'(substitute* "tools/g-ir-tool-template.in"
@ -492,7 +492,7 @@ has an ease of use unmatched by other C++ callback libraries.")
(define glibmm
(package
(name "glibmm")
(version "2.50.0")
(version "2.50.1")
(source (origin
(method url-fetch)
(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"))
(sha256
(base32
"152yz5w0lx0y5j9ml72az7pc83p4l92bc0sb8whpcazldqy6wwnz"))))
"1926b3adx903hzvdp8glblsgjyadzqnwgkj8hg605d4wv98m1n0z"))))
(build-system gnu-build-system)
(arguments
`(#:phases (alist-cons-before
@ -573,7 +573,7 @@ useful for C++.")
(define-public python-pygobject
(package
(name "python-pygobject")
(version "3.22.0")
(version "3.24.1")
(source
(origin
(method url-fetch)
@ -582,11 +582,13 @@ useful for C++.")
"/pygobject-" version ".tar.xz"))
(sha256
(base32
"1ryblpc4wbhxcwf7grgib4drrab5xi6p78ihhrx0zj7g13xrrch8"))))
"1zdzznrj2s1gsrv2z4r0n88fzba8zjc1n2r313xi77lhl1daja56"))))
(build-system gnu-build-system)
(native-inputs
`(("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)))
(inputs
`(("python" ,python)
@ -596,16 +598,6 @@ useful for C++.")
;; pygobject-3.0.pc refers to all these.
`(("glib" ,glib)
("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.
(native-search-paths (package-native-search-paths gobject-introspection))
(home-page "https://live.gnome.org/PyGObject")

View File

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

View File

@ -5,6 +5,7 @@
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -54,6 +55,7 @@
#:use-module (gnu packages image)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages photo)
#:use-module (gnu packages pth)
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
@ -318,6 +320,47 @@ visual effects work for film.")
(home-page "http://www.openimageio.org")
(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
(package
(name "rapicorn")

View File

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

View File

@ -54,7 +54,7 @@
(define-public feh
(package
(name "feh")
(version "2.18.3")
(version "2.19")
(home-page "https://feh.finalrewind.org/")
(source (origin
(method url-fetch)
@ -62,7 +62,7 @@
name "-" version ".tar.bz2"))
(sha256
(base32
"0qq567d0g181k6llr6p759lnni39va5xakjqngd6063fm73nhbyq"))))
"1sfhr6628xpj9p6bqihdq35y139x2gmrpydjlrwsl1rs77c2bgnf"))))
(build-system gnu-build-system)
(arguments
'(#: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
;; maintained. Don't update to 7 until we've made sure that the ImageMagick
;; users are ready for the 7-series API.
(version "6.9.8-6")
(version "6.9.8-9")
(source (origin
(method url-fetch)
(uri (string-append "mirror://imagemagick/ImageMagick-"
version ".tar.xz"))
(sha256
(base32
"1sxg2wx3nrzbymh5wcqiv1x401nrz95xkrqgk3x446vx8lq7ln6w"))))
"0wr6wcmvaw62f6pkgnpqnjmp331wfwmds9wmqzr4zv53s9k1lkzn"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch")

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -448,6 +448,10 @@ written in Objective Caml.")
(sha256
(base32
"0wyywia0darak2zmc5v0ra9rn0b9whwdfiahralm8v5za499s8w3"))))
(native-search-paths
(list (search-path-specification
(variable "COQPATH")
(files (list "lib/coq/user-contrib")))))
(build-system gnu-build-system)
(native-inputs
`(("texlive" ,texlive)
@ -2907,3 +2911,245 @@ the expected output.")
(synopsis "Standard Jane Street ppx rewriters")
(description "Ppx_jane is a ppx_driver including all standard ppx rewriters.")
(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
;; start precisely like this.
(let ((version "0.13.0")
(commit "a6d728b7aaee09892b0b420d07ed2dbb7de5e63f")
(revision 1))
(commit "de9d8f0e295928d92e0e5ea43a4e594fa78c76fb")
(revision 2))
(package
(name "guix")
@ -91,7 +91,7 @@
(commit commit)))
(sha256
(base32
"1nrskyk8z6w5i9cdfh5zxfgsrqf744sb30ssqi2g5xhijwagr1yq"))
"0px7n4vajc9am3snhnnvddrmnwnb2ygwz0f8isk0qhk8b1ks4kdx"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(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
"0zxn9hd7mqgq06ikyi6k70ngbvjf01z1paw0jd25byyl0rlwdrzb"))
(patches (search-patches
"perl-file-path-CVE-2017-6512.patch"
"perl-no-sys-dirs.patch"
"perl-autosplit-default-time.patch"
"perl-deterministic-ordering.patch"
@ -2986,17 +2987,17 @@ platforms.")
(define-public perl-file-path
(package
(name "perl-file-path")
(version "2.12")
(version "2.13")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/R/RI/RICHE/File-Path-"
"mirror://cpan/authors/id/J/JK/JKEENAN/File-Path-"
version
".tar.gz"))
(sha256
(base32
"0znihrlcnlpa0ziml0hkq9s59p1bjd2a6khgx2accdf16w6imxmv"))))
"039gc0i5cbdmidl8j8x195yykwcdmzwawmpapnysvljl8l33jqwj"))))
(build-system perl-build-system)
(home-page "http://search.cpan.org/dist/File-Path")
(synopsis "Create or remove directory trees")

View File

@ -6,6 +6,7 @@
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -48,8 +49,7 @@
(define-public ruby
(package
(name "ruby")
(version "2.3.3")
(replacement ruby-2.3.4)
(version "2.4.0")
(source
(origin
(method url-fetch)
@ -58,7 +58,7 @@
"/ruby-" version ".tar.xz"))
(sha256
(base32
"1p0rfk0blrbfjcnv0vb0ha4hxflgkfhv9zbzp4vvld2pi31ahkqs"))
"141nnsdk2q83c23p5kl404id8gy1ap261gin48rbjj5sbksgx1rs"))
(modules '((guix build utils)))
(snippet `(begin
;; Remove bundled libffi
@ -102,11 +102,11 @@ a focus on simplicity and productivity.")
(home-page "https://ruby-lang.org")
(license license:ruby)))
(define ruby-2.3.4
(define-public ruby-2.3
(package
(inherit ruby)
(name "ruby")
(version "2.3.4")
(replacement #f)
(source
(origin
(method url-fetch)
@ -447,13 +447,13 @@ expectations and mocks frameworks.")
(define-public bundler
(package
(name "bundler")
(version "1.14.6")
(version "1.15.1")
(source (origin
(method url-fetch)
(uri (rubygems-uri "bundler" version))
(sha256
(base32
"0h3x2csvlz99v2ryj1w72vn6kixf7rl35lhdryvh7s49brnj0cgl"))))
"1mq0n8g08vf2rnd7fvylx3f4sspx15abid49gycf9zzsjj7w8vps"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; avoid dependency cycles
@ -1199,13 +1199,13 @@ use GNU gettext tools for maintenance.")
(define-public ruby-test-unit
(package
(name "ruby-test-unit")
(version "3.1.5")
(version "3.2.4")
(source (origin
(method url-fetch)
(uri (rubygems-uri "test-unit" version))
(sha256
(base32
"0jxznjzwmrlp8wqjxsd06qbiddffn68pdhz6nrqpjbiln1z3af4w"))))
"09mb34lnffracsqxl4dav4c21p5nr4pj9hm5qy2s83k5hbjya3s7"))))
(build-system ruby-build-system)
(propagated-inputs
`(("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
(package
(name "ruby-net-ssh")
(version "3.0.1")
(version "4.1.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "net-ssh" version))
(sha256
(base32
"1dzqkgwi9xm6mbfk1rkk17rzmz8m5xakqi21w1b97ybng6kkw0hf"))))
"013p5jb4wy0cq7x7036piw2a3s1i9p752ki1srx2m289mpz4ml3q"))))
(build-system ruby-build-system)
(native-inputs
`(("ruby-mocha" ,ruby-mocha)
`(("bundler" ,bundler)
("ruby-mocha" ,ruby-mocha)
("ruby-test-unit" ,ruby-test-unit)))
(synopsis "Ruby implementation of the SSH2 client protocol")
(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
(package
(name "ruby-minitest")
(version "5.10.1")
(version "5.10.2")
(source (origin
(method url-fetch)
(uri (rubygems-uri "minitest" version))
(sha256
(base32
"1yk2m8sp0p5m1niawa3ncg157a4i0594cg7z91rzjxv963rzrwab"))))
"11my86fnihvpndyknn3c14hc82nhsgggnhlxh8h3bdjpmfsvl0my"))))
(build-system ruby-build-system)
(native-inputs
`(("ruby-hoe" ,ruby-hoe)))
@ -1514,6 +1515,12 @@ facilities supporting TDD, BDD, mocking, and benchmarking.")
(lambda _
(substitute* "Rakefile"
(("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)))))))
(define-public ruby-minitest-sprint
@ -2224,9 +2231,15 @@ current line in an external editor.")
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'set-rubylib
(add-before 'check 'set-rubylib-and-patch-gemfile
(lambda _
(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)))))
(propagated-inputs
`(("ruby-json" ,ruby-json)))
@ -2274,13 +2287,13 @@ documentation for Ruby code.")
(define-public ruby-gem-hadar
(package
(name "ruby-gem-hadar")
(version "1.3.1")
(version "1.9.1")
(source (origin
(method url-fetch)
(uri (rubygems-uri "gem_hadar" version))
(sha256
(base32
"1j8qri4m9wf8nbfv0kakrgsv2x8vg10914xgm6f69nw8zi3i39ws"))))
"1zxvd9l95rbks7x3cxn396w0sn7nha5542bf97v8akkn4vm7nby9"))))
(build-system ruby-build-system)
;; This gem needs itself at development time. We disable rebuilding of the
;; gemspec to avoid this loop.
@ -2294,9 +2307,7 @@ documentation for Ruby code.")
(propagated-inputs
`(("git" ,git)
("ruby-tins" ,ruby-tins)
("ruby-sdoc" ,ruby-sdoc)))
(native-inputs
`(("bundler" ,bundler)))
("ruby-yard" ,ruby-yard)))
(synopsis "Library for the development of Ruby gems")
(description
"This library contains some useful functionality to support the
@ -2437,14 +2448,14 @@ when working with Ruby code.")
(define-public ruby-json
(package
(name "ruby-json")
(version "1.8.3")
(version "2.1.0")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "json" version))
(sha256
(base32
"1nsby6ry8l9xg3yw4adlhk2pnc7i0h0rznvcss4vk3v74qg0k8lc"))))
"01v6jjpvh3gnq6sgllpfqahlgxzj50ailwhj9b3cd20hi2dx0vxp"))))
(build-system ruby-build-system)
(arguments '(#:tests? #f)) ; dependency cycle with sdoc
(synopsis "JSON library for Ruby")
@ -2697,14 +2708,14 @@ unacceptable HTML and/or CSS from a string.")
(define-public ruby-ox
(package
(name "ruby-ox")
(version "2.2.1")
(version "2.5.0")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "ox" version))
(sha256
(base32
"00i11xd4ayh7349rhgskajfxn0qzkb74ab01217zix9qcapssxax"))))
"0rar0xr5qn3zac1r2z18kmpapx121c2l3z8jsgh60vsddwzpdh7h"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; no tests
@ -2759,14 +2770,14 @@ alternative to Marshal for Object serialization. ")
(define-public ruby-pg
(package
(name "ruby-pg")
(version "0.18.2")
(version "0.20.0")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "pg" version))
(sha256
(base32
"1axxbf6ij1iqi3i1r3asvjc80b0py5bz0m2wy5kdi5xkrpr82kpf"))))
"03xcgwjs6faxis81jxf2plnlalg55dhhafqv3kvjxfr8ic7plpw5"))))
(build-system ruby-build-system)
(arguments
'(#:test-target "spec"))
@ -3576,7 +3587,19 @@ It has built-in support for the legacy @code{cookies.txt} and
;; be require'd.
(replace 'check
(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")
(description
"This package is a collection of ANSI escape code related libraries
@ -3765,7 +3788,19 @@ requirement specifications systems like Cucumber.")
`(#:phases
(modify-phases %standard-phases
(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
`(("ruby-ansi" ,ruby-ansi)))
(native-inputs

View File

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

View File

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

View File

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

View File

@ -19,6 +19,7 @@
;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Kei Kebreau <kei@openmailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -68,6 +69,7 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnu-doc)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gperf)
#:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c)
@ -708,6 +710,34 @@ modifying pages and incoming and outgoing headers, monitoring pages for
changes, and much more.")
(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
(package
(name "libyaml")

View File

@ -72,7 +72,7 @@
(define-public libconfuse
(package
(name "libconfuse")
(version "3.1")
(version "3.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/martinh/libconfuse/"
@ -80,7 +80,7 @@
"/confuse-" version ".tar.xz"))
(sha256
(base32
"0rnacgfkd88qyxrfdfzn9cxz533l9s5wrzb9093f9mbi00gg6wc1"))))
"0j2fg93w22apjfqnkak8k8m395n2l7hhm9xnjx0k2v82js3bnsm4"))))
(build-system gnu-build-system)
(home-page "https://github.com/martinh/libconfuse")
(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
(package
(name "libwacom")
(version "0.23")
(version "0.25")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/linuxwacom/libwacom/"
name "-" version ".tar.bz2"))
(sha256
(base32
"0qiikh95b9crybkwgcbbv9y80hb7lsbvvmvaia4gbgbdyagwb2m0"))))
"1k20w2fkql3yr0dpdg51jjwzv7d4kp53ajmpyhcjxa08s0n8dl19"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -823,7 +823,7 @@ Wacom tablet applet.")
(define-public xf86-input-wacom
(package
(name "xf86-input-wacom")
(version "0.34.0")
(version "0.34.2")
(source (origin
(method url-fetch)
(uri (string-append
@ -831,9 +831,7 @@ Wacom tablet applet.")
name "-" version ".tar.bz2"))
(sha256
(base32
"0idhkigl0pnyp08sqm6bqfb4h20v6rjrb71z1gdv59gk7d7qwpgi"))
(patches
(search-patches "xf86-input-wacom-xorg-abi-25.patch"))))
"073bf12ka1mcqvr1sviixb51bsfx37jalrj9xw53f10i2kdvkl9a"))))
(arguments
`(#:configure-flags
(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
(package
(name "xkbcomp-intermediate")
(version "1.3.1")
(version "1.4.0")
(source
(origin
(method url-fetch)
@ -3633,7 +3633,7 @@ alternative implementations like XRandR or TwinView.")
".tar.bz2"))
(sha256
(base32
"0gcjy70ppmcl610z8gxc7sydsx93f8cm8pggm4qhihaa1ngdq103"))))
"0syfc6zscvai824mzihlnrqxhkcr27dzkpy8zndavi83iischsdw"))))
(build-system gnu-build-system)
(inputs
`(("xproto" ,xproto)

View File

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

View File

@ -88,7 +88,7 @@
"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
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
"?fields=distribution"))
"distribution"))
@ -113,7 +113,7 @@ return \"Test-Simple\""
"Return an alist representation of the CPAN metadata for the perl module MODULE,
or #f on failure. MODULE should be e.g. \"Test::Script\""
;; 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)
(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
;; procedure instead opens a separate channel to use the remote
;; '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
`(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
(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
;; somehow.
(import-paths store (current-input-port)))))
(open-remote-output-pipe session
(open-remote-pipe session
(string-join
`("guile" "-c"
,(object->string
(object->string import))))))
,(object->string (object->string import))))
OPEN_BOTH))
(define* (store-export-channel session files
#: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.)
(channel-send-eof port)
;; Wait for completion of the remote process.
(let ((result (zero? (channel-get-exit-status port))))
;; Wait for completion of the remote process and read the status sexp from
;; PORT.
(let* ((result (false-if-exception (read port)))
(status (zero? (channel-get-exit-status 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)
"Return the SSH channel beneath REMOTE, a remote store as returned by

View File

@ -74,10 +74,10 @@
(mock ((guix http-client) http-fetch
(lambda (url . rest)
(match url
("https://api.metacpan.org/release/Foo-Bar"
("https://fastapi.metacpan.org/v1/release/Foo-Bar"
(values (open-input-string 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\" }"))
(values (open-input-string result)
(string-length result))))