summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2019-11-21 01:00:42 +0100
committerGitHub <noreply@github.com>2019-11-21 01:00:42 +0100
commit6fb5b6be98f088acf95df77c07dba8355fd1a89b (patch)
tree38789b14202161b65f78ac3c5a4328b647fc3b85 /pkgs
parent279325253120b681cc319c05b109ff7ec47e5687 (diff)
parenta7f4c78792b6f105b3c26a9590b5e3f0baaab0f1 (diff)
downloadnixpkgs-6fb5b6be98f088acf95df77c07dba8355fd1a89b.tar
nixpkgs-6fb5b6be98f088acf95df77c07dba8355fd1a89b.tar.gz
nixpkgs-6fb5b6be98f088acf95df77c07dba8355fd1a89b.tar.bz2
nixpkgs-6fb5b6be98f088acf95df77c07dba8355fd1a89b.tar.lz
nixpkgs-6fb5b6be98f088acf95df77c07dba8355fd1a89b.tar.xz
nixpkgs-6fb5b6be98f088acf95df77c07dba8355fd1a89b.tar.zst
nixpkgs-6fb5b6be98f088acf95df77c07dba8355fd1a89b.zip
Various GNOME leaf package updates (#73790)
Various GNOME leaf package updates
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/audio/gnome-podcasts/default.nix85
-rw-r--r--pkgs/applications/backup/deja-dup/default.nix90
-rw-r--r--pkgs/applications/backup/deja-dup/hardcode-gsettings.patch30
-rw-r--r--pkgs/applications/display-managers/lightdm/default.nix3
-rw-r--r--pkgs/applications/editors/gobby/default.nix4
-rw-r--r--pkgs/applications/graphics/glabels/default.nix4
-rw-r--r--pkgs/applications/misc/font-manager/default.nix4
-rw-r--r--pkgs/applications/misc/glom/default.nix3
-rw-r--r--pkgs/applications/misc/orca/default.nix77
-rw-r--r--pkgs/data/documentation/gnome-user-docs/default.nix34
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-documents/default.nix98
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-music/default.nix90
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-user-docs/default.nix26
-rw-r--r--pkgs/desktops/gnome-3/default.nix8
-rw-r--r--pkgs/development/misc/yelp-tools/default.nix (renamed from pkgs/desktops/gnome-3/core/yelp-tools/default.nix)4
-rw-r--r--pkgs/development/python-modules/babelgladeextractor/default.nix35
-rw-r--r--pkgs/development/python-modules/google-auth-httplib2/default.nix6
-rw-r--r--pkgs/development/python-modules/pydrive/default.nix33
-rw-r--r--pkgs/tools/backup/duplicity/default.nix2
-rw-r--r--pkgs/tools/security/gnome-keysign/default.nix15
-rw-r--r--pkgs/top-level/aliases.nix1
-rw-r--r--pkgs/top-level/all-packages.nix5
-rw-r--r--pkgs/top-level/python-packages.nix6
23 files changed, 473 insertions, 190 deletions
diff --git a/pkgs/applications/audio/gnome-podcasts/default.nix b/pkgs/applications/audio/gnome-podcasts/default.nix
index eeafdc80344..7a44ebe6769 100644
--- a/pkgs/applications/audio/gnome-podcasts/default.nix
+++ b/pkgs/applications/audio/gnome-podcasts/default.nix
@@ -1,45 +1,74 @@
-{ stdenv, fetchurl, fetchpatch, meson, ninja, gettext, cargo, rustc, python3, pkgconfig, gnome3
-, glib, libhandy, gtk3, dbus, openssl, sqlite, gst_all_1, wrapGAppsHook }:
+{ stdenv
+, rustPlatform
+, fetchFromGitLab
+, fetchpatch
+, meson
+, ninja
+, gettext
+, cargo
+, rustc
+, python3
+, pkgconfig
+, gnome3
+, glib
+, libhandy
+, gtk3
+, dbus
+, openssl
+, sqlite
+, gst_all_1
+, wrapGAppsHook
+}:
 
-# TODO: build from git for easier updates
-# rustPlatform.buildRustPackage rec {
-stdenv.mkDerivation {
-  version = "0.4.6";
+rustPlatform.buildRustPackage rec {
+  version = "0.4.7";
   pname = "gnome-podcasts";
 
-  src = fetchurl {
-    url = https://gitlab.gnome.org/World/podcasts/uploads/e59ac5d618d7daf4c7f33ba72957c466/gnome-podcasts-0.4.6.tar.xz;
-    sha256 = "0g2rk3w251fp5jwbxs5ya1adv8nsgdqjy1vmfg8qqab6qyndhbrc";
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "World";
+    repo = "podcasts";
+    rev = version;
+    sha256 = "0vy5i77bv8c22ldhrnr4z6kx22zqnb1lg3s7y8673bqjgd7dppi0";
   };
 
-  patches = [
-    # podcasts-data would fail to build because it errors on warnings
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/World/podcasts/commit/7dc1b25ee7fc59a188312d31b1fa00c3110ae63e.patch";
-      sha256 = "03ibbh1snk1391vnni529agqs14lzg5g0axjgpf3gn8dwwh1yvd5";
-    })
-  ];
-
-  # src = fetchFromGitLab {
-  #   domain = "gitlab.gnome.org";
-  #   owner = "World";
-  #   repo = "podcasts";
-  #   rev = version;
-  #   sha256 = "15xj98dhxvys0cnya9488qsfsm0ys1wy69wkc39z8j6hwdm7byq2";
-  # };
+  cargoSha256 = "1h0n8zclb8a1b1ri83viiwwzlj3anm38m4cp38aqyf6q40qga35q";
 
   nativeBuildInputs = [
-    meson ninja pkgconfig gettext cargo rustc python3 wrapGAppsHook
+    meson
+    ninja
+    pkgconfig
+    gettext
+    cargo
+    rustc
+    python3
+    wrapGAppsHook
   ];
+
   buildInputs = [
-    glib gtk3 libhandy dbus openssl sqlite gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-bad
+    glib
+    gtk3
+    libhandy
+    dbus
+    openssl
+    sqlite
+    gst_all_1.gstreamer
+    gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-bad
   ];
 
-  # cargoSha256 = "0721b5f700vvvzvmdl8nfjaa6j412q1fjssgrjv8n6rmn9z13d2v";
+  # use Meson/Ninja phases
+  configurePhase = null;
+  buildPhase = null;
+  checkPhase = null;
+  installPhase = null;
+
+  # tests require network
+  doCheck = false;
 
   postPatch = ''
     chmod +x scripts/compile-gschema.py # patchShebangs requires executable file
-    patchShebangs scripts/compile-gschema.py
+    patchShebangs scripts/compile-gschema.py scripts/cargo.sh scripts/test.sh
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/backup/deja-dup/default.nix b/pkgs/applications/backup/deja-dup/default.nix
index 7120a1934f6..d19314ce9ce 100644
--- a/pkgs/applications/backup/deja-dup/default.nix
+++ b/pkgs/applications/backup/deja-dup/default.nix
@@ -1,20 +1,46 @@
-{ stdenv, fetchFromGitLab, substituteAll, meson, ninja, pkgconfig, vala_0_40, gettext
-, gnome3, libnotify, itstool, glib, gtk3, libxml2, gnome-online-accounts
-, coreutils, libpeas, libsecret, pcre, libxkbcommon, wrapGAppsHook
-, libpthreadstubs, libXdmcp, epoxy, at-spi2-core, dbus, libgpgerror
-, appstream-glib, desktop-file-utils, duplicity
+{ stdenv
+, fetchFromGitLab
+, substituteAll
+, meson
+, ninja
+, pkgconfig
+, vala
+, gettext
+, gnome3
+, libnotify
+, itstool
+, glib
+, gtk3
+, libxml2
+, gnome-online-accounts
+, coreutils
+, libsoup
+, libsecret
+, pcre
+, libxkbcommon
+, wrapGAppsHook
+, libpthreadstubs
+, libXdmcp
+, epoxy
+, at-spi2-core
+, dbus
+, libgpgerror
+, json-glib
+, appstream-glib
+, desktop-file-utils
+, duplicity
 }:
 
 stdenv.mkDerivation rec {
   pname = "deja-dup";
-  version = "38.3";
+  version = "40.4";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "World";
     repo = pname;
     rev = version;
-    sha256 = "1bnvmdlm67k1b6115x75j3nl92x5yl4psq5pna2w6cg9npxdd3fa";
+    sha256 = "0x9z8z1mh1sxi28ilml3pvbc0g6ghcbyiy002rziwwlarxnbwkky";
   };
 
   patches = [
@@ -22,37 +48,55 @@ stdenv.mkDerivation rec {
       src = ./fix-paths.patch;
       inherit coreutils;
     })
+
+    # Hardcode GSettings path for Nautilus extension to avoid crashes from missing schemas
     ./hardcode-gsettings.patch
   ];
 
   postPatch = ''
-    substituteInPlace deja-dup/nautilus/NautilusExtension.c --subst-var-by DEJA_DUP_GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"}
+    # substitute variable from hardcode-gsettings.patch
+    substituteInPlace deja-dup/nautilus/NautilusExtension.c --subst-var-by DEJA_DUP_GSETTINGS_PATH "${glib.makeSchemaPath (placeholder "out") "${pname}-${version}"}"
   '';
 
   nativeBuildInputs = [
-    meson ninja pkgconfig vala_0_40 gettext itstool
-    appstream-glib desktop-file-utils libxml2 wrapGAppsHook
+    meson
+    ninja
+    pkgconfig
+    vala
+    gettext
+    itstool
+    appstream-glib
+    desktop-file-utils
+    libxml2
+    wrapGAppsHook
   ];
 
   buildInputs = [
-   libnotify libpeas glib gtk3 libsecret
-   pcre libxkbcommon libpthreadstubs libXdmcp epoxy gnome3.nautilus
-   at-spi2-core dbus gnome-online-accounts libgpgerror
+    libnotify
+    libsoup
+    glib
+    gtk3
+    libsecret
+    pcre
+    libxkbcommon
+    libpthreadstubs
+    libXdmcp
+    epoxy
+    gnome3.nautilus
+    at-spi2-core
+    dbus
+    gnome-online-accounts # GOA not used any more, only for transferring legacy keys
+    libgpgerror
+    json-glib
   ];
 
+  # TODO: hard code the path
+  # https://gitlab.gnome.org/World/deja-dup/merge_requests/32
   propagatedUserEnvPkgs = [ duplicity ];
 
+  # install nautilus plug-in to correct path
   PKG_CONFIG_LIBNAUTILUS_EXTENSION_EXTENSIONDIR = "${placeholder "out"}/lib/nautilus/extensions-3.0";
 
-  postInstall = ''
-    glib-compile-schemas $out/share/glib-2.0/schemas
-  '';
-
-  postFixup = ''
-    # Unwrap accidentally wrapped library
-    mv $out/libexec/deja-dup/tools/.libduplicity.so-wrapped $out/libexec/deja-dup/tools/libduplicity.so
-  '';
-
   meta = with stdenv.lib; {
     description = "A simple backup tool";
     longDescription = ''
@@ -60,7 +104,7 @@ stdenv.mkDerivation rec {
       of backing up the Right Way (encrypted, off-site, and regular) \
       and uses duplicity as the backend.
     '';
-    homepage = https://wiki.gnome.org/Apps/DejaDup;
+    homepage = "https://wiki.gnome.org/Apps/DejaDup";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ jtojnar joncojonathan ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/backup/deja-dup/hardcode-gsettings.patch b/pkgs/applications/backup/deja-dup/hardcode-gsettings.patch
index 50bf2ba4fbd..f74dbf73543 100644
--- a/pkgs/applications/backup/deja-dup/hardcode-gsettings.patch
+++ b/pkgs/applications/backup/deja-dup/hardcode-gsettings.patch
@@ -1,38 +1,16 @@
 --- a/deja-dup/nautilus/NautilusExtension.c
 +++ b/deja-dup/nautilus/NautilusExtension.c
-@@ -24,6 +24,8 @@
- #include <glib/gi18n-lib.h>
- 
- GList *dirs = NULL;
-+GSettingsSchemaSource *schema_source = NULL;
-+GSettingsSchema *schema = NULL;
- GSettings *settings = NULL;
- 
- // This will treat a < b iff a is 'lower' in the file tree than b
-@@ -313,7 +315,13 @@
+@@ -313,7 +313,12 @@
    bindtextdomain(GETTEXT_PACKAGE, LOCALE_DIR);
    bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");
  
--  settings = g_settings_new("org.gnome.DejaDup");
-+  schema_source = g_settings_schema_source_new_from_directory ("@DEJA_DUP_GSETTINGS_PATH@",
+-  settings = g_settings_new(APPLICATION_ID);
++  g_autoptr (GSettingsSchemaSource) schema_source = g_settings_schema_source_new_from_directory ("@DEJA_DUP_GSETTINGS_PATH@",
 +    g_settings_schema_source_get_default (), TRUE, NULL);
 +
-+  schema = g_settings_schema_source_lookup (schema_source,
-+                                            "org.gnome.DejaDup", FALSE);
++  g_autoptr (GSettingsSchema) schema = g_settings_schema_source_lookup (schema_source, APPLICATION_ID, FALSE);
 +
 +  settings = g_settings_new_full (schema, NULL, NULL);
    g_signal_connect(settings, "changed::include-list",
                     update_include_excludes, NULL);
    g_signal_connect(settings, "changed::exclude-list",
-@@ -329,7 +337,11 @@
- 
- void nautilus_module_shutdown(void)
- {
-+  g_settings_schema_source_unref(schema_source);
-+  g_settings_schema_unref(schema);
-   g_object_unref(settings);
-+  schema_source = NULL;
-+  schema = NULL;
-   settings = NULL;
- 
-   update_include_excludes(); /* will clear it now that settings is NULL */
diff --git a/pkgs/applications/display-managers/lightdm/default.nix b/pkgs/applications/display-managers/lightdm/default.nix
index 4d221e97099..952aa285637 100644
--- a/pkgs/applications/display-managers/lightdm/default.nix
+++ b/pkgs/applications/display-managers/lightdm/default.nix
@@ -27,6 +27,7 @@
 , qt4
 , withQt5 ? false
 , qtbase
+, yelp-tools
 }:
 
 with stdenv.lib;
@@ -47,7 +48,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoconf
     automake
-    gnome3.yelp-tools
+    yelp-tools
     gnome3.yelp-xsl
     gobject-introspection
     gtk-doc
diff --git a/pkgs/applications/editors/gobby/default.nix b/pkgs/applications/editors/gobby/default.nix
index 3abe2834db4..f194227932d 100644
--- a/pkgs/applications/editors/gobby/default.nix
+++ b/pkgs/applications/editors/gobby/default.nix
@@ -1,5 +1,5 @@
 { avahiSupport ? false # build support for Avahi in libinfinity
-, stdenv, fetchFromGitHub, autoconf, automake, pkgconfig, wrapGAppsHook
+, stdenv, fetchFromGitHub, autoconf, automake, pkgconfig, wrapGAppsHook, yelp-tools
 , gtkmm3, gsasl, gtksourceview3, libxmlxx, libinfinity, intltool, itstool, gnome3 }:
 
 let
@@ -13,7 +13,7 @@ in stdenv.mkDerivation {
     sha256 = "0q7lq64yn16lxvj4jphs8y9194h0xppj8k7y9x8b276krraak2az";
   };
 
-  nativeBuildInputs = [ autoconf automake pkgconfig intltool itstool gnome3.yelp-tools wrapGAppsHook ];
+  nativeBuildInputs = [ autoconf automake pkgconfig intltool itstool yelp-tools wrapGAppsHook ];
   buildInputs = [ gtkmm3 gsasl gtksourceview3 libxmlxx libinf ];
 
   preConfigure = "./autogen.sh";
diff --git a/pkgs/applications/graphics/glabels/default.nix b/pkgs/applications/graphics/glabels/default.nix
index 3bfd51d0370..fef296f45be 100644
--- a/pkgs/applications/graphics/glabels/default.nix
+++ b/pkgs/applications/graphics/glabels/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, barcode, gnome3, autoreconfHook
 , gtk3, gtk-doc, libxml2, librsvg , libtool, libe-book, gsettings-desktop-schemas
-, intltool, itstool, makeWrapper, pkgconfig
+, intltool, itstool, makeWrapper, pkgconfig, yelp-tools
 }:
 
 stdenv.mkDerivation rec {
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook pkgconfig makeWrapper intltool ];
   buildInputs = [
-    barcode gtk3 gtk-doc gnome3.yelp-tools
+    barcode gtk3 gtk-doc yelp-tools
     gnome3.gnome-common gsettings-desktop-schemas
     itstool libxml2 librsvg libe-book libtool
   ];
diff --git a/pkgs/applications/misc/font-manager/default.nix b/pkgs/applications/misc/font-manager/default.nix
index dad95490012..edb47e11dd7 100644
--- a/pkgs/applications/misc/font-manager/default.nix
+++ b/pkgs/applications/misc/font-manager/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, meson, ninja, gettext, python3, fetchpatch,
-  pkgconfig, libxml2, json-glib , sqlite, itstool, librsvg,
+  pkgconfig, libxml2, json-glib , sqlite, itstool, librsvg, yelp-tools,
   vala, gtk3, gnome3, desktop-file-utils, wrapGAppsHook, gobject-introspection
 }:
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     itstool
     desktop-file-utils
     vala
-    gnome3.yelp-tools
+    yelp-tools
     wrapGAppsHook
     # For https://github.com/FontManager/master/blob/master/lib/unicode/meson.build
     gobject-introspection
diff --git a/pkgs/applications/misc/glom/default.nix b/pkgs/applications/misc/glom/default.nix
index 9e71837c0f5..b8f13d01424 100644
--- a/pkgs/applications/misc/glom/default.nix
+++ b/pkgs/applications/misc/glom/default.nix
@@ -30,6 +30,7 @@
 , postgresql
 , gnome3
 , gobject-introspection
+, yelp-tools
 , wrapGAppsHook
 }:
 
@@ -67,7 +68,7 @@ in stdenv.mkDerivation rec {
     libtool
     mm-common
     intltool
-    gnome3.yelp-tools
+    yelp-tools
     itstool
     doxygen
     graphviz
diff --git a/pkgs/applications/misc/orca/default.nix b/pkgs/applications/misc/orca/default.nix
index 37b93eecf39..1dc6a9cfee5 100644
--- a/pkgs/applications/misc/orca/default.nix
+++ b/pkgs/applications/misc/orca/default.nix
@@ -1,21 +1,47 @@
-{ stdenv, pkgconfig, fetchurl, buildPythonApplication
-, autoreconfHook, wrapGAppsHook, gobject-introspection
-, gettext, yelp-tools, itstool, libxmlxx3
-, python, pygobject3, gtk3, gnome3, substituteAll
-, at-spi2-atk, at-spi2-core, pyatspi, dbus, dbus-python, pyxdg
-, xkbcomp, procps, lsof, coreutils, gsettings-desktop-schemas
-, speechd, brltty, liblouis, setproctitle, gst_all_1, gst-python
+{ stdenv
+, pkgconfig
+, fetchurl
+, buildPythonApplication
+, autoreconfHook
+, wrapGAppsHook
+, gobject-introspection
+, gettext
+, yelp-tools
+, itstool
+, libxmlxx3
+, python
+, pygobject3
+, gtk3
+, gnome3
+, substituteAll
+, at-spi2-atk
+, at-spi2-core
+, pyatspi
+, dbus
+, dbus-python
+, pyxdg
+, xkbcomp
+, procps
+, lsof
+, coreutils
+, gsettings-desktop-schemas
+, speechd
+, brltty
+, liblouis
+, setproctitle
+, gst_all_1
+, gst-python
 }:
 
 buildPythonApplication rec {
   pname = "orca";
-  version = "3.34.0";
+  version = "3.34.1";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "10h258cprsxzb2hz9wqrkzv1yrsm19ws46l6fsnspywza5wq0z4p";
+    sha256 = "1q38n7hyshkiszmn361skxjynxr31lcms7a1iny6d0zlpmh1vnk4";
   };
 
   patches = [
@@ -29,19 +55,40 @@ buildPythonApplication rec {
   ];
 
   nativeBuildInputs = [
-    autoreconfHook wrapGAppsHook pkgconfig libxmlxx3
-    gettext yelp-tools itstool gobject-introspection
+    autoreconfHook
+    wrapGAppsHook
+    pkgconfig
+    libxmlxx3
+    gettext
+    yelp-tools
+    itstool
+    gobject-introspection
   ];
 
   propagatedBuildInputs = [
-    pygobject3 pyatspi dbus-python pyxdg brltty liblouis speechd gst-python setproctitle
+    pygobject3
+    pyatspi
+    dbus-python
+    pyxdg
+    brltty
+    liblouis
+    speechd
+    gst-python
+    setproctitle
   ];
 
   strictDeps = false;
 
   buildInputs = [
-    python gtk3 at-spi2-atk at-spi2-core dbus gsettings-desktop-schemas
-    gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
+    python
+    gtk3
+    at-spi2-atk
+    at-spi2-core
+    dbus
+    gsettings-desktop-schemas
+    gst_all_1.gstreamer
+    gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-good
   ];
 
   passthru = {
@@ -51,7 +98,7 @@ buildPythonApplication rec {
   };
 
   meta = with stdenv.lib; {
-    homepage = https://wiki.gnome.org/Projects/Orca;
+    homepage = "https://wiki.gnome.org/Projects/Orca";
     description = "Screen reader";
     longDescription = ''
       A free, open source, flexible and extensible screen reader that provides
diff --git a/pkgs/data/documentation/gnome-user-docs/default.nix b/pkgs/data/documentation/gnome-user-docs/default.nix
index 4bdfa70c63f..a47ec9ea790 100644
--- a/pkgs/data/documentation/gnome-user-docs/default.nix
+++ b/pkgs/data/documentation/gnome-user-docs/default.nix
@@ -1,27 +1,41 @@
-{ stdenv, fetchurl, itstool, libxml2, gettext, gnome3 }:
+{ stdenv
+, fetchurl
+, gettext
+, gnome3
+, itstool
+, libxml2
+, yelp-tools
+}:
 
 stdenv.mkDerivation rec {
   pname = "gnome-user-docs";
-  version = "3.2.2";
+  version = "3.34.1";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1ka0nw2kc85p10y8x31v0wv06a88k7qrgafp4ys04y9fzz0rkcjj";
+    url = "mirror://gnome/sources/gnome-user-docs/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "11m9fv8k2hynrcgah4jvbm6yczg0s1ly302mipysbwpn6gbdkvf2";
   };
 
-  nativeBuildInputs = [ itstool libxml2 gettext ];
+  nativeBuildInputs = [
+    gettext
+    itstool
+    libxml2
+    yelp-tools
+  ];
+
+  enableParallelBuilding = true;
 
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
-      attrPath = "gnome3.gnome-user-docs";
     };
   };
 
-  meta = {
-    homepage = "https://gitlab.gnome.org/GNOME/gnome-user-docs";
-    description = "GNOME User Documentation";
-    license = stdenv.lib.licenses.cc-by-30;
+  meta = with stdenv.lib; {
+    description = "User and system administration help for the GNOME desktop";
+    homepage = "https://help.gnome.org/users/gnome-help/";
+    license = licenses.cc-by-30;
     maintainers = gnome3.maintainers;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix b/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix
index 3a7e1473332..5aa39e09cd6 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix
@@ -1,36 +1,86 @@
-{ stdenv, meson, ninja, gettext, fetchurl, evince, gjs
-, pkgconfig, gtk3, glib, tracker, tracker-miners
-, itstool, libxslt, webkitgtk, libgdata
-, gnome-desktop, libzapojit, libgepub
-, gnome3, gdk-pixbuf, libsoup, docbook_xsl, docbook_xml_dtd_42
-, gobject-introspection, inkscape, poppler_utils
-, desktop-file-utils, wrapGAppsHook, python3, gsettings-desktop-schemas }:
+{ stdenv
+, meson
+, ninja
+, gettext
+, fetchurl
+, evince
+, gjs
+, pkgconfig
+, gtk3
+, glib
+, tracker
+, tracker-miners
+, itstool
+, libxslt
+, webkitgtk
+, libgdata
+, gnome-desktop
+, libzapojit
+, libgepub
+, gnome3
+, gdk-pixbuf
+, libsoup
+, docbook_xsl
+, docbook_xml_dtd_42
+, gobject-introspection
+, inkscape
+, poppler_utils
+, desktop-file-utils
+, wrapGAppsHook
+, python3
+, gsettings-desktop-schemas
+}:
 
 stdenv.mkDerivation rec {
   pname = "gnome-documents";
-  version = "3.33.90";
+  version = "3.34.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-documents/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0l9g10i380bnjp1y3pslsy8ph1hd5x1d57dadvq70p5ki4r3qjaw";
+    sha256 = "1qph567mapg3s1a26k7b8y57g9bklhj2mh8xm758z9zkms20xafq";
   };
 
-  doCheck = true;
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkgconfig
+    gettext
+    itstool
+    libxslt
+    desktop-file-utils
+    docbook_xsl
+    docbook_xml_dtd_42
+    wrapGAppsHook
+    python3
 
-  mesonFlags = [
-    "-Dgetting-started=true"
+    # building getting started
+    inkscape
+    poppler_utils
   ];
 
-  nativeBuildInputs = [
-    meson ninja pkgconfig gettext itstool libxslt desktop-file-utils docbook_xsl docbook_xml_dtd_42 wrapGAppsHook python3
-    inkscape poppler_utils # building getting started
-  ];
   buildInputs = [
-    gtk3 glib gsettings-desktop-schemas
-    gdk-pixbuf gnome3.adwaita-icon-theme evince
-    libsoup webkitgtk gjs gobject-introspection
-    tracker tracker-miners libgdata
-    gnome-desktop libzapojit libgepub
+    gtk3
+    glib
+    gsettings-desktop-schemas
+    gdk-pixbuf
+    gnome3.adwaita-icon-theme
+    evince
+    libsoup
+    webkitgtk
+    gjs
+    gobject-introspection
+    tracker
+    tracker-miners
+    libgdata
+    gnome-desktop
+    libzapojit
+    libgepub
+  ];
+
+  doCheck = true;
+
+  mesonFlags = [
+    "-Dgetting_started=true"
   ];
 
   postPatch = ''
@@ -44,13 +94,13 @@ stdenv.mkDerivation rec {
 
   passthru = {
     updateScript = gnome3.updateScript {
-      packageName = "gnome-documents";
-      attrPath = "gnome3.gnome-documents";
+      packageName = pname;
+      attrPath = "gnome3.${pname}";
     };
   };
 
   meta = with stdenv.lib; {
-    homepage = https://wiki.gnome.org/Apps/Documents;
+    homepage = "https://wiki.gnome.org/Apps/Documents";
     description = "Document manager application designed to work with GNOME 3";
     maintainers = gnome3.maintainers;
     license = licenses.gpl2;
diff --git a/pkgs/desktops/gnome-3/apps/gnome-music/default.nix b/pkgs/desktops/gnome-3/apps/gnome-music/default.nix
index 204d0a8982e..8ac7ad7f2d2 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-music/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-music/default.nix
@@ -1,29 +1,85 @@
-{ stdenv, meson, ninja, gettext, fetchurl, gdk-pixbuf, tracker
-, libxml2, python3, libnotify, wrapGAppsHook, libmediaart
-, gobject-introspection, gnome-online-accounts, grilo, grilo-plugins
-, pkgconfig, gtk3, glib, desktop-file-utils, appstream-glib
-, itstool, gnome3, gst_all_1, libdazzle, libsoup, gsettings-desktop-schemas }:
+{ stdenv
+, meson
+, ninja
+, gettext
+, fetchurl
+, gdk-pixbuf
+, tracker
+, libxml2
+, python3
+, libnotify
+, wrapGAppsHook
+, libmediaart
+, gobject-introspection
+, gnome-online-accounts
+, grilo
+, grilo-plugins
+, pkgconfig
+, gtk3
+, glib
+, desktop-file-utils
+, appstream-glib
+, itstool
+, gnome3
+, gst_all_1
+, libdazzle
+, libsoup
+, gsettings-desktop-schemas
+}:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "gnome-music";
-  version = "3.34.0";
+  version = "3.34.1";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1a566ifx08clfm22qzdh1i6w8cr2kv7avqzkk6zgc5adba0vmzx4";
+    sha256 = "128griji0ficf9agnlhfqh9wf819zdfcz5bbrr12nkxnhksnqv99";
   };
 
-  nativeBuildInputs = [ meson ninja gettext itstool pkgconfig libxml2 wrapGAppsHook desktop-file-utils appstream-glib gobject-introspection ];
-  buildInputs = with gst_all_1; [
-    gtk3 glib libmediaart gnome-online-accounts gobject-introspection
-    gdk-pixbuf gnome3.adwaita-icon-theme python3
-    grilo grilo-plugins libnotify libdazzle libsoup
-    gsettings-desktop-schemas tracker
-    gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly
+  nativeBuildInputs = [
+    meson
+    ninja
+    gettext
+    itstool
+    pkgconfig
+    libxml2
+    wrapGAppsHook
+    desktop-file-utils
+    appstream-glib
+    gobject-introspection
+  ];
+
+  buildInputs = [
+    gtk3
+    glib
+    libmediaart
+    gnome-online-accounts
+    gobject-introspection
+    gdk-pixbuf
+    gnome3.adwaita-icon-theme
+    python3
+    grilo
+    grilo-plugins
+    libnotify
+    libdazzle
+    libsoup
+    gsettings-desktop-schemas
+    tracker
+  ] ++ (with gst_all_1; [
+    gstreamer
+    gst-plugins-base
+    gst-plugins-good
+    gst-plugins-bad
+    gst-plugins-ugly
+  ]);
+
+  propagatedBuildInputs = with python3.pkgs; [
+    pycairo
+    dbus-python
+    pygobject3
   ];
-  propagatedBuildInputs = with python3.pkgs; [ pycairo dbus-python pygobject3 ];
 
 
   postPatch = ''
@@ -43,10 +99,10 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   meta = with stdenv.lib; {
-    homepage = https://wiki.gnome.org/Apps/Music;
+    homepage = "https://wiki.gnome.org/Apps/Music";
     description = "Music player and management application for the GNOME desktop environment";
     maintainers = gnome3.maintainers;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/desktops/gnome-3/core/gnome-user-docs/default.nix b/pkgs/desktops/gnome-3/core/gnome-user-docs/default.nix
deleted file mode 100644
index cb0c1494b94..00000000000
--- a/pkgs/desktops/gnome-3/core/gnome-user-docs/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, gnome3, itstool, libxml2, intltool }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-user-docs";
-  version = "3.34.0";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/gnome-user-docs/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1v94mz8zwzx67db2avbi9p2klw36cz45qr6fbskpvygz2pzhg6cg";
-  };
-
-  passthru = {
-    updateScript = gnome3.updateScript { packageName = "gnome-user-docs"; attrPath = "gnome3.gnome-user-docs"; };
-  };
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ gnome3.yelp itstool libxml2 intltool ];
-
-  meta = with stdenv.lib; {
-    homepage = https://help.gnome.org/users/gnome-help/;
-    description = "User and system administration help for the GNOME desktop";
-    maintainers = gnome3.maintainers;
-    license = licenses.cc-by-30;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index 3b55cf86bd9..1e760c06029 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -99,8 +99,6 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   gnome-themes-extra = callPackage ./core/gnome-themes-extra { };
 
-  gnome-user-docs = callPackage ./core/gnome-user-docs { };
-
   gnome-user-share = callPackage ./core/gnome-user-share { };
 
   gucharmap = callPackage ./core/gucharmap { };
@@ -160,8 +158,6 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   yelp-xsl = callPackage ./core/yelp-xsl { };
 
-  yelp-tools = callPackage ./core/yelp-tools { };
-
   zenity = callPackage ./core/zenity { };
 
 
@@ -357,7 +353,11 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   inherit (pkgs) vala; # added 2019-10-10
 
+  inherit (pkgs) gnome-user-docs; # added 2019-11-20
+
   inherit (pkgs) gegl_0_4; # added 2019-10-31
 
   inherit (pkgs) gjs; # added 2019-01-05
+
+  inherit (pkgs) yelp-tools; # added 2019-11-20
 })
diff --git a/pkgs/desktops/gnome-3/core/yelp-tools/default.nix b/pkgs/development/misc/yelp-tools/default.nix
index 43863bf7f85..75754bec7a1 100644
--- a/pkgs/desktops/gnome-3/core/yelp-tools/default.nix
+++ b/pkgs/development/misc/yelp-tools/default.nix
@@ -10,7 +10,9 @@ stdenv.mkDerivation rec {
   };
 
   passthru = {
-    updateScript = gnome3.updateScript { packageName = "yelp-tools"; attrPath = "gnome3.yelp-tools"; };
+    updateScript = gnome3.updateScript {
+      packageName = pname;
+    };
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/python-modules/babelgladeextractor/default.nix b/pkgs/development/python-modules/babelgladeextractor/default.nix
new file mode 100644
index 00000000000..40c2493c151
--- /dev/null
+++ b/pkgs/development/python-modules/babelgladeextractor/default.nix
@@ -0,0 +1,35 @@
+{ stdenv
+, lib
+, buildPythonPackage
+, fetchPypi
+, Babel
+, lxml
+}:
+
+buildPythonPackage rec {
+  pname = "babelgladeextractor";
+  version = "0.6.0";
+
+  src = fetchPypi {
+    pname = "BabelGladeExtractor";
+    inherit version;
+    extension = "tar.bz2";
+    sha256 = "18m5vi3sj2h26ibmb6fzfjs2lscg757ivk1bjgkn1haf9gdwyjj6";
+  };
+
+  propagatedBuildInputs = [
+    Babel
+    lxml # TODO: remove in 0.7.0
+  ];
+
+  # Tests missing
+  # https://github.com/gnome-keysign/babel-glade/issues/5
+  doCheck = false;
+
+  meta = with lib; {
+    homepage = "https://github.com/gnome-keysign/babel-glade";
+    description = "Babel Glade XML files translatable strings extractor";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ jtojnar ];
+  };
+}
diff --git a/pkgs/development/python-modules/google-auth-httplib2/default.nix b/pkgs/development/python-modules/google-auth-httplib2/default.nix
index c76f5c572e4..99c9945ea66 100644
--- a/pkgs/development/python-modules/google-auth-httplib2/default.nix
+++ b/pkgs/development/python-modules/google-auth-httplib2/default.nix
@@ -1,4 +1,5 @@
 { lib
+, isPy3k
 , buildPythonPackage
 , fetchPypi
 , flask
@@ -32,10 +33,13 @@ buildPythonPackage rec {
     py.test
   '';
 
+  # ImportError: No module named google.auth
+  doCheck = isPy3k;
+
   meta = {
     description = "Google Authentication Library: httplib2 transport";
     homepage = https://github.com/GoogleCloudPlatform/google-auth-library-python-httplib2;
     license = lib.licenses.asl20;
   };
 
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/python-modules/pydrive/default.nix b/pkgs/development/python-modules/pydrive/default.nix
new file mode 100644
index 00000000000..aa0515323e2
--- /dev/null
+++ b/pkgs/development/python-modules/pydrive/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, google_api_python_client
+, oauth2client
+, pyyaml
+}:
+
+buildPythonPackage rec {
+  pname = "pydrive";
+  version = "1.3.1";
+
+  src = fetchPypi {
+    pname = "PyDrive";
+    inherit version;
+    sha256 = "11q7l94mb34hfh9wkdwfrh5xw99y13wa33ba7xp1q23q4b60v2c3";
+  };
+
+  propagatedBuildInputs = [
+    google_api_python_client
+    oauth2client
+    pyyaml
+  ];
+
+  # requires client_secrets.json
+  doCheck = false;
+
+  meta = {
+    description = "Google Drive API Python wrapper library";
+    homepage = "https://github.com/gsuitedevs/PyDrive";
+    license = lib.licenses.asl20;
+  };
+}
diff --git a/pkgs/tools/backup/duplicity/default.nix b/pkgs/tools/backup/duplicity/default.nix
index c1673c8308e..a33067e8897 100644
--- a/pkgs/tools/backup/duplicity/default.nix
+++ b/pkgs/tools/backup/duplicity/default.nix
@@ -43,7 +43,7 @@ python2Packages.buildPythonApplication rec {
   buildInputs = [ librsync makeWrapper python2Packages.wrapPython ];
   propagatedBuildInputs = [ backblaze-b2 ] ++ (with python2Packages; [
     boto cffi cryptography ecdsa enum idna pygobject3 fasteners
-    ipaddress lockfile paramiko pyasn1 pycrypto six
+    ipaddress lockfile paramiko pyasn1 pycrypto six pydrive
   ]);
   checkInputs = [
     gnupg  # Add 'gpg' to PATH.
diff --git a/pkgs/tools/security/gnome-keysign/default.nix b/pkgs/tools/security/gnome-keysign/default.nix
index 04fa923ce2c..2c216c0a404 100644
--- a/pkgs/tools/security/gnome-keysign/default.nix
+++ b/pkgs/tools/security/gnome-keysign/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchFromGitLab
+, fetchpatch
 , python3
 , wrapGAppsHook
 , gobject-introspection
@@ -11,22 +12,30 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "gnome-keysign";
-  version = "1.0.1";
+  version = "1.2.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "GNOME";
     repo = pname;
     rev = version;
-    sha256 = "0iy70dskd7wly37lpb2ypd9phhyml5j3c7rzajii4f2s7zgb3abg";
+    sha256 = "1sjphi1lsivg9jmc8khbcqa9w6608pkrccz4nz3rlcc54hn0k0sj";
   };
 
+  patches = [
+    # fix build failure due to missing import
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-keysign/commit/216c3677e68960afc517edc00529323e85909323.patch";
+      sha256 = "1w410gvcridbq26sry7fxn49v59ss2lc0w5ab7csva8rzs1nc990";
+    })
+  ];
+
   nativeBuildInputs = [
     wrapGAppsHook
     gobject-introspection
   ] ++ (with python3.pkgs; [
     Babel
-    lxml
+    babelgladeextractor
   ]);
 
   buildInputs = [
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 90ce0d2bb2c..c8953eb47b3 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -430,6 +430,7 @@ mapAliases ({
   xpraGtk3 = xpra; # added 2018-09-13
   youtubeDL = youtube-dl;  # added 2014-10-26
   zdfmediathk = mediathekview; # added 2019-01-19
+  gnome_user_docs = gnome-user-docs; # added 2019-11-20
 
   # TODO(ekleog): add ‘wasm’ alias to ‘ocamlPackages.wasm’ after 19.03
   # branch-off
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 418fd7e85e2..7a2fb63008e 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -17258,7 +17258,7 @@ in
 
   gohufont = callPackage ../data/fonts/gohufont { };
 
-  gnome_user_docs = callPackage ../data/documentation/gnome-user-docs { };
+  gnome-user-docs = callPackage ../data/documentation/gnome-user-docs { };
 
   gsettings-desktop-schemas = callPackage ../development/libraries/gsettings-desktop-schemas { };
 
@@ -20432,7 +20432,6 @@ in
 
   orca = python3Packages.callPackage ../applications/misc/orca {
     inherit (pkgs) pkgconfig;
-    inherit (gnome3) yelp-tools;
   };
 
   osm2xmap = callPackage ../applications/misc/osm2xmap {
@@ -22252,6 +22251,8 @@ in
 
   inherit (gnome3) yelp;
 
+  yelp-tools = callPackage ../development/misc/yelp-tools { };
+
   yokadi = python3Packages.callPackage ../applications/misc/yokadi {};
 
   yoshimi = callPackage ../applications/audio/yoshimi { };
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index d0b22bf777d..a4ab06b0db0 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -958,6 +958,8 @@ in {
 
   pydocumentdb = callPackage ../development/python-modules/pydocumentdb { };
 
+  pydrive = callPackage ../development/python-modules/pydrive { };
+
   pydy = callPackage ../development/python-modules/pydy { };
 
   pyexiv2 = disabledIf isPy3k (toPythonModule (callPackage ../development/python-modules/pyexiv2 {}));
@@ -3398,7 +3400,7 @@ in {
   google_api_python_client = let
     google_api_python_client = callPackage ../development/python-modules/google-api-python-client { };
   in if isPy3k then google_api_python_client else
-    # Python 2.7 support was deprecated but is still needed by weboob
+    # Python 2.7 support was deprecated but is still needed by weboob and duplicity
     google_api_python_client.overridePythonAttrs (old: rec {
       version = "1.7.6";
       src = old.src.override {
@@ -4514,6 +4516,8 @@ in {
 
   Babel = callPackage ../development/python-modules/Babel { };
 
+  babelgladeextractor = callPackage ../development/python-modules/babelgladeextractor { };
+
   pybfd = callPackage ../development/python-modules/pybfd { };
 
   pybigwig = callPackage ../development/python-modules/pybigwig { };