Gentoo Archives: gentoo-commits

From: Alexandre Rostovtsev <tetromino@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/gnome:master commit in: gnome-base/gdm/
Date: Fri, 28 Sep 2012 05:09:16
Message-Id: 1348808864.3e50d998f4b24d588261663e13eeda7ea65bbba5.tetromino@gentoo
1 commit: 3e50d998f4b24d588261663e13eeda7ea65bbba5
2 Author: Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
3 AuthorDate: Fri Sep 28 04:59:58 2012 +0000
4 Commit: Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
5 CommitDate: Fri Sep 28 05:07:44 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=3e50d998
7
8 gnome-base/gdm: ensure /var/lib/gdm/ subdirectories are owned by gdm (#436456)
9
10 Apparently, some people upgrading to gnome-3.6 have the wrong
11 permissions on .local, .config, etc. in the gdm user's home directory.
12 Presumably this was caused by one of the buggy gdm-3.5.x versions. We
13 should manually chown these to gdm:gdm, otherwise the gdm greeter's
14 gnome-session will crash.
15
16 Fixes bug #436456. Thanks to foser and Li Yanrui for their reports.
17
18 ---
19 .../gdm/{gdm-3.6.0.ebuild => gdm-3.6.0-r1.ebuild} | 15 +++++++++++++++
20 gnome-base/gdm/gdm-9999.ebuild | 15 +++++++++++++++
21 2 files changed, 30 insertions(+), 0 deletions(-)
22
23 diff --git a/gnome-base/gdm/gdm-3.6.0.ebuild b/gnome-base/gdm/gdm-3.6.0-r1.ebuild
24 similarity index 95%
25 rename from gnome-base/gdm/gdm-3.6.0.ebuild
26 rename to gnome-base/gdm/gdm-3.6.0-r1.ebuild
27 index 5a58189..4ad32f8 100644
28 --- a/gnome-base/gdm/gdm-3.6.0.ebuild
29 +++ b/gnome-base/gdm/gdm-3.6.0-r1.ebuild
30 @@ -202,6 +202,10 @@ src_install() {
31 # log, etc.
32 keepdir /var/log/gdm
33
34 + # gdm user's home directory
35 + keepdir /var/lib/gdm
36 + fowners gdm:gdm /var/lib/gdm
37 +
38 # install XDG_DATA_DIRS gdm changes
39 echo 'XDG_DATA_DIRS="/usr/share/gdm"' > 99xdg-gdm
40 doenvd 99xdg-gdm
41 @@ -214,10 +218,21 @@ src_install() {
42 }
43
44 pkg_postinst() {
45 + local d ret
46 +
47 gnome2_pkg_postinst
48
49 dbus-launch dconf update || die "'dconf update' failed"
50
51 + # bug #436456; gdm crashes if /var/lib/gdm subdirs are not owned by gdm:gdm
52 + ret=0
53 + ebegin "Fixing ${EROOT}var/lib/gdm ownership"
54 + chown gdm:gdm "${EROOT}var/lib/gdm" || ret=1
55 + for d in "${EROOT}var/lib/gdm/"{.cache,.config,.local}; do
56 + [[ ! -e "${d}" ]] || chown -R gdm:gdm "${d}" || ret=1
57 + done
58 + eend ${ret}
59 +
60 ewarn
61 ewarn "This is an EXPERIMENTAL release, please bear with its bugs and"
62 ewarn "visit us on #gentoo-desktop if you have problems."
63
64 diff --git a/gnome-base/gdm/gdm-9999.ebuild b/gnome-base/gdm/gdm-9999.ebuild
65 index 5a58189..4ad32f8 100644
66 --- a/gnome-base/gdm/gdm-9999.ebuild
67 +++ b/gnome-base/gdm/gdm-9999.ebuild
68 @@ -202,6 +202,10 @@ src_install() {
69 # log, etc.
70 keepdir /var/log/gdm
71
72 + # gdm user's home directory
73 + keepdir /var/lib/gdm
74 + fowners gdm:gdm /var/lib/gdm
75 +
76 # install XDG_DATA_DIRS gdm changes
77 echo 'XDG_DATA_DIRS="/usr/share/gdm"' > 99xdg-gdm
78 doenvd 99xdg-gdm
79 @@ -214,10 +218,21 @@ src_install() {
80 }
81
82 pkg_postinst() {
83 + local d ret
84 +
85 gnome2_pkg_postinst
86
87 dbus-launch dconf update || die "'dconf update' failed"
88
89 + # bug #436456; gdm crashes if /var/lib/gdm subdirs are not owned by gdm:gdm
90 + ret=0
91 + ebegin "Fixing ${EROOT}var/lib/gdm ownership"
92 + chown gdm:gdm "${EROOT}var/lib/gdm" || ret=1
93 + for d in "${EROOT}var/lib/gdm/"{.cache,.config,.local}; do
94 + [[ ! -e "${d}" ]] || chown -R gdm:gdm "${d}" || ret=1
95 + done
96 + eend ${ret}
97 +
98 ewarn
99 ewarn "This is an EXPERIMENTAL release, please bear with its bugs and"
100 ewarn "visit us on #gentoo-desktop if you have problems."