Merge pull request #122997 from NixOS/gnome-40

GNOME 40: more updates
This commit is contained in:
Jan Tojnar 2021-05-15 16:25:54 +02:00 committed by GitHub
commit 80a3e0dc0e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 217 additions and 156 deletions

View file

@ -24,11 +24,11 @@
stdenv.mkDerivation rec {
pname = "gnome-calendar";
version = "40.0";
version = "40.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "0d74hng9jdmwdcjgj4xfrcink2gwkbp1k1mad4wanaf7q31c6f38";
sha256 = "2M30n57uHDo8aZHDL4VjxKfE2w23ymPOUcyRjkM7M6U=";
};
patches = [

View file

@ -1,46 +1,45 @@
{ lib, stdenv
{ lib
, stdenv
, fetchurl
, gnome
, meson
, ninja
, vala
, pkg-config
, vala
, gettext
, itstool
, python3
, appstream-glib
, desktop-file-utils
, wrapGAppsHook
, glib
, gtk3
, python3
, libxml2
, gtk-vnc
, gettext
, desktop-file-utils
, appstream-glib
, gobject-introspection
, freerdp
, wrapGAppsHook
, gtk-frdp
, gnome
}:
stdenv.mkDerivation rec {
pname = "gnome-connections";
version = "3.38.1";
version = "40.0.1";
src = fetchurl {
url = "mirror://gnome/sources/connections/${lib.versions.majorMinor version}/connections-${version}.tar.xz";
hash = "sha256-5c7uBFkh9Vsw6bWWUDjNTMDrrFqI5JEgYlsWpfyuTpA=";
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
hash = "sha256-vpvLoHzz+vWs4M5UzSL4YJtNx3ZuJe5f2cGAw5WbTRE=";
};
nativeBuildInputs = [
desktop-file-utils
gettext
glib # glib-compile-resources
meson
appstream-glib
ninja
pkg-config
python3
vala
gettext
itstool
python3
appstream-glib
desktop-file-utils
glib # glib-compile-resources
wrapGAppsHook
# for gtk-frdp subproject
gobject-introspection
];
buildInputs = [
@ -48,9 +47,7 @@ stdenv.mkDerivation rec {
gtk-vnc
gtk3
libxml2
# for gtk-frdp subproject
freerdp
gtk-frdp
];
postPatch = ''
@ -60,8 +57,7 @@ stdenv.mkDerivation rec {
passthru = {
updateScript = gnome.updateScript {
packageName = "connections";
attrPath = "gnome-connections";
packageName = pname;
};
};

View file

@ -1,4 +1,5 @@
{ lib, stdenv
{ lib
, stdenv
, fetchurl
, fetchpatch
, meson
@ -9,13 +10,14 @@
, gettext
, gnome
, glib
, gtk3
, gtk4
, wayland
, libadwaita
, libpeas
, gnome-online-accounts
, gsettings-desktop-schemas
, libportal
, evolution-data-server
, libxml2
, libsoup
, libical
, librest
, json-glib
@ -23,26 +25,13 @@
stdenv.mkDerivation rec {
pname = "gnome-todo";
version = "3.28.1";
version = "40.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "08ygqbib72jlf9y0a16k54zz51sncpq2wa18wp81v46q8301ymy7";
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "aAl8lvBnXHFCZn0QQ0ToNHLdf8xTj+wKzb9gJrucobE=";
};
patches = [
# fix build with libecal 2.0
(fetchpatch {
name = "gnome-todo-eds-libecal-2.0.patch";
url = "https://src.fedoraproject.org/rpms/gnome-todo/raw/bed44b8530f3c79589982e03b430b3a125e9bceb/f/gnome-todo-eds-libecal-2.0.patch";
sha256 = "1ghrz973skal36j90wm2z13m3panw983r6y0k7z9gpj5lxgz92mq";
})
];
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
'';
nativeBuildInputs = [
meson
ninja
@ -54,23 +43,30 @@ stdenv.mkDerivation rec {
buildInputs = [
glib
gtk3
gtk4
wayland # required by gtk header
libadwaita
libpeas
gnome-online-accounts
gsettings-desktop-schemas
gnome.adwaita-icon-theme
# Plug-ins
evolution-data-server
libxml2
libsoup
libportal # background
evolution-data-server # eds
libical
librest
json-glib
librest # todoist
json-glib # todoist
];
# Fix parallel building: missing dependency from src/gtd-application.c
# Probably remove for 3.30+ https://gitlab.gnome.org/GNOME/gnome-todo/issues/170
preBuild = "ninja src/gtd-vcs-identifier.h";
postPatch = ''
chmod +x build-aux/meson/meson_post_install.py
patchShebangs build-aux/meson/meson_post_install.py
# https://gitlab.gnome.org/GNOME/gnome-todo/merge_requests/103
substituteInPlace src/meson.build \
--replace 'Gtk-3.0' 'Gtk-4.0'
'';
passthru = {
updateScript = gnome.updateScript {

View file

@ -12,17 +12,20 @@
, libvncserver
, libsecret
, libnotify
, libxkbcommon
, gdk-pixbuf
, freerdp
, fuse3
, gnome
}:
stdenv.mkDerivation rec {
pname = "gnome-remote-desktop";
version = "0.1.9";
version = "40.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
hash = "sha256-8iZtp4tBRT7NNRKuzwop3rcMvq16RG/I2sAlEIsJ0M8=";
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
hash = "sha256-mvpuUlVwo3IJP5cwM4JwkDiU87H5+KnfX1eDbqHSnek=";
};
nativeBuildInputs = [
@ -36,11 +39,13 @@ stdenv.mkDerivation rec {
buildInputs = [
cairo
freerdp
fuse3
gdk-pixbuf # For libnotify
glib
libnotify
libsecret
libvncserver
libxkbcommon
pipewire
systemd
];
@ -54,6 +59,13 @@ stdenv.mkDerivation rec {
"-Dsystemd_user_unit_dir=${placeholder "out"}/lib/systemd/user"
];
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Projects/Mutter/RemoteDesktop";
description = "GNOME Remote Desktop server";

View file

@ -1,20 +1,23 @@
{ lib, stdenv, fetchurl, fetchpatch, meson, ninja, gettext, pkg-config, spidermonkey_68, glib
, gnome, gnome-menus, substituteAll }:
{ lib
, stdenv
, fetchurl
, meson
, ninja
, gettext
, pkg-config
, glib
, gnome
, gnome-menus
, substituteAll
}:
stdenv.mkDerivation rec {
pname = "gnome-shell-extensions";
version = "40.0";
version = "40.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-shell-extensions/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "15hak4prx2nx1svfii39clxy1lll8crdf7p91if85jcsh6r8ab8p";
};
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
sha256 = "T7/OCtQ1e+5zrn3Bjqoe9MqnOF5PlPavuN/HJR/RqL8=";
};
patches = [
@ -22,24 +25,19 @@ stdenv.mkDerivation rec {
src = ./fix_gmenu.patch;
gmenu_path = "${gnome-menus}/lib/girepository-1.0";
})
# Do not show welcome dialog in gnome-classic.
# Needed for gnome-shell 40.1.
# https://gitlab.gnome.org/GNOME/gnome-shell-extensions/merge_requests/169
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-shell-extensions/commit/3e8bbb07ea7109c44d5ac7998f473779e742d041.patch";
sha256 = "jSmPwSBgRBfPPP9mGVjw1mSWumIXQqtA6tSqHr3U+3w=";
})
];
doCheck = true;
# 60 is required for tests
# https://gitlab.gnome.org/GNOME/gnome-shell-extensions/blob/3.34.0/meson.build#L23
checkInputs = [ spidermonkey_68 ];
nativeBuildInputs = [
meson
ninja
pkg-config
gettext
glib
];
nativeBuildInputs = [ meson ninja pkg-config gettext glib ];
mesonFlags = [ "-Dextension_set=all" ];
mesonFlags = [
"-Dextension_set=all"
];
preFixup = ''
# The meson build doesn't compile the schemas.
@ -63,11 +61,18 @@ stdenv.mkDerivation rec {
done
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Projects/GnomeShell/Extensions";
description = "Modify and extend GNOME Shell functionality and behavior";
maintainers = teams.gnome.members;
license = licenses.gpl2;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -1,6 +1,5 @@
{ fetchurl
, fetchpatch
, fetchgit
, substituteAll
, lib, stdenv
, meson
@ -67,20 +66,14 @@ let
in
stdenv.mkDerivation rec {
pname = "gnome-shell";
version = "40.0-unstable-2021-05-01";
version = "40.1";
outputs = [ "out" "devdoc" ];
src = fetchgit {
url = "https://gitlab.gnome.org/GNOME/gnome-shell.git";
rev = "a8a79c03330427808e776c344f7ebc42782a1b5a";
sha256 = "ivHV0SRpnBqsdC7fu1Xhtd/BA55O0UdbUyDLy5KHNYs=";
fetchSubmodules = true;
src = fetchurl {
url = "mirror://gnome/sources/gnome-shell/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "sha256-9j4r7Zm9iVjPMT2F9EoBjVn4UqBbqfKap8t0S+xvprc=";
};
# src = fetchurl {
# url = "mirror://gnome/sources/gnome-shell/${lib.versions.major version}/${pname}-${version}.tar.xz";
# sha256 = "sha256-vOcfQC36qcXiab9lv0iiI0PYlubPmiw0ZpOS1/v2hHg=";
# };
patches = [
# Hardcode paths to various dependencies so that they can be found at runtime.

View file

@ -1,8 +1,8 @@
{ fetchurl
, fetchpatch
, substituteAll
, runCommand
, lib, stdenv
, lib
, stdenv
, pkg-config
, gnome
, gettext
@ -45,13 +45,13 @@
let self = stdenv.mkDerivation rec {
pname = "mutter";
version = "40.0";
version = "40.1";
outputs = [ "out" "dev" "man" ];
src = fetchurl {
url = "mirror://gnome/sources/mutter/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "sha256-enGzEuWmZ8U3SJUYilBqP2tnF2i8s2K2jv3FYnc9GY4=";
sha256 = "sha256-pl8ycpYRM4KWh9QQcmfk4ZKQ5thueAf62H6rCDHB4MA=";
};
patches = [
@ -63,13 +63,6 @@ let self = stdenv.mkDerivation rec {
src = ./fix-paths.patch;
inherit zenity;
})
# Fix non-deterministic build failure:
# https://gitlab.gnome.org/GNOME/mutter/-/issues/1682
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/mutter/commit/91117bb052ed0d69c8ea4159c1df15c814d90627.patch";
sha256 = "ek8hEoPP4S2TGOm6SGGOhUVIp4OT68nz0SQzZrceFUU=";
})
];
mesonFlags = [

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-sound-output-device-chooser";
version = "35";
version = "38";
src = fetchFromGitHub {
owner = "kgshank";
repo = "gse-sound-output-device-chooser";
rev = version;
sha256 = "sha256-Yl5ut6kJAkAAdCBiNFpwDgshXCLMmFH3/zhnFGpyKqs=";
sha256 = "sha256-LZ+C9iK+j7+DEscYCIObxXc0Bn0Z0xSsEFMZxc8REWA=";
};
patches = [
@ -28,11 +28,13 @@ stdenv.mkDerivation rec {
dontBuild = true;
uuid = "sound-output-device-chooser@kgshank.net";
installPhase = ''
runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions
runHook postInstall
makeFlags = [
"INSTALL_DIR=${placeholder "out"}/share/gnome-shell/extensions"
];
preInstall = ''
mkdir -p ${placeholder "out"}/share/gnome-shell/extensions
'';
meta = with lib; {

View file

@ -1,18 +1,18 @@
From 2bf6614a6d7516e194e39eb691c05b486860153c Mon Sep 17 00:00:00 2001
From 57bed86429db9d871f1442c94f14e94e38972ca3 Mon Sep 17 00:00:00 2001
From: worldofpeace <worldofpeace@protonmail.ch>
Date: Thu, 16 May 2019 21:15:15 -0400
Subject: [PATCH] meson: add options for tests installation dirs
---
meson_options.txt | 6 ++++++
tests/meson.build | 19 ++++++++++++++-----
2 files changed, 20 insertions(+), 5 deletions(-)
tests/meson.build | 23 ++++++++++++++++-------
2 files changed, 22 insertions(+), 7 deletions(-)
diff --git a/meson_options.txt b/meson_options.txt
index 578bdae..6f5fa23 100644
index b9a2fb5..4b8629f 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -22,3 +22,9 @@ option('tests', type: 'boolean',
@@ -23,3 +23,9 @@ option('tests', type: 'boolean',
option('installed_tests', type: 'boolean',
value: true,
description: 'Install tests')
@ -23,12 +23,12 @@ index 578bdae..6f5fa23 100644
+ value: '',
+ description: 'Installation directory for binary files in tests')
diff --git a/tests/meson.build b/tests/meson.build
index 1f9bd0e..0253ac3 100644
index 77281f5..c4c7fac 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -22,8 +22,17 @@ unit_tests = [
python = python3.find_python()
gen_installed_test = join_paths(meson.current_source_dir(), 'gen-installed-test.py')
@@ -21,8 +21,17 @@ unit_tests = [
gen_installed_test = find_program('gen-installed-test.py')
-installed_test_datadir = join_paths(get_option('prefix'), get_option('datadir'), 'installed-tests', graphene_api_path)
-installed_test_bindir = join_paths(get_option('prefix'), get_option('libexecdir'), 'installed-tests', graphene_api_path)
@ -46,9 +46,9 @@ index 1f9bd0e..0253ac3 100644
# Make tests conditional on having mutest-1 installed system-wide, or
# available as a subproject
@@ -42,13 +51,13 @@ if mutest_dep.found()
@@ -40,13 +49,13 @@ if mutest_dep.found()
output: wrapper,
command: [
python,
gen_installed_test,
- '--testdir=@0@'.format(installed_test_bindir),
+ '--testdir=@0@'.format(test_bindir),
@ -62,7 +62,7 @@ index 1f9bd0e..0253ac3 100644
)
test(unit,
@@ -57,7 +66,7 @@ if mutest_dep.found()
@@ -55,7 +64,7 @@ if mutest_dep.found()
include_directories: graphene_inc,
c_args: common_cflags,
install: get_option('installed_tests'),
@ -71,6 +71,22 @@ index 1f9bd0e..0253ac3 100644
),
env: ['MUTEST_OUTPUT=tap'],
protocol: 'tap',
@@ -70,13 +79,13 @@ if build_gir and host_system == 'linux' and not meson.is_cross_build()
output: wrapper,
command: [
gen_installed_test,
- '--testdir=@0@'.format(installed_test_bindir),
+ '--testdir=@0@'.format(test_bindir),
'--testname=@0@'.format(unit),
'--outdir=@OUTDIR@',
'--outfile=@0@'.format(wrapper),
],
install: get_option('installed_tests'),
- install_dir: installed_test_datadir,
+ install_dir: test_datadir,
)
test(unit,
--
2.22.0
2.31.1

View file

@ -16,7 +16,7 @@
stdenv.mkDerivation rec {
pname = "graphene";
version = "1.10.2";
version = "1.10.6";
outputs = [ "out" "devdoc" "installedTests" ];
@ -24,19 +24,14 @@ stdenv.mkDerivation rec {
owner = "ebassi";
repo = pname;
rev = version;
sha256 = "1ljhhjafi1nlndjswx7mg0d01zci90wz77yvz5w8bd9mm8ssw38s";
sha256 = "v6YH3fRMTzhp7wmU8in9ukcavzHmOAW54EK9ZwQyFxc=";
};
patches = [
# Add option for changing installation path of installed tests.
./0001-meson-add-options-for-tests-installation-dirs.patch
];
mesonFlags = [
"-Dgtk_doc=true"
"-Dinstalled_test_datadir=${placeholder "installedTests"}/share"
"-Dinstalled_test_bindir=${placeholder "installedTests"}/libexec"
];
nativeBuildInputs = [
docbook_xml_dtd_43
docbook_xsl
@ -57,8 +52,18 @@ stdenv.mkDerivation rec {
mutest
];
mesonFlags = [
"-Dgtk_doc=true"
"-Dinstalled_test_datadir=${placeholder "installedTests"}/share"
"-Dinstalled_test_bindir=${placeholder "installedTests"}/libexec"
];
doCheck = true;
postPatch = ''
patchShebangs tests/gen-installed-test.py
'';
passthru = {
tests = {
installedTests = nixosTests.installed-tests.graphene;

View file

@ -0,0 +1,54 @@
{ lib
, stdenv
, fetchFromGitLab
, meson
, ninja
, pkg-config
, vala
, gobject-introspection
, glib
, gtk3
, freerdp
, nix-update-script
}:
stdenv.mkDerivation rec {
pname = "gtk-frdp";
version = "3.37.1-unstable-2020-10-26";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "GNOME";
repo = pname;
rev = "805721e82ca1df6a50da3b5bd3b75d6747016482";
sha256 = "q/UFKYj3LUkAzll3KeKd6oec0GJnDtTuFMTTatKFlcs=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
vala
gobject-introspection
];
buildInputs = [
glib
gtk3
freerdp
];
passthru = {
updateScript = nix-update-script {
attrPath = pname;
};
};
meta = with lib; {
homepage = "https://gitlab.gnome.org/GNOME/gtk-frdp";
description = "RDP viewer widget for GTK";
maintainers = teams.gnome.members;
license = licenses.lgpl3Plus;
platforms = platforms.unix;
};
}

View file

@ -1,6 +1,6 @@
{ lib, stdenv
{ stdenv
, lib
, fetchFromGitHub
, fetchpatch
, meson
, ninja
, pkg-config
@ -12,7 +12,7 @@
stdenv.mkDerivation rec {
pname = "libportal";
version = "0.3";
version = "0.4";
outputs = [ "out" "dev" "devdoc" ];
@ -20,22 +20,9 @@ stdenv.mkDerivation rec {
owner = "flatpak";
repo = pname;
rev = version;
sha256 = "1s3g17zbbmq3m5jfs62fl94p4irln9hfhpybj7jb05z0p1939rk3";
sha256 = "fuYZWGkdazq6H0rThqpF6KIcvwgc17o+CiISb1LjBso=";
};
patches = [
# Fix build and .pc file
# https://github.com/flatpak/libportal/pull/20
(fetchpatch {
url = "https://github.com/flatpak/libportal/commit/7828be4ec8f05f8de7b129a1e35b5039d8baaee3.patch";
sha256 = "04nadcxx69mbnzljwjrzm88cgapn14x3mghpkhr8b9yrjn7yj86h";
})
(fetchpatch {
url = "https://github.com/flatpak/libportal/commit/bf5de2f6fefec65f701b4ec8712b48b29a33fb71.patch";
sha256 = "1v0b09diq49c01j5gg2bpvn5f5gfw1a5nm1l8grc4qg4z9jck1z8";
})
];
nativeBuildInputs = [
meson
ninja

View file

@ -16,13 +16,13 @@
python3.pkgs.buildPythonApplication rec {
pname = "d-feet";
version = "0.3.15";
version = "0.3.16";
format = "other";
src = fetchurl {
url = "mirror://gnome/sources/d-feet/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1cgxgpj546jgpyns6z9nkm5k48lid8s36mvzj8ydkjqws2d19zqz";
sha256 = "hzPOS5qaVOwYWx2Fv02p2dEQUogqiAdg/2D5d5stHMs=";
};
nativeBuildInputs = [

View file

@ -5363,6 +5363,8 @@ in
gtkperf = callPackage ../development/tools/misc/gtkperf { };
gtk-frdp = callPackage ../development/libraries/gtk-frdp {};
gtk-vnc = callPackage ../tools/admin/gtk-vnc {};
gtmess = callPackage ../applications/networking/instant-messengers/gtmess {