diff options
author | replabrobin | 2015-08-29 13:44:05 +0100 |
---|---|---|
committer | replabrobin | 2015-08-29 13:44:05 +0100 |
commit | f412564d3ef6842b376fcea09aa69d559fa8f867 (patch) | |
tree | ab34eb487435e7af97dab7e28945825870055e58 | |
download | aur-f412564d3ef6842b376fcea09aa69d559fa8f867.tar.gz |
initial check in
-rw-r--r-- | .SRCINFO | 41 | ||||
-rw-r--r-- | PKGBUILD | 82 | ||||
-rw-r--r-- | slim-1.3.6-add-sessiondir.patch | 28 | ||||
-rw-r--r-- | slim-1.3.6-fix-libslim-libraries.patch | 20 | ||||
-rw-r--r-- | slim-1.3.6-systemd-session.patch | 29 | ||||
-rw-r--r-- | slim-1.3.6-xserver-ready.patch | 36 | ||||
-rw-r--r-- | slim.logrotate | 9 | ||||
-rw-r--r-- | slim.pam | 7 |
8 files changed, 252 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..5b1ddc2df402 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,41 @@ +pkgbase = slim-xserver-ready + pkgdesc = graphical login manager for X11 with xserver_ready command + pkgver = 1.3.6 + pkgrel = 5 + url = http://sourceforge.net/projects/slim.berlios/ + 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 + depends = ttf-font + provides = slim + conflicts = slim + backup = etc/slim.conf + backup = etc/logrotate.d/slim + backup = etc/pam.d/slim + backup = etc/slimlock.conf + source = https://downloads.sourceforge.net/project/slim.berlios/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-1.3.6-systemd-session.patch + source = slim.pam + source = slim.logrotate + source = slim-1.3.6-xserver-ready.patch + sha256sums = 21defeed175418c46d71af71fd493cd0cbffd693f9d43c2151529125859810df + sha256sums = 3dfa697f8c058390c7e02e7aba769475057ef8ddde945dc43b8cb7f9724dbda0 + sha256sums = 0dffd53a69eb9033a67fad964df6fc150ee7a483e29d8eb8b559010fbd14e5fd + sha256sums = 900b7ffe723b741c05bcc0ca857f300a2131a0029c6532eb17be935451bf2c70 + sha256sums = b9a77a614c451287b574c33d41e28b5b149c6d2464bdb3a5274799842bca51a4 + sha256sums = 5bf44748b5003f2332d8b268060c400120b9100d033fa9d35468670d827f6def + sha256sums = 209e769b7584c5ef26bc657103bc1b00a5892ab280d361f0117626df419b3f9f + +pkgname = slim-xserver-ready + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..222d254d27f1 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,82 @@ +#based on slim PKGBUILD +# Maintainer: 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> +# +# replabrobin: +# added xserver_ready command to be executed synchronously +# after X is started e.g execute VBoxClient-all etc etc + +pkgname=slim-xserver-ready +pkgver=1.3.6 +pkgrel=5 +pkgdesc="graphical login manager for X11 with xserver_ready command" +arch=('i686' 'x86_64') +url="http://sourceforge.net/projects/slim.berlios/" +license=('GPL2') +conflicts=('slim') +provides=('slim') +depends=('pam' 'libxmu' 'libpng' 'libjpeg' 'libxft' 'libxrandr' 'xorg-xauth' + 'ttf-font') +makedepends=('cmake' 'freeglut') +backup=('etc/slim.conf' 'etc/logrotate.d/slim' 'etc/pam.d/slim' + 'etc/slimlock.conf') +source=(https://downloads.sourceforge.net/project/slim.berlios/slim-$pkgver.tar.gz + slim-1.3.6-fix-libslim-libraries.patch + slim-1.3.6-add-sessiondir.patch + slim-1.3.6-systemd-session.patch + slim.pam + slim.logrotate + slim-1.3.6-xserver-ready.patch + ) +sha256sums=('21defeed175418c46d71af71fd493cd0cbffd693f9d43c2151529125859810df' + '3dfa697f8c058390c7e02e7aba769475057ef8ddde945dc43b8cb7f9724dbda0' + '0dffd53a69eb9033a67fad964df6fc150ee7a483e29d8eb8b559010fbd14e5fd' + '900b7ffe723b741c05bcc0ca857f300a2131a0029c6532eb17be935451bf2c70' + 'b9a77a614c451287b574c33d41e28b5b149c6d2464bdb3a5274799842bca51a4' + '5bf44748b5003f2332d8b268060c400120b9100d033fa9d35468670d827f6def' + '209e769b7584c5ef26bc657103bc1b00a5892ab280d361f0117626df419b3f9f' + ) + +prepare() { + cd slim-$pkgver + + # Fix installation path of slim.service + sed -i 's|set(LIBDIR "/lib")|set(LIBDIR "/usr/lib")|' CMakeLists.txt + + patch -Np1 -i ../slim-1.3.6-fix-libslim-libraries.patch + patch -Np1 -i ../slim-1.3.6-add-sessiondir.patch + patch -Np1 -i ../slim-1.3.6-systemd-session.patch + patch -Np1 -i ../slim-1.3.6-xserver-ready.patch +} + +build() { + cd slim-$pkgver + + cmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DUSE_PAM=yes \ + -DUSE_CONSOLEKIT=no + make +} + +package() { + cd slim-$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-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-1.3.6-systemd-session.patch b/slim-1.3.6-systemd-session.patch new file mode 100644 index 000000000000..be5f529829b3 --- /dev/null +++ b/slim-1.3.6-systemd-session.patch @@ -0,0 +1,29 @@ +--- a/app.cpp 2013-10-23 16:19:57.074100282 -0400 ++++ b/app.cpp 2013-10-23 16:33:13.302122574 -0400 +@@ -829,8 +829,13 @@ + + StopServer(); + RemoveLock(); +- while (waitpid(-1, NULL, WNOHANG) > 0); /* Collects all dead childrens */ +- Run(); ++ if (force_nodaemon) { ++ delete LoginPanel; ++ exit(ERR_EXIT); /* use ERR_EXIT so that systemd's RESTART=on-failure works */ ++ } else { ++ while (waitpid(-1, NULL, WNOHANG) > 0); /* Collects all dead childrens */ ++ Run(); ++ } + } + + void App::KillAllClients(Bool top) { +--- a/slim.service 2013-10-23 16:19:57.074100282 -0400 ++++ b/slim.service 2013-10-23 16:45:14.901142776 -0400 +@@ -4,6 +4,7 @@ + + [Service] + ExecStart=/usr/bin/slim -nodaemon ++Restart=on-failure + + [Install] + Alias=display-manager.service +Common subdirectories: slim-1.3.6/themes and slim-1.3.6.new/themes diff --git a/slim-1.3.6-xserver-ready.patch b/slim-1.3.6-xserver-ready.patch new file mode 100644 index 000000000000..53d9b4e91603 --- /dev/null +++ b/slim-1.3.6-xserver-ready.patch @@ -0,0 +1,36 @@ +diff -upr slim-1.3.6-orig/app.cpp slim-1.3.6/app.cpp +--- slim-1.3.6-orig/app.cpp 2013-10-01 23:38:05.000000000 +0100 ++++ slim-1.3.6/app.cpp 2015-08-19 12:50:24.450834922 +0100 +@@ -979,6 +979,10 @@ int App::StartServer() { + + delete [] args; + ++ string xserver_ready = cfg->getOption("xserver_ready"); ++ if (xserver_ready != "") { ++ system(xserver_ready.c_str()); ++ } + serverStarted = true; + + return ServerPID; +diff -upr slim-1.3.6-orig/cfg.cpp slim-1.3.6/cfg.cpp +--- slim-1.3.6-orig/cfg.cpp 2013-10-01 23:38:05.000000000 +0100 ++++ slim-1.3.6/cfg.cpp 2015-08-19 12:49:44.671573403 +0100 +@@ -38,6 +38,7 @@ Cfg::Cfg() + options.insert(option("login_cmd","exec /bin/bash -login ~/.xinitrc %session")); + options.insert(option("halt_cmd","/sbin/shutdown -h now")); + options.insert(option("reboot_cmd","/sbin/shutdown -r now")); ++ options.insert(option("xserver_ready","")); /*command to execute when xserver is ready*/ + options.insert(option("suspend_cmd","")); + options.insert(option("sessionstart_cmd","")); + options.insert(option("sessionstop_cmd","")); +diff -upr slim-1.3.6-orig/slim.conf slim-1.3.6/slim.conf +--- slim-1.3.6-orig/slim.conf 2013-10-01 23:38:05.000000000 +0100 ++++ slim-1.3.6/slim.conf 2015-08-19 12:48:53.179197022 +0100 +@@ -3,6 +3,7 @@ + default_path /bin:/usr/bin:/usr/local/bin + default_xserver /usr/bin/X + #xserver_arguments -dpi 75 ++#xserver_ready #command to execute after xserver start + + # Commands for halt, login, etc. + halt_cmd /sbin/shutdown -h now 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 |