Gentoo Archives: gentoo-commits

From: Sobhan Mohammadpour <sobhan@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/gnome:master commit in: gnome-base/gdm/
Date: Tue, 06 Feb 2018 16:00:53
Message-Id: 1517932842.a8ce4cc744fa0e10b79a6a42d5ce81dd7f92adc4.sobhan@gentoo
1 commit: a8ce4cc744fa0e10b79a6a42d5ce81dd7f92adc4
2 Author: Sobhan Mohammadpour <sobhan <AT> gentoo <DOT> org>
3 AuthorDate: Tue Feb 6 16:00:42 2018 +0000
4 Commit: Sobhan Mohammadpour <sobhan <AT> gentoo <DOT> org>
5 CommitDate: Tue Feb 6 16:00:42 2018 +0000
6 URL: https://gitweb.gentoo.org/proj/gnome.git/commit/?id=a8ce4cc7
7
8 gnome-base/gdm: bump
9
10 Package-Manager: Portage-2.3.23, Repoman-2.3.6
11 Manifest-Sign-Key: 0x7DF238CF0AA182E1
12
13 gnome-base/gdm/gdm-3.26.2.ebuild | 213 +++++++++++++++++++++++++++++++++++++++
14 1 file changed, 213 insertions(+)
15
16 diff --git a/gnome-base/gdm/gdm-3.26.2.ebuild b/gnome-base/gdm/gdm-3.26.2.ebuild
17 new file mode 100644
18 index 00000000..56cf0c6a
19 --- /dev/null
20 +++ b/gnome-base/gdm/gdm-3.26.2.ebuild
21 @@ -0,0 +1,213 @@
22 +# Copyright 1999-2018 Gentoo Foundation
23 +# Distributed under the terms of the GNU General Public License v2
24 +
25 +EAPI=6
26 +GNOME2_LA_PUNT="yes"
27 +
28 +inherit eutils gnome2 pam readme.gentoo-r1 systemd user versionator
29 +
30 +DESCRIPTION="GNOME Display Manager for managing graphical display servers and user logins"
31 +HOMEPAGE="https://wiki.gnome.org/Projects/GDM"
32 +
33 +SRC_URI="${SRC_URI}
34 + branding? ( https://www.mail-archive.com/tango-artists@×××××××××××××××××.org/msg00043/tango-gentoo-v1.1.tar.gz )
35 +"
36 +
37 +LICENSE="
38 + GPL-2+
39 + branding? ( CC-BY-SA-4.0 )
40 +"
41 +
42 +SLOT="0"
43 +
44 +IUSE="accessibility audit branding fprint +introspection ipv6 plymouth selinux smartcard tcpd test wayland xinerama"
45 +
46 +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh ~x86"
47 +
48 +# NOTE: x11-base/xorg-server dep is for X_SERVER_PATH etc, bug #295686
49 +# nspr used by smartcard extension
50 +# dconf, dbus and g-s-d are needed at install time for dconf update
51 +# We need either systemd or >=openrc-0.12 to restart gdm properly, bug #463784
52 +COMMON_DEPEND="
53 + app-text/iso-codes
54 + >=dev-libs/glib-2.36:2[dbus]
55 + >=x11-libs/gtk+-2.91.1:3
56 + >=gnome-base/dconf-0.20
57 + >=gnome-base/gnome-settings-daemon-3.1.4
58 + gnome-base/gsettings-desktop-schemas
59 + >=media-libs/fontconfig-2.5.0:1.0
60 + >=media-libs/libcanberra-0.4[gtk3]
61 + sys-apps/dbus
62 + >=sys-apps/accountsservice-0.6.35
63 +
64 + x11-apps/sessreg
65 + x11-base/xorg-server
66 + x11-libs/libXi
67 + x11-libs/libXau
68 + x11-libs/libX11
69 + x11-libs/libXdmcp
70 + x11-libs/libXext
71 + x11-libs/libXft
72 + x11-libs/libxcb
73 + >=x11-misc/xdg-utils-1.0.2-r3
74 +
75 + virtual/pam
76 + >=sys-apps/systemd-186:0=[pam]
77 +
78 + sys-auth/pambase[systemd]
79 +
80 + audit? ( sys-process/audit )
81 + introspection? ( >=dev-libs/gobject-introspection-0.9.12:= )
82 + plymouth? ( sys-boot/plymouth )
83 + selinux? ( sys-libs/libselinux )
84 + tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
85 + xinerama? ( x11-libs/libXinerama )
86 +"
87 +# XXX: These deps are from session and desktop files in data/ directory
88 +# fprintd is used via dbus by gdm-fingerprint-extension
89 +# gnome-session-3.6 needed to avoid freezing with orca
90 +RDEPEND="${COMMON_DEPEND}
91 + >=gnome-base/gnome-session-3.6
92 + >=gnome-base/gnome-shell-3.1.90
93 + x11-apps/xhost
94 +
95 + accessibility? (
96 + >=app-accessibility/orca-3.10
97 + gnome-extra/mousetweaks )
98 + fprint? (
99 + sys-auth/fprintd
100 + sys-auth/pam_fprint )
101 +
102 + !gnome-extra/fast-user-switch-applet
103 +"
104 +DEPEND="${COMMON_DEPEND}
105 + app-text/docbook-xml-dtd:4.1.2
106 + dev-util/gdbus-codegen
107 + >=dev-util/intltool-0.40.0
108 + dev-util/itstool
109 + virtual/pkgconfig
110 + x11-proto/inputproto
111 + x11-proto/randrproto
112 + test? ( >=dev-libs/check-0.9.4 )
113 + xinerama? ( x11-proto/xineramaproto )
114 +"
115 +
116 +DOC_CONTENTS="
117 + To make GDM start at boot, run:\n
118 + # systemctl enable gdm.service\n
119 + \n
120 + For passwordless login to unlock your keyring, you need to install
121 + sys-auth/pambase with USE=gnome-keyring and set an empty password
122 + on your keyring. Use app-crypt/seahorse for that.\n
123 + \n
124 + You may need to install app-crypt/coolkey and sys-auth/pam_pkcs11
125 + for smartcard support
126 +"
127 +
128 +pkg_setup() {
129 + enewgroup gdm
130 + enewgroup video # Just in case it hasn't been created yet
131 + enewuser gdm -1 -1 /var/lib/gdm gdm,video
132 +
133 + # For compatibility with certain versions of nvidia-drivers, etc., need to
134 + # ensure that gdm user is in the video group
135 + if ! egetent group video | grep -q gdm; then
136 + # FIXME XXX: is this at all portable, ldap-safe, etc.?
137 + # XXX: egetent does not have a 1-argument form, so we can't use it to
138 + # get the list of gdm's groups
139 + local g=$(groups gdm)
140 + elog "Adding user gdm to video group"
141 + usermod -G video,${g// /,} gdm || die "Adding user gdm to video group failed"
142 + fi
143 +}
144 +
145 +src_prepare() {
146 + # ssh-agent handling must be done at xinitrc.d, bug #220603
147 + eapply "${FILESDIR}/${PN}-2.32.0-xinitrc-ssh-agent.patch"
148 +
149 + # Gentoo does not have a fingerprint-auth pam stack
150 + eapply "${FILESDIR}/${PN}-3.8.4-fingerprint-auth.patch"
151 +
152 + # Show logo when branding is enabled
153 + use branding && eapply "${FILESDIR}/${PN}-3.8.4-logo.patch"
154 +
155 + gnome2_src_prepare
156 +}
157 +
158 +src_configure() {
159 + local myconf
160 + # PAM is the only auth scheme supported
161 + # even though configure lists shadow and crypt
162 + # they don't have any corresponding code.
163 + # --with-at-spi-registryd-directory= needs to be passed explicitly because
164 + # of https://bugzilla.gnome.org/show_bug.cgi?id=607643#c4
165 + # Xevie is obsolete, bug #482304
166 + # --with-initial-vt=7 conflicts with plymouth, bug #453392
167 + ! use plymouth && myconf="${myconf} --with-initial-vt=7"
168 +
169 + gnome2_src_configure \
170 + --enable-gdm-xsession \
171 + --enable-user-display-server \
172 + --with-run-dir=/run/gdm \
173 + --localstatedir="${EPREFIX}"/var \
174 + --disable-static \
175 + --with-xdmcp=yes \
176 + --enable-authentication-scheme=pam \
177 + --with-default-pam-config=exherbo \
178 + --with-pam-mod-dir=$(getpam_mod_dir) \
179 + --with-at-spi-registryd-directory="${EPREFIX}"/usr/libexec \
180 + --without-xevie \
181 + --enable-systemd-journal \
182 + --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \
183 + $(use_with audit libaudit) \
184 + $(use_enable ipv6) \
185 + $(use_with plymouth) \
186 + $(use_with selinux) \
187 + $(use_with tcpd tcp-wrappers) \
188 + $(use_enable wayland wayland-support) \
189 + $(use_with xinerama) \
190 + ${myconf}
191 +}
192 +
193 +src_install() {
194 + gnome2_src_install
195 +
196 + if ! use accessibility ; then
197 + rm "${ED}"/usr/share/gdm/greeter/autostart/orca-autostart.desktop || die
198 + fi
199 +
200 + exeinto /etc/X11/xinit/xinitrc.d
201 + newexe "${FILESDIR}/49-keychain-r1" 49-keychain
202 + newexe "${FILESDIR}/50-ssh-agent-r1" 50-ssh-agent
203 +
204 + # gdm user's home directory
205 + keepdir /var/lib/gdm
206 + fowners gdm:gdm /var/lib/gdm
207 +
208 + # install XDG_DATA_DIRS gdm changes
209 + echo 'XDG_DATA_DIRS="/usr/share/gdm"' > 99xdg-gdm
210 + doenvd 99xdg-gdm
211 +
212 + use branding && newicon "${WORKDIR}/tango-gentoo-v1.1/scalable/gentoo.svg" gentoo-gdm.svg
213 +
214 + readme.gentoo_create_doc
215 +}
216 +
217 +pkg_postinst() {
218 + local d ret
219 +
220 + gnome2_pkg_postinst
221 +
222 + # bug #436456; gdm crashes if /var/lib/gdm subdirs are not owned by gdm:gdm
223 + ret=0
224 + ebegin "Fixing "${EROOT}"var/lib/gdm ownership"
225 + chown gdm:gdm "${EROOT}var/lib/gdm" || ret=1
226 + for d in "${EROOT}var/lib/gdm/"{.cache,.config,.local}; do
227 + [[ ! -e "${d}" ]] || chown -R gdm:gdm "${d}" || ret=1
228 + done
229 + eend ${ret}
230 +
231 + systemd_reenable gdm.service
232 +
233 + readme.gentoo_print_elog
234 +}