diff options
Diffstat (limited to 'main/lxdm')
-rw-r--r-- | main/lxdm/APKBUILD | 55 | ||||
-rw-r--r-- | main/lxdm/lxdm-execinfo.patch | 47 | ||||
-rw-r--r-- | main/lxdm/lxdm-nopam.patch | 18 | ||||
-rwxr-xr-x | main/lxdm/lxdm.initd | 12 |
4 files changed, 132 insertions, 0 deletions
diff --git a/main/lxdm/APKBUILD b/main/lxdm/APKBUILD new file mode 100644 index 0000000000..05f9931dc1 --- /dev/null +++ b/main/lxdm/APKBUILD @@ -0,0 +1,55 @@ +# Contributor: William Pitcock <nenolod@dereferenced.org> +# Maintainer: William Pitcock <nenolod@dereferenced.org> +pkgname=lxdm +pkgver=0.3.0 +pkgrel=2 +pkgdesc="LXDE desktop login manager" +url="http://wiki.lxde.org/en/LXDM" +license="GPL" +depends="bash" +makedepends="autoconf automake gtk+-dev consolekit-dev" +install= +source="http://downloads.sourceforge.net/lxde/$pkgname-$pkgver.tar.gz + lxdm.initd + lxdm-execinfo.patch + lxdm-nopam.patch" +arch="all" + +_builddir="$srcdir"/$pkgname-$pkgver + +prepare() { + cd "$_builddir" + + for i in $source; do + case $i in + *.patch) + msg "Applying $i..." + patch -s -p1 -N -i "$srcdir"/$i || return 1 + ;; + esac + done + + autoreconf +} + +build() { + cd "$_builddir" + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --without-pam + make || return 1 +} + +package() { + cd "$_builddir" + make DESTDIR="$pkgdir" install + + install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname +} + +md5sums="1d0688e088edab7c3c563263eb2f9654 lxdm-0.3.0.tar.gz +d6455d172d5d897f6bfcefe9a1a632c7 lxdm.initd +045da38f5bb183ccacc489ea7e50e927 lxdm-execinfo.patch +0d44e8cd97894fd680e3f09e680c3481 lxdm-nopam.patch" diff --git a/main/lxdm/lxdm-execinfo.patch b/main/lxdm/lxdm-execinfo.patch new file mode 100644 index 0000000000..b81ef2fc84 --- /dev/null +++ b/main/lxdm/lxdm-execinfo.patch @@ -0,0 +1,47 @@ +--- lxdm-0.3.0/configure.ac ++++ lxdm-0.3.0.mod/configure.ac +@@ -23,7 +23,7 @@ + + # Checks for header files. + AC_PATH_X +-AC_CHECK_HEADERS([shadow.h stdlib.h string.h unistd.h]) ++AC_CHECK_HEADERS([shadow.h stdlib.h string.h unistd.h execinfo.h]) + + # Checks for typedefs, structures, and compiler characteristics. + AC_TYPE_PID_T +Only in lxdm-0.3.0: data/LoginReady +Only in lxdm-0.3.0: data/PostLogin +Only in lxdm-0.3.0: data/PostLogout +Only in lxdm-0.3.0: data/PreLogin +Only in lxdm-0.3.0: data/PreReboot +Only in lxdm-0.3.0: data/PreShutdown +--- lxdm-0.3.0/src/lxdm.c ++++ lxdm-0.3.0.mod/src/lxdm.c +@@ -51,7 +51,9 @@ + #include <sys/ioctl.h> + #include <sys/stat.h> + ++#ifdef HAVE_EXECINFO_H + #include <execinfo.h> ++#endif + + #include <utmp.h> + +@@ -1480,6 +1482,7 @@ + + static void log_sigsegv(void) + { ++#ifdef HAVE_EXECINFO_H + void *array[40]; + size_t size; + char **bt_strs; +@@ -1492,6 +1495,9 @@ + fprintf(stderr, "%s\n", bt_strs[i]); + + free(bt_strs); ++#else ++ fprintf(stderr, "backtrace is unavailable\n"); ++#endif + } + + static void sigsegv_handler(int sig) diff --git a/main/lxdm/lxdm-nopam.patch b/main/lxdm/lxdm-nopam.patch new file mode 100644 index 0000000000..86c808fcb6 --- /dev/null +++ b/main/lxdm/lxdm-nopam.patch @@ -0,0 +1,18 @@ +--- lxdm-0.3.0/src/lxdm.c ++++ lxdm-0.3.0.mod/src/lxdm.c +@@ -152,6 +152,7 @@ + while( waitpid(-1, 0, WNOHANG) > 0 ) ; + } + ++#if HAVE_LIBPAM + static void close_pam_session(pam_handle_t *pamh) + { + int err; +@@ -161,6 +162,7 @@ + pam_end(pamh, err); + pamh = NULL; + } ++#endif + + static LXSession *lxsession_find_greeter(void) + { diff --git a/main/lxdm/lxdm.initd b/main/lxdm/lxdm.initd new file mode 100755 index 0000000000..d0f17a24f8 --- /dev/null +++ b/main/lxdm/lxdm.initd @@ -0,0 +1,12 @@ +#!/sbin/runscript + +depends() { + needs localmount +} + +description="Lightweight Login Manager" +command="/usr/sbin/lxdm" +command_args="-d" +pidfile="/var/run/lxdm.pid" + +# uses the openrc templates for start()/stop() |