summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Bidulock2015-07-16 01:09:38 -0600
committerBrian Bidulock2015-07-16 01:09:38 -0600
commit30f2d15a2f160c6b47c92d0ae09635336a25ff08 (patch)
tree0eccda6e80a32398052f9aba0c5953a2fe524055
downloadaur-slim-defaultsession.tar.gz
initial version
-rw-r--r--.SRCINFO38
-rw-r--r--PKGBUILD73
-rw-r--r--slim-1.3.6-add-sessiondir.patch28
-rw-r--r--slim-1.3.6-defaultsession.patch48
-rw-r--r--slim-1.3.6-fix-libslim-libraries.patch20
-rw-r--r--slim.logrotate9
-rw-r--r--slim.pam7
7 files changed, 223 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..4b9f7a0a113a
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,38 @@
+pkgbase = slim-defaultsession
+ pkgdesc = Desktop-independent graphical login manager for X11 patched to provide a default session.
+ pkgver = 1.3.6
+ pkgrel = 3
+ url = http://slim.berlios.de/
+ arch = i686
+ arch = x86_64
+ license = GPL2
+ makedepends = cmake
+ makedepends = freeglut
+ depends = pam
+ depends = libxmu
+ depends = libpng
+ depends = libjpeg
+ depends = libxft
+ depends = libxrandr
+ depends = xorg-xauth
+ provides = slim
+ conflicts = slim
+ backup = etc/slim.conf
+ backup = etc/logrotate.d/slim
+ backup = etc/pam.d/slim
+ backup = etc/slimlock.conf
+ source = http://download.berlios.de/slim/slim-1.3.6.tar.gz
+ source = slim-1.3.6-fix-libslim-libraries.patch
+ source = slim-1.3.6-add-sessiondir.patch
+ source = slim.pam
+ source = slim.logrotate
+ source = slim-1.3.6-defaultsession.patch
+ sha256sums = 21defeed175418c46d71af71fd493cd0cbffd693f9d43c2151529125859810df
+ sha256sums = 3dfa697f8c058390c7e02e7aba769475057ef8ddde945dc43b8cb7f9724dbda0
+ sha256sums = 0dffd53a69eb9033a67fad964df6fc150ee7a483e29d8eb8b559010fbd14e5fd
+ sha256sums = b9a77a614c451287b574c33d41e28b5b149c6d2464bdb3a5274799842bca51a4
+ sha256sums = 5bf44748b5003f2332d8b268060c400120b9100d033fa9d35468670d827f6def
+ sha256sums = 2e19c988573608dbd728e36e4cb85d90838f654097ddef03a9a9b1043b113cb5
+
+pkgname = slim-defaultsession
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..30dbc87985bf
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,73 @@
+# Maintainer: Travis Bloomfield <bloomfield.travis@gmail.com>
+# Contributor: Evangelos Foutras <evangelos@foutrelis.com>
+# Contributor: Gaetan Bisson <bisson@archlinux.org>
+# Contributor: Thayer Williams <thayer@archlinux.org>
+# Contributor: Alexander Fehr <pizzapunk gmail com>
+# Contributor: Hugo Ideler <hugoideler@dse.nl>
+
+pkgname=slim-defaultsession
+provides=('slim')
+conflicts=('slim')
+pkgver=1.3.6
+pkgrel=3
+pkgdesc="Desktop-independent graphical login manager for X11 patched to provide a default session."
+arch=('i686' 'x86_64')
+url="http://slim.berlios.de/"
+license=('GPL2')
+depends=('pam' 'libxmu' 'libpng' 'libjpeg' 'libxft' 'libxrandr' 'xorg-xauth')
+makedepends=('cmake' 'freeglut')
+backup=('etc/slim.conf' 'etc/logrotate.d/slim' 'etc/pam.d/slim'
+ 'etc/slimlock.conf')
+source=(http://download.berlios.de/slim/slim-$pkgver.tar.gz
+ slim-1.3.6-fix-libslim-libraries.patch
+ slim-1.3.6-add-sessiondir.patch
+ slim.pam
+ slim.logrotate
+ slim-1.3.6-defaultsession.patch)
+sha256sums=('21defeed175418c46d71af71fd493cd0cbffd693f9d43c2151529125859810df'
+ '3dfa697f8c058390c7e02e7aba769475057ef8ddde945dc43b8cb7f9724dbda0'
+ '0dffd53a69eb9033a67fad964df6fc150ee7a483e29d8eb8b559010fbd14e5fd'
+ 'b9a77a614c451287b574c33d41e28b5b149c6d2464bdb3a5274799842bca51a4'
+ '5bf44748b5003f2332d8b268060c400120b9100d033fa9d35468670d827f6def'
+ '2e19c988573608dbd728e36e4cb85d90838f654097ddef03a9a9b1043b113cb5')
+
+prepare() {
+ mv "$srcdir/slim-$pkgver" "$srcdir/$pkgname-$pkgver"
+ cd "$srcdir/$pkgname-$pkgver"
+
+ # Fix installation path of slim.service
+ sed -i 's|set(LIBDIR "/lib")|set(LIBDIR "/usr/lib")|' CMakeLists.txt
+
+ patch -Np1 -i "$srcdir/slim-1.3.6-fix-libslim-libraries.patch"
+ patch -Np1 -i "$srcdir/slim-1.3.6-add-sessiondir.patch"
+ patch -Np2 -i "$srcdir/slim-1.3.6-defaultsession.patch"
+}
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_SKIP_RPATH=ON \
+ -DUSE_PAM=yes \
+ -DUSE_CONSOLEKIT=no
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make DESTDIR="$pkgdir" install
+
+ install -Dm644 "$srcdir/slim.pam" "$pkgdir/etc/pam.d/slim"
+ install -Dm644 "$srcdir/slim.logrotate" "$pkgdir/etc/logrotate.d/slim"
+ install -Dm644 slimlock.conf "$pkgdir/etc/slimlock.conf"
+
+ # Provide sane defaults
+ sed -i -e 's|#xserver_arguments.*|xserver_arguments -nolisten tcp vt07|' \
+ -e 's|/var/run/slim.lock|/var/lock/slim.lock|' \
+ "$pkgdir/etc/slim.conf"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/slim-1.3.6-add-sessiondir.patch b/slim-1.3.6-add-sessiondir.patch
new file mode 100644
index 000000000000..f6abf0bc72ad
--- /dev/null
+++ b/slim-1.3.6-add-sessiondir.patch
@@ -0,0 +1,28 @@
+From 741e43960a4ea3a8bc230b1f599311d800c2cc83 Mon Sep 17 00:00:00 2001
+From: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
+Date: Wed, 02 Oct 2013 23:23:24 +0000
+Subject: Update slim.conf. Add sessiondir.
+
+Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
+---
+diff --git a/slim.conf b/slim.conf
+index a8e2e1c..c5f1d38 100644
+--- a/slim.conf
++++ b/slim.conf
+@@ -47,11 +47,9 @@ login_cmd exec /bin/bash -login ~/.xinitrc %session
+ # options "-d" and "-nodaemon"
+ # daemon yes
+
+-# Available sessions (first one is the default).
+-# The current chosen session name is replaced in the login_cmd
+-# above, so your login command can handle different sessions.
+-# see the xinitrc.sample file shipped with slim sources
+-sessions xfce4,icewm-session,wmaker,blackbox
++# Set directory that contains the xsessions.
++# slim reads xsesion from this directory, and be able to select.
++sessiondir /usr/share/xsessions/
+
+ # Executed when pressing F11 (requires imagemagick)
+ screenshot_cmd import -window root /slim.png
+--
+cgit v0.9.2
diff --git a/slim-1.3.6-defaultsession.patch b/slim-1.3.6-defaultsession.patch
new file mode 100644
index 000000000000..9e72a0793953
--- /dev/null
+++ b/slim-1.3.6-defaultsession.patch
@@ -0,0 +1,48 @@
+diff -rupN original/slim-1.3.6/cfg.cpp patched/slim-1.3.6/cfg.cpp
+--- original/slim-1.3.6/cfg.cpp 2014-03-31 07:30:28.609045864 +0200
++++ patched/slim-1.3.6/cfg.cpp 2014-03-31 07:31:44.349203338 +0200
+@@ -56,6 +56,7 @@ Cfg::Cfg()
+ options.insert(option("reboot_msg","The system is rebooting..."));
+ options.insert(option("sessiondir",""));
+ options.insert(option("hidecursor","false"));
++ options.insert(option("default_session",""));
+
+ /* Theme stuff */
+ options.insert(option("input_panel_x","50%"));
+@@ -290,6 +291,7 @@ void Cfg::split(vector<string>& v, const
+
+ void Cfg::fillSessionList(){
+ string strSessionDir = getOption("sessiondir");
++ std::pair<std::string,std::string> sessionTemp;
+
+ sessions.clear();
+
+@@ -327,6 +329,13 @@ void Cfg::fillSessionList(){
+ desktop_file.close();
+ pair<string,string> session(session_name,session_exec);
+ sessions.push_back(session);
++ // Check whether this is the default session. If so switch to front.
++ if (session_name.compare(getOption("default_session")) == 0)
++ {
++ sessionTemp = sessions.front();
++ sessions.at(0) = sessions.back();
++ sessions.at(sessions.size() - 1) = sessionTemp;
++ }
+ cout << session_exec << " - " << session_name << endl;
+ }
+
+diff -rupN original/slim-1.3.6/slim.conf patched/slim-1.3.6/slim.conf
+--- original/slim-1.3.6/slim.conf 2014-03-31 07:30:28.609045864 +0200
++++ patched/slim-1.3.6/slim.conf 2014-03-31 07:31:44.349203338 +0200
+@@ -51,6 +51,11 @@ login_cmd exec /bin/bash -logi
+ # slim reads xsesion from this directory, and be able to select.
+ sessiondir /usr/share/xsessions/
+
++# Set the default session. Note that the session name
++# must match the field "Name" in the xsession .desktop file
++# located in sessiondir.
++# default_session GNOME
++
+ # Executed when pressing F11 (requires imagemagick)
+ screenshot_cmd import -window root /slim.png
+
diff --git a/slim-1.3.6-fix-libslim-libraries.patch b/slim-1.3.6-fix-libslim-libraries.patch
new file mode 100644
index 000000000000..b6c90f9f46e3
--- /dev/null
+++ b/slim-1.3.6-fix-libslim-libraries.patch
@@ -0,0 +1,20 @@
+diff -upr slim-1.3.6.orig/CMakeLists.txt slim-1.3.6/CMakeLists.txt
+--- slim-1.3.6.orig/CMakeLists.txt 2013-10-02 16:16:22.000000000 +0300
++++ slim-1.3.6/CMakeLists.txt 2013-10-02 16:19:57.000000000 +0300
+@@ -119,6 +119,7 @@ if(USE_PAM)
+ if(PAM_FOUND)
+ message("\tPAM Found")
+ set(SLIM_DEFINITIONS ${SLIM_DEFINITIONS} "-DUSE_PAM")
++ target_link_libraries(libslim ${PAM_LIBRARY})
+ target_link_libraries(${PROJECT_NAME} ${PAM_LIBRARY})
+ target_link_libraries(slimlock ${PAM_LIBRARY})
+ include_directories(${PAM_INCLUDE_DIR})
+@@ -178,6 +179,8 @@ include_directories(
+ )
+
+ target_link_libraries(libslim
++ ${X11_Xft_LIB}
++ ${X11_Xrandr_LIB}
+ ${JPEG_LIBRARIES}
+ ${PNG_LIBRARIES}
+ )
diff --git a/slim.logrotate b/slim.logrotate
new file mode 100644
index 000000000000..26ec3b0f4220
--- /dev/null
+++ b/slim.logrotate
@@ -0,0 +1,9 @@
+/var/log/slim.log {
+ compress
+ rotate 1
+ size 1024k
+ notifempty
+ missingok
+ copytruncate
+ noolddir
+}
diff --git a/slim.pam b/slim.pam
new file mode 100644
index 000000000000..1ab7fb0911fa
--- /dev/null
+++ b/slim.pam
@@ -0,0 +1,7 @@
+#%PAM-1.0
+
+auth include system-local-login
+-auth optional pam_gnome_keyring.so
+account include system-local-login
+session include system-local-login
+-session optional pam_gnome_keyring.so auto_start