gnome-base/gnome-session: 3.22.3 bump, revert to Xorg session default, make wayland...
authorMart Raudsepp <leio@gentoo.org>
Sat, 18 Mar 2017 12:22:57 +0000 (14:22 +0200)
committerMart Raudsepp <leio@gentoo.org>
Sat, 18 Mar 2017 12:24:36 +0000 (14:24 +0200)
The upstream bump from 3.22.2 to 3.22.3 just reduces the data traffic for VT switch monitoring.

Gentoo-bug: 604110
Backport upstream patch from 3.23.4.1 to re-launch itself as a "bash" login shell when /usr/bin/gnome-session
is started for a wayland based session without a login shell. This makes GNOME wayland session to
do all the shell setup that a login shell does, which means e.g Gentoo /etc/env.d things get processed
via shell profile, fixing all the variable and other setups we rely on heavily in Gentoo.
Because this currently re-launches with bash, it will probably only source bash and generic setups, not e.g
zsh specific paths.

Gentoo-bug: 611146
Forward port upstream patch from 3.19 days that reverted default "gnome" session back to Xorg for 3.20,
to do it again in Gentoo 3.22. Also manually forward port translations for the "GNOME on Wayland" string
change, where available as a translated string in 3.20.
3.24 should be available faster in Gentoo now, which will get us to Wayland then, as in 3.24 it'll also
work with nvidia-drivers and be generally even more mature.

Package-Manager: Portage-2.3.4, Repoman-2.3.1

gnome-base/gnome-session/Manifest
gnome-base/gnome-session/files/3.22.3-wayland-login-shell.patch [new file with mode: 0644]
gnome-base/gnome-session/files/3.22.3-xorg-default-translations.patch [new file with mode: 0644]
gnome-base/gnome-session/files/3.22.3-xorg-default.patch [new file with mode: 0644]
gnome-base/gnome-session/gnome-session-3.22.3.ebuild [new file with mode: 0644]

index fb53f1a57364d256d63793de6c8afa998bac51a0..860e4d1eeffcc6a669f2acf6cf8e3545d1aefb00 100644 (file)
@@ -1,3 +1,4 @@
 DIST gnome-session-3.20.2.tar.xz 785952 SHA256 025f97e0b9f5431890598d6130040e1e7071771cc29e1d29d8e2e7c84d95f6da SHA512 0973c9763195a79038d99139f56eff8d7ad1fccc4c4e41a6439b5c65c615059a21446545af70f4ed83ec6925fd61a7664e70eec844dfe5e2a1001dffdbbea13a WHIRLPOOL 4a3cf1580b966a0b617e78db45635ec66d7bdfb6d5b183390edb07aaae3911876ff4af774cb0ae93c6ee4316555303812fcff40efce1827946457cb2a0646f61
 DIST gnome-session-3.22.2.tar.xz 776772 SHA256 361a31edb4f8c6d410f1029eee089422e25a2da6c287ead40fccdea5bda450f5 SHA512 2c84a3a791d740c8edc2af96e8ed0b56f56dfac20fde6e8bc23a7aa75c0a004e98fcb9bb85b043ed3b1cd57cdc889348c461d9536cd2631dd53d8a0d6f8e2acf WHIRLPOOL b2fbfb0ecbd5b54714a900d8615c04b1ac0bee51e6c2d8ff11c2592769cd42292af0db9f86a51655bda943c7cc880155d403854629ec8810578f02232dfec29f
