Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2c195b286618
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 4cfe8fbf4cb3
Choose a head ref
  • 5 commits
  • 7 files changed
  • 2 contributors

Commits on Apr 12, 2020

  1. gnome3.gnome-shell: 3.36.0 -> 3.36.1

    - Adds bash-completion depedency.
    - New internal library (`libshew`) require absolute install path.
    - Some services (like the extension app) isn't wrapped correctly without
      patching.
    
    Co-authored-by: Jan Tojnar <jtojnar@gmail.com>
    hedning and jtojnar committed Apr 12, 2020
    Copy the full SHA
    b5fd24e View commit details
  2. Copy the full SHA
    8371297 View commit details
  3. Copy the full SHA
    53f5488 View commit details
  4. Copy the full SHA
    aac691a View commit details
  5. Merge pull request #84792 from hedning/gnome-shell-3.36.1

    Gnome shell 3.36.1
    hedning authored Apr 12, 2020
    Copy the full SHA
    4cfe8fb View commit details
4 changes: 2 additions & 2 deletions pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix
Original file line number Diff line number Diff line change
@@ -3,11 +3,11 @@

stdenv.mkDerivation rec {
pname = "gnome-shell-extensions";
version = "3.36.0";
version = "3.36.1";

src = fetchurl {
url = "mirror://gnome/sources/gnome-shell-extensions/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1rmi6ccqfdisvmmzaiqr2r031r0f3h8qxgw5qwq62x859nbrzcmm";
sha256 = "0fah7cc22g55w6w7ia3kr2wpdrc45h83xw4pimi54mhggmx9466y";
};

passthru = {
61 changes: 28 additions & 33 deletions pkgs/desktops/gnome-3/core/gnome-shell/default.nix
Original file line number Diff line number Diff line change
@@ -6,7 +6,9 @@
, accountsservice, gdk-pixbuf, gdm, upower, ibus, libnma, libgnomekbd, gnome-desktop
, gsettings-desktop-schemas, gnome-keyring, glib, gjs, mutter, evolution-data-server, gtk3
, sassc, systemd, gst_all_1, adwaita-icon-theme, gnome-bluetooth, gnome-clocks, gnome-settings-daemon
, gnome-autoar, asciidoc-full }:
, gnome-autoar, asciidoc-full
, bash-completion
}:

# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild?revision=1.3&view=markup

@@ -15,11 +17,11 @@ let

in stdenv.mkDerivation rec {
pname = "gnome-shell";
version = "3.36.0";
version = "3.36.1";

src = fetchurl {
url = "mirror://gnome/sources/gnome-shell/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1phkkkwrrigchz58xs324vf6snd1fm7mxa2iaqwwj526vh5c1s2q";
sha256 = "0696qw6bmbga30qlvh1k6bkiajl7877j8yis4bwmi1wxkcmkh854";
};

LANG = "en_US.UTF-8";
@@ -48,50 +50,36 @@ in stdenv.mkDerivation rec {

# not declared at build time, but typelib is needed at runtime
libgweather libnma

# for gnome-extension tool
bash-completion
];

patches = [
# Fix dependencies.
# https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1114
(fetchpatch {
name = "0001-build-Add-missing-dependency-to-run-js-test.patch";
url = "https://bug787864.bugzilla-attachments.gnome.org/attachment.cgi?id=360016";
sha256 = "1dmahd8ysbzh33rxglba0fbq127aw9h14cl2a2bw9913vjxhxijm";
})

# Hardcode paths to various dependencies so that they can be found at runtime.
(substituteAll {
src = ./fix-paths.patch;
inherit libgnomekbd unzip;
gsettings = "${glib.bin}/bin/gsettings";
})

# Fix ibus launching regression.
# https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1080
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-shell/commit/94f6976ddd6337593203fdcdd2e3644774408dfa.patch";
sha256 = "PGmFQhqqd3gK+3kp0dlmlYd2G5ZTIQpfE++Q03Ghkx0=";
})
# Install bash-completions to correct prefix.
# https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1194
./fix-bash-completion.patch

# Fix typing regression with ibus.
# https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1084
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-shell/commit/b18469427e5c19402111de5fe9888bceec0eaacd.patch";
sha256 = "1M+3kjt7K61BFgk1Zf9XfK1ziilQGa60PD8xtVjnQec=";
})
# Use absolute path for libshew installation to make our patched gobject-introspection
# aware of the location to hardcode in the generated GIR file.
./shew-gir-path.patch

# Fix theming breakage after Shell restart on X11.
# https://gitlab.gnome.org/GNOME/gnome-shell/issues/2329
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-shell/commit/72c4f148ef88b4bffb2106b99434da5c05c0bb64.patch";
sha256 = "RBA+JHz4ZvmbJZMnGNieD6D5LONRgFU4iOFIMQQ2kHQ=";
})
# Make D-Bus services wrappable.
./wrap-services.patch

# Fix Telepathy chat integration.
# https://gitlab.gnome.org/GNOME/gnome-shell/issues/2449
# Fix greeter logo being too big.
# https://gitlab.gnome.org/GNOME/gnome-shell/issues/2591
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-shell/commit/766288eec1bd3bd50dfc4ddf410c2b507187e603.patch";
sha256 = "Cp6xLohCM0gmMxtyYjSukS2oV60Khmxf4iQd9EDAlIc=";
url = "https://gitlab.gnome.org/GNOME/gnome-shell/commit/ffb8bd5fa7704ce70ce7d053e03549dd15dce5ae.patch";
revert = true;
sha256 = "9DdzjEnDiBL+JmdfgKwjYPn1O2wJ/6n1sMDT1ylUB5I=";
})
];

@@ -112,6 +100,13 @@ in stdenv.mkDerivation rec {
)
'';

