git.iko.soy/typeable/nixpkgs
on master help sign in
Merge pull request #162229 from jtojnar/gnome-backports

GNOME: Backport fixes & stable updates from 42 branch

commitf5d04780b252a41df5de4b3b3517d79f1f26ac44 authorJan Tojnar <jtojnar@gmail.com> dateTue 1 Mar 2022, 13:56 (5 years ago) parentbd76fed60ae3a1
14 files changed+107−48
pkgs/applications/video/clapper/default.nix+2−2 pkgs/desktops/gnome/default.nix+3−3 pkgs/desktops/gnome/games/gnome-2048/default.nix+2−1 pkgs/development/libraries/accountsservice/default.nix+2−12 pkgs/development/libraries/libgda/6.x.nix+15 pkgs/development/libraries/libgdata/default.nix+3−3 pkgs/desktops/gnome/misc/libgnome-games-support/default.nix → pkgs/development/libraries/libgnome-games-support/default.nix−1 pkgs/development/libraries/libsigcxx/3.0.nix+2−2 pkgs/development/libraries/libsigcxx/default.nix+2−2 pkgs/development/libraries/libwnck/default.nix+2−2 pkgs/os-specific/linux/upower/default.nix+53−19 pkgs/tools/misc/colord-gtk/default.nix+10−1 pkgs/tools/networking/networkmanager/libnma/default.nix+5 pkgs/top-level/all-packages.nix+6
pkgs/applications/video/clapper/default.nix+2−2
@@ -12,7 +12,7 @@
1212, desktop-file-utils
1313, makeWrapper
1414, shared-mime-info
15−, wrapGAppsHook
15+, wrapGAppsHook4
1616, meson
1717, gjs
1818, gtk4
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
4444 pkg-config
4545 python3
4646 shared-mime-info # for update-mime-database
47− wrapGAppsHook # for gsettings
47+ wrapGAppsHook4 # for gsettings
4848 ];
4949
5050 buildInputs = [
pkgs/desktops/gnome/default.nix+3−3
@@ -255,8 +255,6 @@ lib.makeScope pkgs.newScope (self: with self; {
255255
256256 gitg = callPackage ./misc/gitg { };
257257
258− libgnome-games-support = callPackage ./misc/libgnome-games-support { };
259−
260258 gnome-applets = callPackage ./misc/gnome-applets { };
261259
262260 gnome-flashback = callPackage ./misc/gnome-flashback { };
@@ -283,6 +281,8 @@ lib.makeScope pkgs.newScope (self: with self; {
283281}) // lib.optionalAttrs (config.allowAliases or true) {
284282#### Legacy aliases. They need to be outside the scope or they will shadow the attributes from parent scope.
285283
284+ libgnome-games-support = pkgs.libgnome-games-support; # added 2022-02-19
285+
286286 bijiben = throw "The ‘gnome.bijiben’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-notes’ directly."; # added 2018-09-26
287287 evolution_data_server = throw "The ‘gnome.evolution_data_server’ alias was removed on 2022-01-13. Please use ‘gnome.evolution-data-server’ directly."; # added 2018-02-25
288288 geocode_glib = throw "The ‘gnome.geocode_glib’ alias was removed on 2022-01-13. Please use ‘pkgs.geocode-glib’ directly."; # added 2018-02-25
@@ -300,7 +300,7 @@ lib.makeScope pkgs.newScope (self: with self; {
300300 gnome_themes_standard = throw "The ‘gnome.gnome_themes_standard’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-themes-standard’ directly."; # added 2018-02-25
301301 gnome-tweak-tool = throw "The ‘gnome.gnome-tweak-tool’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-tweaks’ directly."; # added 2018-03-21
302302 gsettings_desktop_schemas = throw "The ‘gnome.gsettings_desktop_schemas’ alias was removed on 2022-01-13. Please use ‘gnome.gsettings-desktop-schemas’ directly."; # added 2018-02-25
303− libgames-support = throw "The ‘gnome.libgames-support’ alias was removed on 2022-01-13. Please use ‘gnome.libgnome-games-support’ directly."; # added 2018-03-14
303+ libgames-support = throw "The ‘gnome.libgames-support’ alias was removed on 2022-01-13. Please use ‘pkgs.libgnome-games-support’ directly."; # added 2018-03-14
304304 libgnome_keyring = throw "The ‘gnome.libgnome_keyring’ alias was removed on 2022-01-13. Please use ‘gnome.libgnome-keyring’ directly."; # added 2018-02-25
305305 rarian = throw "The ‘gnome.rarian’ alias was removed on 2022-01-13. Please use ‘pkgs.rarian’ directly."; # added 2018-04-25
306306 networkmanager_fortisslvpn = throw "The ‘gnome.networkmanager_fortisslvpn’ alias was removed on 2022-01-13. Please use ‘gnome.networkmanager-fortisslvpn’ directly."; # added 2018-02-25
pkgs/desktops/gnome/games/gnome-2048/default.nix+2−1
@@ -9,6 +9,7 @@
99, itstool
1010, clutter-gtk
1111, libgee
12+, libgnome-games-support
1213, gnome
1314, gtk3
1415}:
@@ -34,7 +35,7 @@ stdenv.mkDerivation rec {
3435 buildInputs = [
3536 clutter-gtk
3637 libgee
37− gnome.libgnome-games-support
38+ libgnome-games-support
3839 gtk3
3940 ];
4041
pkgs/development/libraries/accountsservice/default.nix+2−12
@@ -1,7 +1,6 @@
11{ lib
22, stdenv
33, fetchurl
4−, fetchpatch
54, substituteAll
65, pkg-config
76, glib
@@ -20,13 +19,13 @@
2019
2120stdenv.mkDerivation rec {
2221 pname = "accountsservice";
23− version = "22.07.5";
22+ version = "22.08.8";
2423
2524 outputs = [ "out" "dev" ];
2625
2726 src = fetchurl {
2827 url = "https://www.freedesktop.org/software/accountsservice/accountsservice-${version}.tar.xz";
29− sha256 = "IdRJwN6tilQ86o8R5x6wSWwDXXMOpIOTOXowKzpMfBo=";
28+ sha256 = "kJmXp2kZ/n3BOKmgHOpwvWItWpMtvJ+xMBARMCOno5E=";
3029 };
3130
3231 patches = [
@@ -45,15 +44,6 @@ stdenv.mkDerivation rec {
4544 # Do not ignore third-party (e.g Pantheon) extensions not matching FHS path scheme.
4645 # Fixes https://github.com/NixOS/nixpkgs/issues/72396
4746 ./drop-prefix-check-extensions.patch
48−
49− # Work around not being able to set profile picture in GNOME Settings.
50− # https://github.com/NixOS/nixpkgs/issues/85357
51− # https://gitlab.freedesktop.org/accountsservice/accountsservice/-/issues/98
52− # https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1629
53− (fetchpatch {
54− url = "https://gitlab.freedesktop.org/accountsservice/accountsservice/-/commit/1ef3add46983af875adfed5d29954cbfb184f688.patch";
55− sha256 = "N4siK4SWkwYBnFa0JJUFgahi9XBkB/nS5yc+PyH3/iM=";
56− })
5747 ];
5848
5949 nativeBuildInputs = [
pkgs/development/libraries/libgda/6.x.nix+15
@@ -1,6 +1,7 @@
11{ lib
22, stdenv
33, fetchurl
4+, fetchpatch
45, pkg-config
56, intltool
67, meson
@@ -37,6 +38,20 @@ stdenv.mkDerivation rec {
3738 sha256 = "0w564z7krgjk19r39mi5qn4kggpdg9ggbyn9pb4aavb61r14npwr";
3839 };
3940
41+ patches = [
42+ # Fix undefined behavior
43+ (fetchpatch {
44+ url = "https://gitlab.gnome.org/GNOME/libgda/-/commit/657b2f8497da907559a6769c5b1d2d7b5bd40688.patch";
45+ sha256 = "Qx4S9KQsTAr4M0QJi0Xr5kKuHSp4NwZJHoRPYyxIyTk=";
46+ })
47+
48+ # Fix building vapi
49+ (fetchpatch {
50+ url = "https://gitlab.gnome.org/GNOME/libgda/-/commit/57f618a3b2a3758ee3dcbf9bbdc566122dd8566d.patch";
51+ sha256 = "pyfymUd61m1kHaGyMbUQMma+szB8mlqGWwcFBBQawf8=";
52+ })
53+ ];
54+
4055 nativeBuildInputs = [
4156 pkg-config
4257 intltool
pkgs/development/libraries/libgdata/default.nix+3−3
@@ -45,15 +45,15 @@ stdenv.mkDerivation rec {
4545
4646 buildInputs = [
4747 gcr
48− glib
49− libsoup
50− libxml2
5148 openssl
5249 p11-kit
5350 uhttpmock
5451 ];
5552
5653 propagatedBuildInputs = [
54+ glib
55+ libsoup
56+ libxml2
5757 gnome-online-accounts
5858 json-glib
5959 ];
pkgs/desktops/gnome/misc/libgnome-games-support/default.nix → pkgs/development/libraries/libgnome-games-support/default.nixrenamed−1
@@ -43,7 +43,6 @@ stdenv.mkDerivation rec {
4343 passthru = {
4444 updateScript = gnome.updateScript {
4545 packageName = pname;
46− attrPath = "gnome.${pname}";
4746 versionPolicy = "odd-unstable";
4847 };
4948 };
pkgs/development/libraries/libsigcxx/3.0.nix+2−2
@@ -9,11 +9,11 @@
99
1010stdenv.mkDerivation rec {
1111 pname = "libsigc++";
12− version = "3.0.7";
12+ version = "3.2.0";
1313
1414 src = fetchurl {
1515 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
16− sha256 = "v76RwNCU6mu8bL05CbfZjGVh7qi22cDCWt2Qam6D1zM=";
16+ sha256 = "jNy5huPwp8W0R0qjyDPWduYkaVCfSJkRDd8RjwQIJlE=";
1717 };
1818
1919 nativeBuildInputs = [
pkgs/development/libraries/libsigcxx/default.nix+2−2
@@ -2,11 +2,11 @@
22
33stdenv.mkDerivation rec {
44 pname = "libsigc++";
5− version = "2.10.7";
5+ version = "2.10.8";
66
77 src = fetchurl {
88 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
9− sha256 = "sha256-0IKiznLHUPZrGkFavj6FLfLq4eivUwEPSsLqJhpHiDI=";
9+ sha256 = "sha256-I1pAvsc0bHuCtqjKrgRWNT3AbnHxS8QUvMhYrxg4cZo=";
1010 };
1111
1212 nativeBuildInputs = [ pkg-config meson ninja ];
pkgs/development/libraries/libwnck/default.nix+2−2
@@ -21,14 +21,14 @@
2121
2222stdenv.mkDerivation rec {
2323 pname = "libwnck";
24− version = "40.0";
24+ version = "40.1";
2525
2626 outputs = [ "out" "dev" "devdoc" ];
2727 outputBin = "dev";
2828
2929 src = fetchurl {
3030 url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
31− sha256 = "MMt5qDn5DNZvPiAvP5jLUWb6DNm5LrVxrZxHCkMCHYM=";
31+ sha256 = "AxNPoRTvP740B1qoNnj1iqLevp/O9OojwHeeKGAdZhE=";
3232 };
3333
3434 nativeBuildInputs = [
pkgs/os-specific/linux/upower/default.nix+53−19
@@ -1,8 +1,13 @@
11{ lib
22, stdenv
3−, fetchurl
3+, fetchFromGitLab
44, pkg-config
5+, rsync
56, libxslt
7+, meson
8+, ninja
9+, python3
10+, gtk-doc
611, docbook_xsl
712, udev
813, libgudev
@@ -15,23 +20,31 @@
1520, libimobiledevice
1621}:
1722
18−stdenv.mkDerivation {
23+stdenv.mkDerivation rec {
1924 pname = "upower";
20− version = "0.99.13";
25+ version = "0.99.15";
2126
22− outputs = [ "out" "dev" ];
27+ outputs = [ "out" "dev" "devdoc" ];
2328
24− src = fetchurl {
25− url = "https://gitlab.freedesktop.org/upower/upower/uploads/177df5b9f9b76f25a2ad9da41aa0c1fa/upower-0.99.13.tar.xz";
26− sha256 = "sha256-XK1w+RVAzH3BIcsX4K1kXl5mPIaC9gp75C7jjNeyPXo=";
29+ src = fetchFromGitLab {
30+ domain = "gitlab.freedesktop.org";
31+ owner = "upower";
32+ repo = "upower";
33+ rev = "v${version}";
34+ sha256 = "sha256-GlLy2MPip21KOabdW8Vw6NVe3xhzsd9htxQ2xO/hZ/4=";
2735 };
2836
2937 nativeBuildInputs = [
38+ meson
39+ ninja
40+ python3
41+ gtk-doc
3042 docbook_xsl
3143 gettext
3244 gobject-introspection
3345 libxslt
3446 pkg-config
47+ rsync
3548 ];
3649
3750 buildInputs = [
@@ -39,29 +52,50 @@ stdenv.mkDerivation {
3952 libusb1
4053 udev
4154 systemd
42− ]
43− ++ lib.optional useIMobileDevice libimobiledevice
44− ;
55+ ] ++ lib.optionals useIMobileDevice [
56+ libimobiledevice
57+ ];
4558
4659 propagatedBuildInputs = [
4760 glib
4861 ];
4962
50− configureFlags = [
63+ mesonFlags = [
5164 "--localstatedir=/var"
52− "--with-backend=linux"
53− "--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system"
54− "--with-systemdutildir=${placeholder "out"}/lib/systemd"
55− "--with-udevrulesdir=${placeholder "out"}/lib/udev/rules.d"
5665 "--sysconfdir=/etc"
66+ "-Dos_backend=linux"
67+ "-Dsystemdsystemunitdir=${placeholder "out"}/etc/systemd/system"
68+ "-Dudevrulesdir=${placeholder "out"}/lib/udev/rules.d"
5769 ];
5870
5971 doCheck = false; # fails with "env: './linux/integration-test': No such file or directory"
6072
61− installFlags = [
62− "historydir=$(TMPDIR)/foo"
63− "sysconfdir=${placeholder "out"}/etc"
64− ];
73+ postPatch = ''
74+ patchShebangs src/linux/unittest_inspector.py
75+ '';
76+
77+ postInstall = ''
78+ # Move stuff from DESTDIR to proper location.
79+ # We use rsync to merge the directories.
80+ for dir in etc var; do
81+ rsync --archive "${DESTDIR}/$dir" "$out"
82+ rm --recursive "${DESTDIR}/$dir"
83+ done
84+ for o in out dev; do
85+ rsync --archive "${DESTDIR}/''${!o}" "$(dirname "''${!o}")"
86+ rm --recursive "${DESTDIR}/''${!o}"
87+ done
88+ # Ensure the DESTDIR is removed.
89+ rmdir "${DESTDIR}/nix/store" "${DESTDIR}/nix" "${DESTDIR}"
90+ '';
91+
92+ # HACK: We want to install configuration files to $out/etc
93+ # but upower should read them from /etc on a NixOS system.
94+ # With autotools, it was possible to override Make variables
95+ # at install time but Meson does not support this
96+ # so we need to convince it to install all files to a temporary
97+ # location using DESTDIR and then move it to proper one in postInstall.
98+ DESTDIR = "${placeholder "out"}/dest";
6599
66100 meta = with lib; {
67101 homepage = "https://upower.freedesktop.org/";
pkgs/tools/misc/colord-gtk/default.nix+10−1
@@ -12,6 +12,7 @@
1212, docbook_xml_dtd_412
1313, libxslt
1414, glib
15+, withGtk4 ? false
1516, gtk3
1617, gtk4
1718, pkg-config
@@ -49,13 +50,21 @@ stdenv.mkDerivation rec {
4950
5051 propagatedBuildInputs = [
5152 colord
52− gtk3
53+ ] ++ (if withGtk4 then [
5354 gtk4
55+ ] else [
56+ gtk3
57+ ]);
58+
59+ mesonFlags = [
60+ "-Dgtk4=${lib.boolToString withGtk4}"
61+ "-Dgtk3=${lib.boolToString (!withGtk4)}"
5462 ];
5563
5664 meta = with lib; {
5765 homepage = "https://www.freedesktop.org/software/colord/intro.html";
5866 license = licenses.lgpl21Plus;
67+ maintainers = teams.gnome.members;
5968 platforms = platforms.linux;
6069 };
6170}
pkgs/tools/networking/networkmanager/libnma/default.nix+5
@@ -15,6 +15,8 @@
1515, mobile-broadband-provider-info
1616, gobject-introspection
1717, gtk3
18+, withGtk4 ? false
19+, gtk4
1820, withGnome ? true
1921, gcr
2022, glib
@@ -56,6 +58,8 @@ stdenv.mkDerivation rec {
5658 networkmanager
5759 isocodes
5860 mobile-broadband-provider-info
61+ ] ++ lib.optionals withGtk4 [
62+ gtk4
5963 ] ++ lib.optionals withGnome [
6064 # advanced certificate chooser
6165 gcr
@@ -63,6 +67,7 @@ stdenv.mkDerivation rec {
6367
6468 mesonFlags = [
6569 "-Dgcr=${lib.boolToString withGnome}"
70+ "-Dlibnma_gtk4=${lib.boolToString withGtk4}"
6671 ];
6772
6873 postPatch = ''
pkgs/top-level/all-packages.nix+6
@@ -4214,6 +4214,8 @@ with pkgs;
42144214
42154215 colord-gtk = callPackage ../tools/misc/colord-gtk { };
42164216
4217+ colord-gtk4 = colord-gtk.override { withGtk4 = true; };
4218+
42174219 colordiff = callPackage ../tools/text/colordiff { };
42184220
42194221 connect = callPackage ../tools/networking/connect { };
@@ -8159,6 +8161,8 @@ with pkgs;
81598161
81608162 libnma = callPackage ../tools/networking/networkmanager/libnma { };
81618163
8164+ libnma-gtk4 = libnma.override { withGtk4 = true; };
8165+
81628166 networkmanager_dmenu = callPackage ../tools/networking/networkmanager/dmenu { };
81638167
81648168 nm-tray = libsForQt5.callPackage ../tools/networking/networkmanager/tray.nix { };
@@ -17969,6 +17973,8 @@ with pkgs;
1796917973 libgnome-keyring = callPackage ../development/libraries/libgnome-keyring { };
1797017974 libgnome-keyring3 = gnome.libgnome-keyring;
1797117975
17976+ libgnome-games-support = callPackage ../development/libraries/libgnome-games-support { };
17977+
1797217978 libgnomekbd = callPackage ../development/libraries/libgnomekbd { };
1797317979
1797417980 libglvnd = callPackage ../development/libraries/libglvnd { };