diff --git a/srcpkgs/lxdm/INSTALL b/srcpkgs/lxdm/INSTALL new file mode 100644 index 00000000000..2953e3f05b2 --- /dev/null +++ b/srcpkgs/lxdm/INSTALL @@ -0,0 +1,9 @@ +# Set correct permissions for LXDM. + +case ${ACTION} in +post) + chown root:lxdm etc/lxdm/lxdm.conf + [ ! -d var/lib/lxdm ] && mkdir -p var/lib/lxdm + chown -R root:lxdm var/lib/lxdm + ;; +esac diff --git a/srcpkgs/lxdm/files/lxdm.pam b/srcpkgs/lxdm/files/lxdm.pam new file mode 100644 index 00000000000..f45589679ac --- /dev/null +++ b/srcpkgs/lxdm/files/lxdm.pam @@ -0,0 +1,10 @@ +auth requisite pam_nologin.so +auth required pam_env.so +auth required pam_unix.so +auth optional pam_gnome_keyring.so +account required pam_unix.so +session required pam_limits.so +session required pam_unix.so +session optional pam_systemd.so +session optional pam_gnome_keyring.so auto_start +password required pam_unix.so diff --git a/srcpkgs/lxdm/files/lxdm.service b/srcpkgs/lxdm/files/lxdm.service new file mode 100644 index 00000000000..3c57204eb97 --- /dev/null +++ b/srcpkgs/lxdm/files/lxdm.service @@ -0,0 +1,11 @@ +[Unit] +Description=LXDE Display Manager +Requires=dev-tty7.device +After=dev-tty7.device systemd-user-sessions.service + +[Service] +ExecStart=/usr/sbin/lxdm-binary +Restart=always + +[Install] +WantedBy=graphical.target diff --git a/srcpkgs/lxdm/lxdm.rshlibs b/srcpkgs/lxdm/lxdm.rshlibs new file mode 100644 index 00000000000..2b7ae67dda2 --- /dev/null +++ b/srcpkgs/lxdm/lxdm.rshlibs @@ -0,0 +1,16 @@ +libgtk-x11-2.0.so.0 +libgdk-x11-2.0.so.0 +libgio-2.0.so.0 +libgdk_pixbuf-2.0.so.0 +libgobject-2.0.so.0 +libglib-2.0.so.0 +libpthread.so.0 +libc.so.6 +libX11.so.6 +libpangocairo-1.0.so.0 +libpango-1.0.so.0 +libcairo.so.2 +libxcb.so.1 +libck-connector.so.0 +libdbus-1.so.3 +libpam.so.0 diff --git a/srcpkgs/lxdm/patches/Xsession.patch b/srcpkgs/lxdm/patches/Xsession.patch new file mode 100644 index 00000000000..1ed651698bd --- /dev/null +++ b/srcpkgs/lxdm/patches/Xsession.patch @@ -0,0 +1,10 @@ +--- data/Xsession.orig 2011-07-29 15:42:33.000000000 +0200 ++++ data/Xsession 2011-12-03 09:09:14.592876087 +0100 +@@ -9,6 +9,8 @@ + LXSESSION=/usr/bin/startlxde + fi + ++[ -f /etc/profile ] && . /etc/profile ++[ -f ~/.profile ] && . ~/.profile + [ -f /etc/xprofile ] && . /etc/xprofile + [ -f ~/.xprofile ] && . ~/.xprofile diff --git a/srcpkgs/lxdm/patches/glib2-2.32.0.patch b/srcpkgs/lxdm/patches/glib2-2.32.0.patch new file mode 100644 index 00000000000..c1b549521c7 --- /dev/null +++ b/srcpkgs/lxdm/patches/glib2-2.32.0.patch @@ -0,0 +1,21 @@ +From: dgod +Date: Sun, 25 Dec 2011 07:23:19 +0000 (+0800) +Subject: fix event check bug caused cpu 100% +X-Git-Url: http://lxde.git.sourceforge.net/git/gitweb.cgi?p=lxde%2Flxdm;a=commitdiff_plain;h=d4e41ecb;hp=f0951bdf736026b041001e846d2cb93f7f2852e1 + +fix event check bug caused cpu 100% +--- + +diff --git a/src/lxcom.c b/src/lxcom.c +index 02763eb..18ee12e 100644 +--- src/lxcom.c ++++ src/lxcom.c +@@ -89,7 +89,7 @@ static gboolean lxcom_prepare (GSource *source,gint *timeout) + + static gboolean lxcom_check(GSource *source) + { +- return TRUE; ++ return (((LXComSource*)source)->poll.revents&G_IO_IN)?TRUE:FALSE; + } + + static gboolean lxcom_dispatch (GSource *source,GSourceFunc callback,gpointer user_data) diff --git a/srcpkgs/lxdm/patches/lxdm.conf.patch b/srcpkgs/lxdm/patches/lxdm.conf.patch new file mode 100644 index 00000000000..5c739b80a55 --- /dev/null +++ b/srcpkgs/lxdm/patches/lxdm.conf.patch @@ -0,0 +1,29 @@ +--- data/lxdm.conf.in.orig 2012-05-02 10:53:30.903273165 +0200 ++++ data/lxdm.conf.in 2012-05-02 10:54:15.357223046 +0200 +@@ -16,7 +16,7 @@ + # xauth_path=/tmp + + ## greeter used to welcome the user +-greeter=@FULL_LIBEXECDIR@/lxdm-greeter-gtk ++greeter=/usr/libexec/lxdm-greeter-gtk + + [server] + ## arg used to start xserver, not fully function +@@ -27,7 +27,7 @@ greeter=@FULL_LIBEXECDIR@/lxdm-greeter-g + gtk_theme=Clearlooks + + ## background of the greeter +-bg=/usr/share/backgrounds/default.png ++bg=/usr/share/void-artwork/splash.png + + ## if show bottom pane + bottom_pane=1 +@@ -36,7 +36,7 @@ bottom_pane=1 + lang=1 + + ## if show keyboard layout select control +-keyboard=0 ++keyboard=0 + + ## the theme of greeter + theme=Industrial diff --git a/srcpkgs/lxdm/template b/srcpkgs/lxdm/template new file mode 100644 index 00000000000..c3bd946a450 --- /dev/null +++ b/srcpkgs/lxdm/template @@ -0,0 +1,47 @@ +# Template file for 'lxdm' +pkgname=lxdm +version=0.4.1 +homepage="http://www.lxde.org" +distfiles="${SOURCEFORGE_SITE}/lxde/$pkgname-$version.tar.gz" +build_style=gnu-configure +configure_args="-with-xconn=xcb" +short_desc="GUI login manager for LXDE" +maintainer="Juan RP " +license="GPL-3" +checksum=9e0d0a5672fcf31a18de8178ce73eab1723d6ae7097dfe41e9fe2c46e180cf08 +long_desc=" + A lightweight dropped-in replacement for GDM or KDM." + +provides="display-manager-0" +replaces="display-manager>=0" + +system_groups="lxdm" +systemd_services="lxdm.service off" + +conf_files=" +/etc/lxdm/LoginReady +/etc/lxdm/PostLogin +/etc/lxdm/PostLogout +/etc/lxdm/PreLogin +/etc/lxdm/PreReboot +/etc/lxdm/PreShutdown +/etc/lxdm/Xsession +/etc/lxdm/lxdm.conf +/etc/pam.d/lxde" + +Add_dependency build pkg-config +Add_dependency build intltool +Add_dependency build gtk+-devel +Add_dependency build ConsoleKit-devel + +Add_dependency full iso-codes + +post_install() { + # Remove useless script. + rm -f ${DESTDIR}/usr/sbin/lxdm + # Use our own pam file. + rm -f ${DESTDIR}/etc/pam.d/lxdm + vinstall ${FILESDIR}/lxdm.pam 644 etc/pam.d lxdm + # Install systemd service. + vinstall ${FILESDIR}/lxdm.service 644 lib/systemd/system +}