postFixup = ''
# The services need typelibs.
for svc in org.gnome.Shell.Extensions org.gnome.Shell.Notifications; do
wrapGApp $out/share/gnome-shell/$svc
done
'';

passthru = {
mozillaPlugin = "/lib/mozilla/plugins";
updateScript = gnome3.updateScript {
10 changes: 10 additions & 0 deletions pkgs/desktops/gnome-3/core/gnome-shell/fix-bash-completion.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
--- a/subprojects/extensions-tool/meson.build
+++ a/subprojects/extensions-tool/meson.build
@@ -39,6 +39,6 @@ subdir('src')

if bash_completion.found()
install_data('completion/bash/gnome-extensions',
- install_dir: bash_completion.get_pkgconfig_variable('completionsdir')
+ install_dir: bash_completion.get_pkgconfig_variable('completionsdir', define_variable: ['prefix', prefix])
)
endif
11 changes: 11 additions & 0 deletions pkgs/desktops/gnome-3/core/gnome-shell/shew-gir-path.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- a/subprojects/shew/src/meson.build
+++ b/subprojects/shew/src/meson.build
@@ -13,7 +13,7 @@ shew_sources = [
libshew = library(full_name,
sources: shew_sources,
dependencies: [gtk_dep],
- install_dir: pkglibdir,
+ install_dir: get_option('prefix') / pkglibdir,
install: true,
)

57 changes: 57 additions & 0 deletions pkgs/desktops/gnome-3/core/gnome-shell/wrap-services.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
diff --git a/js/dbusServices/dbus-service.in b/js/dbusServices/dbus-service.in
old mode 100644
new mode 100755
index 524166102..100b81a63
--- a/js/dbusServices/dbus-service.in
+++ b/js/dbusServices/dbus-service.in
@@ -1,3 +1,9 @@
+#!@gjs@
+
+// gjs determines the package name from argv[0], which is .*-wrapped
+// so we need to override it to the original one.
+imports.package._findEffectiveEntryPointName = () => '@service@'
+
imports.package.start({
name: '@PACKAGE_NAME@',
prefix: '@prefix@',
diff --git a/js/dbusServices/dbus-service.service.in b/js/dbusServices/dbus-service.service.in
index 3b0d09abe..4fd4bb66d 100644
--- a/js/dbusServices/dbus-service.service.in
+++ b/js/dbusServices/dbus-service.service.in
@@ -1,3 +1,3 @@
[D-BUS Service]
Name=@service@
-Exec=@gjs@ @pkgdatadir@/@service@
+Exec=@pkgdatadir@/@service@
diff --git a/js/dbusServices/meson.build b/js/dbusServices/meson.build
index c749f45dc..11bcb0c9e 100644
--- a/js/dbusServices/meson.build
+++ b/js/dbusServices/meson.build
@@ -2,6 +2,7 @@ launcherconf = configuration_data()
launcherconf.set('PACKAGE_NAME', meson.project_name())
launcherconf.set('prefix', prefix)
launcherconf.set('libdir', libdir)
+launcherconf.set('gjs', gjs.path())

dbus_services = {
'org.gnome.Shell.Extensions': 'extensions',
@@ -11,16 +12,17 @@ dbus_services = {
config_dir = '@0@/..'.format(meson.current_build_dir())

foreach service, dir : dbus_services
+ svc_launcherconf = launcherconf
+ svc_launcherconf.set('service', service)
configure_file(
input: 'dbus-service.in',
output: service,
- configuration: launcherconf,
+ configuration: svc_launcherconf,
install_dir: pkgdatadir,
)

serviceconf = configuration_data()
serviceconf.set('service', service)
- serviceconf.set('gjs', gjs.path())
serviceconf.set('pkgdatadir', pkgdatadir)

configure_file(
11 changes: 2 additions & 9 deletions pkgs/desktops/gnome-3/core/mutter/default.nix
Original file line number Diff line number Diff line change
@@ -44,13 +44,13 @@

stdenv.mkDerivation rec {
pname = "mutter";
version = "3.36.0";
version = "3.36.1";

outputs = [ "out" "dev" "man" ];

src = fetchurl {
url = "mirror://gnome/sources/mutter/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "18lvj158w6gwc6xpvn699v8ykh1r5szry7sqascl6f1i8g628v2x";
sha256 = "09fqs9805d07c60a2ibskqffsb5wn72l8grwzb9fic5sl574b0im";
};

mesonFlags = [
@@ -121,13 +121,6 @@ stdenv.mkDerivation rec {
src = ./fix-paths.patch;
inherit zenity;
})

# Fix crash when opening submenus from «always on visible workspace» windows
# https://gitlab.gnome.org/GNOME/mutter/issues/1083
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/mutter/commit/7e32cc05ce2e5b3931ddcf46ce9ead603a0de39e.patch";
sha256 = "5ZzOMizucfrSnHNYjHIUObLHCvAIjrE6fY/CxLp4c7k=";
})
];

postPatch = ''
4 changes: 2 additions & 2 deletions pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix
Original file line number Diff line number Diff line change
@@ -8,8 +8,8 @@ stdenv.mkDerivation rec {
owner = "micheleg";
repo = "dash-to-dock";
# rev = "extensions.gnome.org-v" + version;
rev = "c58004802b2eedfde96966a4ec0151fea2a1bd98";
sha256 = "IjunykPFP2CbGcd8XVqhPuNUOUOOgDAQFIytLaoyqRg=";
rev = "8c94a8d6db47ebc1273e690f4e0ba5e592f7f268";
sha256 = "7nNfxAINqOIJCgYXYaPck2EJ1IOmzt6AkfDFknZ8GaI=";
};

nativeBuildInputs = [