# Template file for 'gdm'
pkgname=gdm
version=3.2.1.1
revision=4
distfiles="${GNOME_SITE}/$pkgname/3.2/$pkgname-$version.tar.xz"
build_style=gnu-configure
configure_args="--disable-schemas-install --disable-scrollkeeper
--with-gconf-schema-file-dir=/usr/share/gconf/schemas
--with-at-spi-registryd-directory=/usr/libexec --without-tcp-wrappers
--disable-static"
short_desc="GNOME Display Manager"
maintainer="Juan RP <xtraeme@gmail.com>"
homepage="http://www.gnome.org"
license="GPL-2"
checksum=85a1383f93870fb5d47a938cc2e04b6f0d74cb611a2b5d94d9651b78a5ccffbd
long_desc="
 GDM is the GNOME Display Manager, it is the little proggie that runs
 in the background, runs your X sessions, presents you with a login box
 and then tells you to piss off because you forgot your password. It
 does pretty much everything that you would want to use xdm for, but
 does not involve as much crack. It doesn't use any code from xdm, and
 has a more paranoid and safer design overall. It also includes many
 features over xdm, the biggest one of which is that it is more user
 friendly, even if your X setup is failing. The goal is that users
 should never, ever have to use the command line to customize or
 troubleshoot gdm. It of course supports xdmcp, and in fact extends
 xdmcp a little bit in places where I thought xdm was lacking (but is
 still compatible with xdm's xdmcp)."

conf_files="
/etc/gdm/custom.conf
/etc/pam.d/gdm
/etc/pam.d/gdm-autologin
/etc/pam.d/gdm-fingerprint
/etc/pam.d/gdm-password
/etc/pam.d/gdm-smartcard
/etc/pam.d/gdm-welcome"

# Required runtime directories.
make_dirs="
/var/cache/gdm  			1755 root gdm
/var/log/gdm 				1755 root gdm
/var/lib/gdm/.config/dconf		0755 gdm gdm
/var/lib/gdm/.local/share/applications	0755 gdm gdm
"

subpackages="gdm-devel"
gconf_schemas="gdm.schemas"
gtk_iconcache_dirs="/usr/share/icons/hicolor"

# Create the 'gdm' system user/group.
system_accounts="gdm"
gdm_homedir="/var/lib/gdm"
systemd_services="gdm.service off"

Add_dependency run dconf
Add_dependency run ConsoleKit-x11
Add_dependency run hicolor-icon-theme
Add_dependency run polkit-gnome

Add_dependency build pkg-config
Add_dependency build intltool
Add_dependency build gnome-doc-utils
Add_dependency build gobject-introspection
Add_dependency build pam-devel
Add_dependency build nss-devel
Add_dependency build accountsservice-devel
Add_dependency build gtk+3-devel
Add_dependency build GConf-devel
Add_dependency build upower-devel
Add_dependency build libcanberra-devel
Add_dependency build libXrandr-devel
Add_dependency build libxklavier-devel
Add_dependency build at-spi2-core-devel

Add_dependency full xorg-server

post_install()
{
	# Use our own pam files.
	rm -f ${DESTDIR}/etc/pam.d/*
	for f in gdm gdm-autologin gdm-fingerprint gdm-password gdm-smartcard \
		gdm-welcome; do
		vinstall ${FILESDIR}/${f}.pam 644 etc/pam.d ${f}
	done
	# Install systemd service.
	vinstall ${FILESDIR}/gdm.service 644 lib/systemd/system

	# Install GConf schema.
	mv ${DESTDIR}/usr/share/gconf/schemas/*.schemas ${wrksrc}
	gconf-merge-schema ${DESTDIR}/usr/share/gconf/schemas/${gconf_schemas} \
		--domain ${pkgname} ${wrksrc}/*.schemas
	
	chmod 1770 ${DESTDIR}/var/log/gdm
	chmod 700 ${DESTDIR}/var/lib/gdm/.config/dconf
}