summary refs log tree commit diff
path: root/pkgs/desktops/gnome-3/core/gnome-session
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2017-09-24 13:15:50 +0200
committerzimbatm <zimbatm@zimbatm.com>2017-09-24 12:15:50 +0100
commit69698ec11cc0619d84b14764fa9e708fe7e7223c (patch)
tree9d9f602554b497a3265caf5e2ef4821e12736686 /pkgs/desktops/gnome-3/core/gnome-session
parent23b19efdc9c8d64177cefcaa5b919db966bb8f5e (diff)
downloadnixpkgs-69698ec11cc0619d84b14764fa9e708fe7e7223c.tar
nixpkgs-69698ec11cc0619d84b14764fa9e708fe7e7223c.tar.gz
nixpkgs-69698ec11cc0619d84b14764fa9e708fe7e7223c.tar.bz2
nixpkgs-69698ec11cc0619d84b14764fa9e708fe7e7223c.tar.lz
nixpkgs-69698ec11cc0619d84b14764fa9e708fe7e7223c.tar.xz
nixpkgs-69698ec11cc0619d84b14764fa9e708fe7e7223c.tar.zst
nixpkgs-69698ec11cc0619d84b14764fa9e708fe7e7223c.zip
gnome3: only maintain single GNOME 3 package set (#29397)
* gnome3: only maintain single GNOME 3 package set

GNOME 3 was split into 3.10 and 3.12 in #2694. Unfortunately, we barely have the resources
to update a single version of GNOME. Maintaining multiple versions just does not make sense.
Additionally, it makes viewing history using most Git tools bothersome.

This commit renames `pkgs/desktops/gnome-3/3.24` to `pkgs/desktops/gnome-3`, removes
the config variable for choosing packageset (`environment.gnome3.packageSet`), updates
the hint in maintainer script, and removes the `gnome3_24` derivation from `all-packages.nix`.

Closes: #29329

* maintainers/scripts/gnome: Use fixed GNOME 3 directory

Since we now allow only a single GNOME 3 package set, specifying
the working directory is not necessary.

This commit sets the directory to `pkgs/desktops/gnome-3`.
Diffstat (limited to 'pkgs/desktops/gnome-3/core/gnome-session')
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-session/default.nix36
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-session/src.nix10
2 files changed, 46 insertions, 0 deletions
diff --git a/pkgs/desktops/gnome-3/core/gnome-session/default.nix b/pkgs/desktops/gnome-3/core/gnome-session/default.nix
new file mode 100644
index 00000000000..2cd92ce39ca
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/gnome-session/default.nix
@@ -0,0 +1,36 @@
+{ fetchurl, stdenv, pkgconfig, gnome3, glib, dbus_glib, json_glib, upower
+, libxslt, intltool, makeWrapper, systemd, xorg, epoxy }:
+
+stdenv.mkDerivation rec {
+  inherit (import ./src.nix fetchurl) name src;
+
+  configureFlags = "--enable-systemd";
+
+  buildInputs = with gnome3;
+    [ pkgconfig glib gnome_desktop gtk dbus_glib json_glib libxslt
+      gnome3.gnome_settings_daemon xorg.xtrans gnome3.defaultIconTheme
+      gsettings_desktop_schemas upower intltool gconf makeWrapper systemd
+      epoxy
+    ];
+
+  # FIXME: glib binaries shouldn't be in .dev!
+  preFixup = ''
+    for desktopFile in $(grep -rl "Exec=gnome-session" $out/share)
+    do
+      echo "Patching gnome-session path in: $desktopFile"
+      sed -i "s,^Exec=gnome-session,Exec=$out/bin/gnome-session," $desktopFile
+    done
+    wrapProgram "$out/bin/gnome-session" \
+      --prefix PATH : "${glib.dev}/bin" \
+      --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
+      --suffix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \
+      --suffix XDG_DATA_DIRS : "${gnome3.gnome_shell}/share" \
+      --suffix XDG_CONFIG_DIRS : "${gnome3.gnome_settings_daemon}/etc/xdg"
+  '';
+
+  meta = with stdenv.lib; {
+    platforms = platforms.linux;
+    maintainers = gnome3.maintainers;
+  };
+
+}
diff --git a/pkgs/desktops/gnome-3/core/gnome-session/src.nix b/pkgs/desktops/gnome-3/core/gnome-session/src.nix
new file mode 100644
index 00000000000..d323fea7631
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/gnome-session/src.nix
@@ -0,0 +1,10 @@
+# Autogenerated by maintainers/scripts/gnome.sh update
+
+fetchurl: {
+  name = "gnome-session-3.24.1";
+
+  src = fetchurl {
+    url = mirror://gnome/sources/gnome-session/3.24/gnome-session-3.24.1.tar.xz;
+    sha256 = "3b4449238e396b95f9616dfd6f99d8345afaf30c7e3cb6a3549f253d9f966eee";
+  };
+}