+DIST gnome-session-3.22.3.tar.xz 777420 SHA256 cc486fc84d892fa744a382b5ea8b9b40fc5045bc0d5feccfb02e80137eab77e5 SHA512 2350ddc485f9e47df9d9351e413b847336506a694e34daa672111784f64d6d24d3e5e6fc25ad03dd13b318b139809ba2312a542801993db586937650b1422ccd WHIRLPOOL 35e78d60b16ee9027d2c664f2a222a48083736e032e1be41fd015403fb8e9dcf4b2560299b1c9c9e81bde95cb9ed86da41ed0cc44a816f71e83a1a4e1a704fb9
 DIST gnome-session-3.23.91.tar.xz 779536 SHA256 50bde3aed35bd48ac73c6cbc322f627925f914ebcdab90f032d4f29488c9cc38 SHA512 cb8f21619e92784ad61b4b873625073bf32d29dd943243298879d765e76964031042ea22462dec87332a5fb89ae9b0617d5444e8ba98ed45fb02065fc5db8b9f WHIRLPOOL b9a7aebadfb7ce44c933ac19ef5d7daa89a74a39f4bd51e92e64d720a7195a1adce88c202880d32fcea89d692cf1de359eea4d3da7d3633616a178376291eeb0
diff --git a/gnome-base/gnome-session/files/3.22.3-wayland-login-shell.patch b/gnome-base/gnome-session/files/3.22.3-wayland-login-shell.patch
new file mode 100644 (file)
index 0000000..f82825f
--- /dev/null
@@ -0,0 +1,43 @@
+From 97229b322d30cf531e7b7cc7757f83ed80e831bc Mon Sep 17 00:00:00 2001
+From: Ray Strode <rstrode@redhat.com>
+Date: Thu, 5 Jan 2017 10:02:58 -0500
+Subject: [PATCH 1/3] gnome-session: make sure wayland sessions get a login
+ shell
+
+Users expect their shell profiles to get sourced at startup, which
+doesn't happen with wayland sessions.
+
+This commit brings back that feature, by making the gnome-session
+wrapper script run a login shell.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=736660
+---
+ gnome-session/gnome-session.in | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/gnome-session/gnome-session.in b/gnome-session/gnome-session.in
+index 530299d..04ea741 100644
+--- a/gnome-session/gnome-session.in
++++ b/gnome-session/gnome-session.in
+@@ -1,5 +1,18 @@
+ #!/bin/sh
++if [ "x$XDG_SESSION_TYPE" = "xwayland" ] &&
++   [ "x$XDG_SESSION_CLASS" != "xgreeter" ] &&
++   [  -n "$SHELL" ] &&
++   grep -q "$SHELL" /etc/shells &&
++   ! (echo "$SHELL" | grep -q "false") &&
++   ! (echo "$SHELL" | grep -q "nologin"); then
++  if [ "$1" != '-l' ]; then
++    exec bash -c "exec -l '$SHELL' -c '$0 -l $*'"
++  else
++    shift
++  fi
++fi
++
+ SETTING=$(gsettings get org.gnome.system.locale region)
+ REGION=${SETTING#\'}
+ REGION=${REGION%\'}
+-- 
+2.10.1
+
diff --git a/gnome-base/gnome-session/files/3.22.3-xorg-default-translations.patch b/gnome-base/gnome-session/files/3.22.3-xorg-default-translations.patch
new file mode 100644 (file)
index 0000000..8c259de
--- /dev/null
@@ -0,0 +1,619 @@
+From abc07aa67043d0013dfcf812101208296bbfa4ac Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Sat, 18 Mar 2017 11:42:40 +0200
+Subject: [PATCH 3/3] po: Forward port "GNOME on Wayland" translations
+
+---
+ po/POTFILES.in | 2 +-
+ po/bg.po       | 4 ++++
+ po/cs.po       | 4 ++++
+ po/da.po       | 4 ++++
+ po/de.po       | 4 ++++
+ po/el.po       | 4 ++++
+ po/es.po       | 4 ++++
+ po/eu.po       | 4 ++++
+ po/fa.po       | 4 ++++
+ po/fi.po       | 4 ++++
+ po/fr.po       | 4 ++++
+ po/fur.po      | 4 ++++
+ po/gd.po       | 4 ++++
+ po/gl.po       | 4 ++++
+ po/gu.po       | 4 ++++
+ po/he.po       | 4 ++++
+ po/hr.po       | 4 ++++
+ po/hu.po       | 4 ++++
+ po/id.po       | 4 ++++
+ po/is.po       | 4 ++++
+ po/it.po       | 4 ++++
+ po/kk.po       | 4 ++++
+ po/ko.po       | 4 ++++
+ po/lt.po       | 4 ++++
+ po/lv.po       | 4 ++++
+ po/nb.po       | 4 ++++
+ po/pl.po       | 4 ++++
+ po/pt.po       | 4 ++++
+ po/pt_BR.po    | 4 ++++
+ po/ru.po       | 4 ++++
+ po/sk.po       | 4 ++++
+ po/sr.po       | 4 ++++
+ po/sr@latin.po | 4 ++++
+ po/sv.po       | 4 ++++
+ po/tr.po       | 4 ++++
+ po/uk.po       | 4 ++++
+ po/vi.po       | 4 ++++
+ po/zh_CN.po    | 4 ++++
+ 38 files changed, 149 insertions(+), 1 deletion(-)
+
+diff --git a/po/POTFILES.in b/po/POTFILES.in
+index cc1170a..0feb5cf 100644
+--- a/po/POTFILES.in
++++ b/po/POTFILES.in
+@@ -2,9 +2,9 @@
+ # Please keep this file sorted alphabetically.
+ data/gnome-custom-session.desktop.in
+ data/gnome.desktop.in
+-data/gnome-xorg.desktop.in
+ data/gnome-dummy.session.desktop.in.in
+ data/gnome.session.desktop.in.in
++data/gnome-wayland.desktop.in
+ [type: gettext/glade]data/session-selector.ui
+ gnome-session/gsm-fail-whale-dialog.c
+ gnome-session/gsm-manager.c
+diff --git a/po/bg.po b/po/bg.po
+index 7d243fc..7bb73b6 100644
+--- a/po/bg.po
++++ b/po/bg.po
+@@ -50,6 +50,10 @@ msgstr "GNOME с Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME — фиктивна"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME с Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Друга сесия"
+diff --git a/po/cs.po b/po/cs.po
+index a9acc59..4efd144 100644
+--- a/po/cs.po
++++ b/po/cs.po
+@@ -54,6 +54,10 @@ msgstr "GNOME na Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME dummy"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME na Waylandu"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Vlastní sezení"
+diff --git a/po/da.po b/po/da.po
+index de709ac..62a49c3 100644
+--- a/po/da.po
++++ b/po/da.po
+@@ -65,6 +65,10 @@ msgstr "GNOME på Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME-attrap"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME på Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Tilpasset session"
+diff --git a/po/de.po b/po/de.po
+index 051c9ee..a283114 100644
+--- a/po/de.po
++++ b/po/de.po
+@@ -61,6 +61,10 @@ msgstr "GNOME unter Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME Platzhalter"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME unter Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Benutzerdefinierte Sitzung"
+diff --git a/po/el.po b/po/el.po
+index 99f92ba..9f1d419 100644
+--- a/po/el.po
++++ b/po/el.po
+@@ -72,6 +72,10 @@ msgstr "GNOME σε Xorg"
+ msgid "GNOME dummy"
+ msgstr "Εικονικό GNOME"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME σε Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Προσαρμοσμένη συνεδρία"
+diff --git a/po/es.po b/po/es.po
+index 79e3a6d..a9b73b2 100644
+--- a/po/es.po
++++ b/po/es.po
+@@ -56,6 +56,10 @@ msgstr "GNOME en Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME «dummy»"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME en Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Sesión personalizada"
+diff --git a/po/eu.po b/po/eu.po
+index da3969d..6b57df1 100644
+--- a/po/eu.po
++++ b/po/eu.po
+@@ -48,6 +48,10 @@ msgstr "GNOME Xorg gainean"
+ msgid "GNOME dummy"
+ msgstr "Probako GNOME"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME Wayland gainean"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Saio pertsonalizatua"
+diff --git a/po/fa.po b/po/fa.po
+index 1737204..8b1b6e5 100644
+--- a/po/fa.po
++++ b/po/fa.po
+@@ -50,6 +50,10 @@ msgstr "گنوم بر روی Xorg"
+ msgid "GNOME dummy"
+ msgstr "گنوم ساختگی"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "گنوم بر روی Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "نشست سفارشی"
+diff --git a/po/fi.po b/po/fi.po
+index a3cd0ca..8b5025c 100644
+--- a/po/fi.po
++++ b/po/fi.po
+@@ -51,6 +51,10 @@ msgstr "Gnome Xorgia käyttäen"
+ msgid "GNOME dummy"
+ msgstr "Gnome-malli-istunto (dummy)"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "Gnome Waylandia käyttäen"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Omavalintainen istunto"
+diff --git a/po/fr.po b/po/fr.po
+index e209804..5fe647a 100644
+--- a/po/fr.po
++++ b/po/fr.po
+@@ -54,6 +54,10 @@ msgstr "GNOME sur Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME factice"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME sur Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Session personnalisée"
+diff --git a/po/fur.po b/po/fur.po
+index 8245a6f..1dc5f85 100644
+--- a/po/fur.po
++++ b/po/fur.po
+@@ -42,6 +42,10 @@ msgstr "GNOME su Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME dummy"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME su Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Session personalizade"
+diff --git a/po/gd.po b/po/gd.po
+index beb1618..ebb67bc 100644
+--- a/po/gd.po
++++ b/po/gd.po
+@@ -48,6 +48,10 @@ msgstr "GNOME air Xorg"
+ msgid "GNOME dummy"
+ msgstr "Caochag GNOME"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME air Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Seisean gnàthaichte"
+diff --git a/po/gl.po b/po/gl.po
+index 02b9879..2d9c944 100644
+--- a/po/gl.po
++++ b/po/gl.po
+@@ -51,6 +51,10 @@ msgstr "GNOME en Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME de proba"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME en Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Sesión personalizada"
+diff --git a/po/gu.po b/po/gu.po
+index c83ed6b..fa92f6a 100644
+--- a/po/gu.po
++++ b/po/gu.po
+@@ -44,6 +44,10 @@ msgstr "Xorg પર GNOME"
+ msgid "GNOME dummy"
+ msgstr "GNOME ડમી"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "Wayland પર GNOME"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "વૈવિધ્ય સત્ર"
+diff --git a/po/he.po b/po/he.po
+index 22045b6..c197658 100644
+--- a/po/he.po
++++ b/po/he.po
+@@ -45,6 +45,10 @@ msgstr "‏GNOME על גבי Xorg"
+ msgid "GNOME dummy"
+ msgstr "מדומה של GNOME"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "‏GNOME על גבי Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "הפעלה מותאמת אישית"
+diff --git a/po/hr.po b/po/hr.po
+index db64d1a..46ba1af 100644
+--- a/po/hr.po
++++ b/po/hr.po
+@@ -41,6 +41,10 @@ msgstr "GNOME na Xorgu"
+ msgid "GNOME dummy"
+ msgstr "GNOME lažno"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME na Waylandu"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Prilagođena sesija"
+diff --git a/po/hu.po b/po/hu.po
+index 403b0a1..f207056 100644
+--- a/po/hu.po
++++ b/po/hu.po
+@@ -49,6 +49,10 @@ msgstr "GNOME Xorgon"
+ msgid "GNOME dummy"
+ msgstr "GNOME példa"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME Wayland-en"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Egyéni környezet"
+diff --git a/po/id.po b/po/id.po
+index 04848d8..3519b35 100644
+--- a/po/id.po
++++ b/po/id.po
+@@ -46,6 +46,10 @@ msgstr "GNOME pada Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME dummy"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME pada Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Sesi Gubahan"
+diff --git a/po/is.po b/po/is.po
+index 5cfbfa2..a95c1e7 100644
+--- a/po/is.po
++++ b/po/is.po
+@@ -44,6 +44,10 @@ msgstr "GNOME á Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME sýnishorn"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME á Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Sérsniðin seta"
+diff --git a/po/it.po b/po/it.po
+index 3a95eff..6119ff2 100644
+--- a/po/it.po
++++ b/po/it.po
+@@ -46,6 +46,10 @@ msgstr "GNOME su Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME dummy"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME su Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Sessione personalizzata"
+diff --git a/po/kk.po b/po/kk.po
+index 7168f0d..8fede72 100644
+--- a/po/kk.po
++++ b/po/kk.po
+@@ -43,6 +43,10 @@ msgstr "Xorg негізіндегі GNOME"
+ msgid "GNOME dummy"
+ msgstr "GNOME жалған сессиясы"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "Wayland негізіндегі GNOME"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Таңдауыңызша сесия"
+diff --git a/po/ko.po b/po/ko.po
+index 8c90323..359a65d 100644
+--- a/po/ko.po
++++ b/po/ko.po
+@@ -49,6 +49,10 @@ msgstr "그놈 (Xorg)"
+ msgid "GNOME dummy"
+ msgstr "그놈 더미"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "그놈, 웨일랜드"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "사용자 지정 세션"
+diff --git a/po/lt.po b/po/lt.po
+index 9a4bfb9..221c293 100644
+--- a/po/lt.po
++++ b/po/lt.po
+@@ -49,6 +49,10 @@ msgstr "GNOME Xorg aplinkoje"
+ msgid "GNOME dummy"
+ msgstr "GNOME netikra"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME Wayland aplinkoje"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Pasirinktinis seansas"
+diff --git a/po/lv.po b/po/lv.po
+index 14e4180..688efe2 100644
+--- a/po/lv.po
++++ b/po/lv.po
+@@ -52,6 +52,10 @@ msgstr "GNOME ar Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME makets"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME ar Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Pielāgota sesija"
+diff --git a/po/nb.po b/po/nb.po
+index afad648..471fb14 100644
+--- a/po/nb.po
++++ b/po/nb.po
+@@ -41,6 +41,10 @@ msgstr "GNOME på Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME dummy"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME på Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Egendefinert økt"
+diff --git a/po/pl.po b/po/pl.po
+index 92b0cfe..1b92056 100644
+--- a/po/pl.po
++++ b/po/pl.po
+@@ -48,6 +48,10 @@ msgstr "GNOME (Xorg)"
+ msgid "GNOME dummy"
+ msgstr "Pusta sesja GNOME"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME (Wayland)"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Niestandardowa sesja"
+diff --git a/po/pt.po b/po/pt.po
+index fc4bb99..573908d 100644
+--- a/po/pt.po
++++ b/po/pt.po
+@@ -50,6 +50,10 @@ msgstr "GNOME em Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME de teste"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME no Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Sessão personalizada"
+diff --git a/po/pt_BR.po b/po/pt_BR.po
+index 6a2a88a..7d6a66a 100644
+--- a/po/pt_BR.po
++++ b/po/pt_BR.po
+@@ -59,6 +59,10 @@ msgstr "GNOME sobre Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME experimental"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME sobre Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Sessão personalizada"
+diff --git a/po/ru.po b/po/ru.po
+index 4378126..52eda37 100644
+--- a/po/ru.po
++++ b/po/ru.po
+@@ -52,6 +52,10 @@ msgstr "GNOME на Xorg"
+ msgid "GNOME dummy"
+ msgstr "Фиктивный сеанс GNOME"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME на Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Другой сеанс"
+diff --git a/po/sk.po b/po/sk.po
+index 0f75b10..49fbf5d 100644
+--- a/po/sk.po
++++ b/po/sk.po
+@@ -53,6 +53,10 @@ msgstr "GNOME cez Xorg"
+ msgid "GNOME dummy"
+ msgstr "Fingované GNOME"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME cez Wayland"
++
+ # GtkWindow title
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+diff --git a/po/sr.po b/po/sr.po
+index 7ec002a..2a71f45 100644
+--- a/po/sr.po
++++ b/po/sr.po
+@@ -48,6 +48,10 @@ msgstr "Гном на Икс серверу"
+ msgid "GNOME dummy"
+ msgstr "Гномов лажњак"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "Гном на Вејланду"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Прилагођена сесија"
+diff --git a/po/sr@latin.po b/po/sr@latin.po
+index 677444e..b148d70 100644
+--- a/po/sr@latin.po
++++ b/po/sr@latin.po
+@@ -48,6 +48,10 @@ msgstr "Gnom na Iks serveru"
+ msgid "GNOME dummy"
+ msgstr "Gnomov lažnjak"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "Gnom na Vejlandu"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Prilagođena sesija"
+diff --git a/po/sv.po b/po/sv.po
+index 2894eec..3072075 100644
+--- a/po/sv.po
++++ b/po/sv.po
+@@ -50,6 +50,10 @@ msgstr "GNOME med Xorg"
+ msgid "GNOME dummy"
+ msgstr "GNOME-attrapp"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME med Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Anpassad session"
+diff --git a/po/tr.po b/po/tr.po
+index 3ede169..87bba43 100644
+--- a/po/tr.po
++++ b/po/tr.po
+@@ -54,6 +54,10 @@ msgstr "Xorg üzerinde GNOME"
+ msgid "GNOME dummy"
+ msgstr "GNOME dummy"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "Wayland üzerinde GNOME"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Özel Oturum"
+diff --git a/po/uk.po b/po/uk.po
+index de980dc..c98fd8d 100644
+--- a/po/uk.po
++++ b/po/uk.po
+@@ -46,6 +46,10 @@ msgstr "GNOME через Xorg"
+ msgid "GNOME dummy"
+ msgstr "Несправжній GNOME"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME через Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Власний сеанс"
+diff --git a/po/vi.po b/po/vi.po
+index 1cdee0a..cf249e3 100644
+--- a/po/vi.po
++++ b/po/vi.po
+@@ -46,6 +46,10 @@ msgstr "GNOME trên Xorg"
+ msgid "GNOME dummy"
+ msgstr "Giả lập GNOME"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "GNOME trên Wayland"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "Phiên làm việc tự chọn"
+diff --git a/po/zh_CN.po b/po/zh_CN.po
+index 6f07716..8d36444 100644
+--- a/po/zh_CN.po
++++ b/po/zh_CN.po
+@@ -55,6 +55,10 @@ msgstr "运行于 Xorg 的 GNOME"
+ msgid "GNOME dummy"
+ msgstr "GNOME dummy"
++#: ../data/gnome-wayland.desktop.in.h:1
++msgid "GNOME on Wayland"
++msgstr "基于 Wayland 的 GNOME"
++
+ #: ../data/session-selector.ui.h:1
+ msgid "Custom Session"
+ msgstr "自定义会话"
+-- 
+2.10.1
+
diff --git a/gnome-base/gnome-session/files/3.22.3-xorg-default.patch b/gnome-base/gnome-session/files/3.22.3-xorg-default.patch
new file mode 100644 (file)
index 0000000..02eea39
--- /dev/null
@@ -0,0 +1,58 @@
+From a709a07bff91a7b2dd4e4a412090850a73937999 Mon Sep 17 00:00:00 2001
+From: Ray Strode <rstrode@redhat.com>
+Date: Mon, 7 Mar 2016 13:36:32 -0500
+Subject: [PATCH 2/3] data: switch back to Xorg by default
+
+Consensus seems to be that switching to wayland for user sessions
+by default is a bit premature.
+
+This commit moves it back to Xorg by default.
+
+We'll save wayland by default for 3.22
+
+https://bugzilla.gnome.org/show_bug.cgi?id=763266
+---
+ data/Makefile.am                                         | 4 ++--
+ data/{gnome-xorg.desktop.in => gnome-wayland.desktop.in} | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+ rename data/{gnome-xorg.desktop.in => gnome-wayland.desktop.in} (85%)
+
+diff --git a/data/Makefile.am b/data/Makefile.am
+index ae08730..d0a7310 100644
+--- a/data/Makefile.am
++++ b/data/Makefile.am
+@@ -9,7 +9,7 @@ hwcompatdir = $(pkgdatadir)
+ hwcompat_DATA = hardware-compatibility
+ xsessiondir = $(datadir)/xsessions
+-xsession_in_files = gnome.desktop.in gnome-xorg.desktop.in
++xsession_in_files = gnome.desktop.in
+ if BUILD_SESSION_SELECTOR
+ xsession_in_files += gnome-custom-session.desktop.in
+@@ -18,7 +18,7 @@ endif
+ xsession_DATA = $(xsession_in_files:.desktop.in=.desktop)
+ wayland_sessiondir = $(datadir)/wayland-sessions
+-wayland_session_in_files = gnome.desktop.in
++wayland_session_in_files = gnome-wayland.desktop.in
+ wayland_session_DATA = $(wayland_session_in_files:.desktop.in=.desktop)
+ sessiondir = $(datadir)/gnome-session/sessions
+diff --git a/data/gnome-xorg.desktop.in b/data/gnome-wayland.desktop.in
+similarity index 85%
+rename from data/gnome-xorg.desktop.in
+rename to data/gnome-wayland.desktop.in
+index d00b3dc..852be87 100644
+--- a/data/gnome-xorg.desktop.in
++++ b/data/gnome-wayland.desktop.in
+@@ -1,5 +1,5 @@
+ [Desktop Entry]
+-_Name=GNOME on Xorg
++_Name=GNOME on Wayland
+ _Comment=This session logs you into GNOME
+ Exec=gnome-session
+ TryExec=gnome-session
+-- 
+2.10.1
+
diff --git a/gnome-base/gnome-session/gnome-session-3.22.3.ebuild b/gnome-base/gnome-session/gnome-session-3.22.3.ebuild
new file mode 100644 (file)
index 0000000..31635ea
--- /dev/null
@@ -0,0 +1,137 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_EAUTORECONF="yes"
+inherit gnome2
+
+DESCRIPTION="Gnome session manager"
+HOMEPAGE="https://git.gnome.org/browse/gnome-session"
+
+LICENSE="GPL-2 LGPL-2 FDL-1.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-solaris"
+IUSE="doc elibc_FreeBSD ipv6 systemd"
+
+# x11-misc/xdg-user-dirs{,-gtk} are needed to create the various XDG_*_DIRs, and
+# create .config/user-dirs.dirs which is read by glib to get G_USER_DIRECTORY_*
+# xdg-user-dirs-update is run during login (see 10-user-dirs-update-gnome below).
+# gdk-pixbuf used in the inhibit dialog
+COMMON_DEPEND="
+       >=dev-libs/glib-2.46.0:2[dbus]
+       x11-libs/gdk-pixbuf:2
+       >=x11-libs/gtk+-3.18.0:3
+       >=dev-libs/json-glib-0.10
+       >=gnome-base/gnome-desktop-3.18:3=
+       elibc_FreeBSD? ( dev-libs/libexecinfo )
+
+       media-libs/mesa[egl,gles2]
+
+       media-libs/libepoxy
+       x11-libs/libSM
+       x11-libs/libICE
+       x11-libs/libXau
+       x11-libs/libX11
+       x11-libs/libXcomposite
+       x11-libs/libXext
+       x11-libs/libXrender
+       x11-libs/libXtst
+       x11-misc/xdg-user-dirs
+       x11-misc/xdg-user-dirs-gtk
+       x11-apps/xdpyinfo
+
+       systemd? ( >=sys-apps/systemd-183:0= )
+"
+# Pure-runtime deps from the session files should *NOT* be added here
+# Otherwise, things like gdm pull in gnome-shell
+# gnome-themes-standard is needed for the failwhale dialog themeing
+# sys-apps/dbus[X] is needed for session management
+RDEPEND="${COMMON_DEPEND}
+       gnome-base/gnome-settings-daemon
+       >=gnome-base/gsettings-desktop-schemas-0.1.7
+       x11-themes/adwaita-icon-theme
+       sys-apps/dbus[X]
+       !systemd? (
+               sys-auth/consolekit
+               >=dev-libs/dbus-glib-0.76
+       )
+"
+DEPEND="${COMMON_DEPEND}
+       dev-libs/libxslt
+       >=dev-util/intltool-0.40.6
+       >=sys-devel/gettext-0.10.40
+       virtual/pkgconfig
+       !<gnome-base/gdm-2.20.4
+       doc? (
+               app-text/xmlto
+               dev-libs/libxslt )
+       gnome-base/gnome-common
+"
+# gnome-common needed for eautoreconf
+# gnome-base/gdm does not provide gnome.desktop anymore
+
+PATCHES=(
+       # Make gnome wayland session launch inside a login shell for /etc/env.d and other stuff to work, bug 604110
+       "${FILESDIR}/${PV}-wayland-login-shell.patch"
+       # Restore Xorg as the default GNOME session instead of Wayland for the 3.22 release, bug 611146
+       "${FILESDIR}/${PV}-xorg-default.patch" # remove ewarn about this below when removing for 3.24
+       "${FILESDIR}/${PV}-xorg-default-translations.patch"
+)
+
+src_configure() {
+       # 1. Avoid automagic on old upower releases
+       # 2. xsltproc is always checked due to man configure
+       #    switch, even if USE=-doc
+       # 3. Disable old gconf support as other distributions did long time
+       #    ago
+       gnome2_src_configure \
+               --disable-deprecation-flags \
+               --disable-gconf \
+               --enable-session-selector \
+               $(use_enable doc docbook-docs) \
+               $(use_enable ipv6) \
+               $(use_enable systemd) \
+               $(use_enable !systemd consolekit) \
+               UPOWER_CFLAGS="" \
+               UPOWER_LIBS=""
+               # gnome-session-selector pre-generated man page is missing
+               #$(usex !doc XSLTPROC=$(type -P true))
+}
+
+src_install() {
+       gnome2_src_install
+
+       dodir /etc/X11/Sessions
+       exeinto /etc/X11/Sessions
+       doexe "${FILESDIR}/Gnome"
+
+       insinto /usr/share/applications
+       newins "${FILESDIR}/defaults.list-r3" gnome-mimeapps.list
+
+       dodir /etc/X11/xinit/xinitrc.d/
+       exeinto /etc/X11/xinit/xinitrc.d/
+       newexe "${FILESDIR}/15-xdg-data-gnome-r1" 15-xdg-data-gnome
+
+       # This should be done here as discussed in bug #270852
+       newexe "${FILESDIR}/10-user-dirs-update-gnome-r1" 10-user-dirs-update-gnome
+
+       # Set XCURSOR_THEME from current dconf setting instead of installing
+       # default cursor symlink globally and affecting other DEs (bug #543488)
+       # https://bugzilla.gnome.org/show_bug.cgi?id=711703
+       newexe "${FILESDIR}/90-xcursor-theme-gnome" 90-xcursor-theme-gnome
+}
+
+pkg_postinst() {
+       gnome2_pkg_postinst
+
+       ewarn "The Gentoo GNOME team has decided to retain Xorg session default instead of"
+       ewarn "Wayland for GNOME 3.22 stable version, even if USE=wayland is set on applicable"
+       ewarn "packages. You can still choose the 'GNOME on Wayland' session explicitly, if"
+       ewarn "desired. GNOME 3.24 will default to Wayland again as upstream GNOME does, if"
+       ewarn "USE=wayland is used globally, but 'GNOME on Xorg' session will be a choice."
+
+       if ! has_version gnome-base/gdm && ! has_version x11-misc/sddm; then
+               ewarn "If you use a custom .xinitrc for your X session,"
+               ewarn "make sure that the commands in the xinitrc.d scripts are run."
+       fi
+}