diff options
author | replabrobin | 2021-09-03 14:22:42 +0100 |
---|---|---|
committer | replabrobin | 2021-09-03 14:22:42 +0100 |
commit | 6b4cb8b156a00645df8d377693154934b1671aa3 (patch) | |
tree | 690111dbf8058cf42b7bf8c5928f2d4d16f551b9 | |
parent | f412564d3ef6842b376fcea09aa69d559fa8f867 (diff) | |
download | aur-6b4cb8b156a00645df8d377693154934b1671aa3.tar.gz |
added slim-session-sort.patch systemd & pam stuff
-rw-r--r-- | .SRCINFO | 16 | ||||
-rw-r--r-- | .gitignore | 5 | ||||
-rw-r--r-- | PKGBUILD | 26 | ||||
-rw-r--r-- | slim-1.3.6-default-path.patch | 11 | ||||
-rw-r--r-- | slim-session-sort.patch | 49 | ||||
-rw-r--r-- | slim-type-fix.patch | 12 | ||||
-rw-r--r-- | slim-xserver-ready.patch (renamed from slim-1.3.6-xserver-ready.patch) | 3 | ||||
-rw-r--r-- | slim.conf | 91 | ||||
-rw-r--r-- | slimlock.pam | 3 |
9 files changed, 206 insertions, 10 deletions
@@ -1,10 +1,11 @@ pkgbase = slim-xserver-ready pkgdesc = graphical login manager for X11 with xserver_ready command pkgver = 1.3.6 - pkgrel = 5 + pkgrel = 6 url = http://sourceforge.net/projects/slim.berlios/ arch = i686 arch = x86_64 + arch = aarch64 license = GPL2 makedepends = cmake makedepends = freeglut @@ -26,16 +27,23 @@ pkgbase = slim-xserver-ready 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-1.3.6-default-path.patch source = slim.pam + source = slimlock.pam source = slim.logrotate - source = slim-1.3.6-xserver-ready.patch + source = slim-session-sort.patch + source = slim-type-fix.patch + source = slim-xserver-ready.patch sha256sums = 21defeed175418c46d71af71fd493cd0cbffd693f9d43c2151529125859810df sha256sums = 3dfa697f8c058390c7e02e7aba769475057ef8ddde945dc43b8cb7f9724dbda0 sha256sums = 0dffd53a69eb9033a67fad964df6fc150ee7a483e29d8eb8b559010fbd14e5fd sha256sums = 900b7ffe723b741c05bcc0ca857f300a2131a0029c6532eb17be935451bf2c70 + sha256sums = 1e303eda65a06edc8c2d938ab0751ae7744effae48cc185fd27d3cc5b2561522 sha256sums = b9a77a614c451287b574c33d41e28b5b149c6d2464bdb3a5274799842bca51a4 + sha256sums = dfe35488b50f19fd96526374edc16850ed37dac919834dd579392b1a7518f2ab sha256sums = 5bf44748b5003f2332d8b268060c400120b9100d033fa9d35468670d827f6def - sha256sums = 209e769b7584c5ef26bc657103bc1b00a5892ab280d361f0117626df419b3f9f + sha256sums = a6d021e52661c74914dc1c4a08ffbd7fce63da41005bfe006e252a74c57c9b70 + sha256sums = 03149c9f5afb4679e9421d9965ecc126c0b159636212000aca98cb674b531ca7 + sha256sums = 96f09b5b60c37ca1955f870caa46c1b0d2f4581bf1d8610a48266d0404395876 pkgname = slim-xserver-ready - diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..7c7d4d23b75b --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +/pkg/ +/slim-1.3.6.tar.gz +/slim-xserver-ready-1.3.6-6-x86_64.pkg.tar.zst +/src/ +/tmp/ @@ -8,12 +8,16 @@ # replabrobin: # added xserver_ready command to be executed synchronously # after X is started e.g execute VBoxClient-all etc etc +# The sessiondir entries are sorted by filename so you can +# make your own sessiondir with numerically storted sessions; +# eg 01.desktop 02.desktop etc etc. The display names are +# taken from the desktop files. pkgname=slim-xserver-ready pkgver=1.3.6 -pkgrel=5 +pkgrel=6 pkgdesc="graphical login manager for X11 with xserver_ready command" -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'aarch64') url="http://sourceforge.net/projects/slim.berlios/" license=('GPL2') conflicts=('slim') @@ -27,17 +31,25 @@ source=(https://downloads.sourceforge.net/project/slim.berlios/slim-$pkgver.tar. slim-1.3.6-fix-libslim-libraries.patch slim-1.3.6-add-sessiondir.patch slim-1.3.6-systemd-session.patch + slim-1.3.6-default-path.patch slim.pam + slimlock.pam slim.logrotate - slim-1.3.6-xserver-ready.patch + slim-session-sort.patch + slim-type-fix.patch + slim-xserver-ready.patch ) sha256sums=('21defeed175418c46d71af71fd493cd0cbffd693f9d43c2151529125859810df' '3dfa697f8c058390c7e02e7aba769475057ef8ddde945dc43b8cb7f9724dbda0' '0dffd53a69eb9033a67fad964df6fc150ee7a483e29d8eb8b559010fbd14e5fd' '900b7ffe723b741c05bcc0ca857f300a2131a0029c6532eb17be935451bf2c70' + '1e303eda65a06edc8c2d938ab0751ae7744effae48cc185fd27d3cc5b2561522' 'b9a77a614c451287b574c33d41e28b5b149c6d2464bdb3a5274799842bca51a4' + 'dfe35488b50f19fd96526374edc16850ed37dac919834dd579392b1a7518f2ab' '5bf44748b5003f2332d8b268060c400120b9100d033fa9d35468670d827f6def' - '209e769b7584c5ef26bc657103bc1b00a5892ab280d361f0117626df419b3f9f' + 'a6d021e52661c74914dc1c4a08ffbd7fce63da41005bfe006e252a74c57c9b70' + '03149c9f5afb4679e9421d9965ecc126c0b159636212000aca98cb674b531ca7' + '96f09b5b60c37ca1955f870caa46c1b0d2f4581bf1d8610a48266d0404395876' ) prepare() { @@ -49,7 +61,10 @@ prepare() { 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 + patch -Np1 -i ../slim-1.3.6-default-path.patch + patch -Np1 -i ../slim-xserver-ready.patch + patch -Np1 -i ../slim-session-sort.patch + patch -Np1 -i ../slim-type-fix.patch } build() { @@ -70,6 +85,7 @@ package() { make DESTDIR="$pkgdir" install install -Dm644 "$srcdir/slim.pam" "$pkgdir/etc/pam.d/slim" + install -Dm644 "$srcdir/slimlock.pam" "$pkgdir/etc/pam.d/slimlock" install -Dm644 "$srcdir/slim.logrotate" "$pkgdir/etc/logrotate.d/slim" install -Dm644 slimlock.conf "$pkgdir/etc/slimlock.conf" diff --git a/slim-1.3.6-default-path.patch b/slim-1.3.6-default-path.patch new file mode 100644 index 000000000000..6e1f455911b8 --- /dev/null +++ b/slim-1.3.6-default-path.patch @@ -0,0 +1,11 @@ +diff -uprw slim-1.3.6.orig/slim.conf slim-1.3.6/slim.conf +--- slim-1.3.6.orig/slim.conf 2017-11-26 09:54:56.774671269 +0200 ++++ slim-1.3.6/slim.conf 2017-11-26 10:10:15.520730363 +0200 +@@ -1,6 +1,6 @@ + # Path, X server and arguments (if needed) + # Note: -xauth $authfile is automatically appended +-default_path /bin:/usr/bin:/usr/local/bin ++default_path /usr/local/bin:/usr/local/sbin:/usr/bin + default_xserver /usr/bin/X + #xserver_arguments -dpi 75 + diff --git a/slim-session-sort.patch b/slim-session-sort.patch new file mode 100644 index 000000000000..8eab1d20c518 --- /dev/null +++ b/slim-session-sort.patch @@ -0,0 +1,49 @@ +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 2021-08-31 16:50:18.415225394 +0100 +@@ -14,12 +14,14 @@ + #include <iostream> + #include <unistd.h> + #include <stdlib.h> ++#include <algorithm> + + #include <sys/types.h> + #include <sys/stat.h> + #include <dirent.h> + + #include "cfg.h" ++#include "log.h" + + using namespace std; + +@@ -298,6 +300,7 @@ void Cfg::fillSessionList(){ + + if (pDir != NULL) { + struct dirent *pDirent = NULL; ++ std::vector<std::tuple<string,string,string> > tmp; + + while ((pDirent = readdir(pDir)) != NULL) { + string strFile(strSessionDir); +@@ -325,15 +328,19 @@ void Cfg::fillSessionList(){ + } + } + desktop_file.close(); +- pair<string,string> session(session_name,session_exec); +- sessions.push_back(session); +- cout << session_exec << " - " << session_name << endl; ++ std::tuple<string,string,string> session(pDirent->d_name,session_name,session_exec); ++ tmp.push_back(session); + } + + } + } + } + closedir(pDir); ++ std::sort(tmp.begin(), tmp.end()); ++ for(int i=0;i<tmp.size();i++) { ++ std::pair <string,string> p (std::get<1>(tmp[i]),std::get<2>(tmp[i])); ++ sessions.push_back(p); ++ } + } + } + diff --git a/slim-type-fix.patch b/slim-type-fix.patch new file mode 100644 index 000000000000..c562518dc642 --- /dev/null +++ b/slim-type-fix.patch @@ -0,0 +1,12 @@ +diff -upr slim-1.3.6-orig/panel.cpp slim-1.3.6/panel.cpp +--- slim-1.3.6-orig/panel.cpp 2013-10-01 23:38:05.000000000 +0100 ++++ slim-1.3.6/panel.cpp 2021-08-31 16:52:28.884983818 +0100 +@@ -48,7 +48,7 @@ Panel::Panel(Display* dpy, int scr, Wind + gcm = GCGraphicsExposures; + gcv.graphics_exposures = False; + WinGC = XCreateGC(Dpy, Win, gcm, &gcv); +- if (WinGC < 0) { ++ if (WinGC < (GC)0) { + cerr << APPNAME + << ": failed to create pixmap\n."; + exit(ERR_EXIT); diff --git a/slim-1.3.6-xserver-ready.patch b/slim-xserver-ready.patch index 53d9b4e91603..387af002ac66 100644 --- a/slim-1.3.6-xserver-ready.patch +++ b/slim-xserver-ready.patch @@ -1,12 +1,13 @@ 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() { +@@ -979,6 +979,11 @@ int App::StartServer() { delete [] args; + string xserver_ready = cfg->getOption("xserver_ready"); + if (xserver_ready != "") { ++ logStream << APPNAME << ": ServerPID=" << ServerPID << " execute " << xserver_ready << endl; + system(xserver_ready.c_str()); + } serverStarted = true; diff --git a/slim.conf b/slim.conf new file mode 100644 index 000000000000..a11545f62dda --- /dev/null +++ b/slim.conf @@ -0,0 +1,91 @@ +# Path, X server and arguments (if needed) +# Note: -xauth $authfile is automatically appended +default_path /usr/local/bin:/usr/local/sbin:/usr/bin +default_xserver /usr/bin/X +xserver_arguments -nolisten tcp vt07 + +# Commands for halt, login, etc. +halt_cmd /sbin/shutdown -h now +reboot_cmd /sbin/shutdown -r now +console_cmd /usr/bin/xterm -C -fg white -bg black +sb -T "Console login" -e /bin/sh -c "/bin/cat /etc/issue; exec /bin/login" +#suspend_cmd /usr/sbin/suspend + +# Full path to the xauth binary +xauth_path /usr/bin/xauth + +# Xauth file for server +authfile /var/run/slim.auth + + +# Activate numlock when slim starts. Valid values: on|off +# numlock on + +# Hide the mouse cursor (note: does not work with some WMs). +# Valid values: true|false +# hidecursor false + +# This command is executed after a succesful login. +# you can place the %session and %theme variables +# to handle launching of specific commands in .xinitrc +# depending of chosen session and slim theme +# +# NOTE: if your system does not have bash you need +# to adjust the command according to your preferred shell, +# i.e. for freebsd use: +# login_cmd exec /bin/sh - ~/.xinitrc %session +login_cmd exec /bin/bash -login ~/.xinitrc %session + +# Commands executed when starting and exiting a session. +# They can be used for registering a X11 session with +# sessreg. You can use the %user variable +# +# sessionstart_cmd some command +# sessionstop_cmd some command +#sessionstart_cmd /bin/sessreg -a -l $DISPLAY %user +#sessionstop_cmd /bin/sessreg -d -l $DISPLAY %user + +# Start in daemon mode. Valid values: yes | no +# Note that this can be overriden by the command line +# options "-d" and "-nodaemon" +# daemon yes + +# Set directory that contains the xsessions. +# slim reads xsesion from this directory, and be able to select. +#sessiondir /usr/share/xsessions/ +sessiondir /usr/share/slim/xsessions/ + +# Executed when pressing F11 (requires imagemagick) +screenshot_cmd import -window root /slim.png + +# welcome message. Available variables: %host, %domain +welcome_msg Welcome to %host + +# Session message. Prepended to the session name when pressing F1 +# session_msg Session: + +# shutdown / reboot messages +shutdown_msg The system is halting... +reboot_msg The system is rebooting... + +# default user, leave blank or remove this line +# for avoid pre-loading the username. +#default_user simone + +# Focus the password field on start when default_user is set +# Set to "yes" to enable this feature +#focus_password no + +# Automatically login the default user (without entering +# the password. Set to "yes" to enable this feature +#auto_login no + + +# current theme, use comma separated list to specify a set to +# randomly choose from +current_theme ROBIN + +# Lock file +lockfile /var/lock/slim.lock + +# Log file +logfile /var/log/slim.log diff --git a/slimlock.pam b/slimlock.pam new file mode 100644 index 000000000000..660b510bc393 --- /dev/null +++ b/slimlock.pam @@ -0,0 +1,3 @@ +#%PAM-1.0 + +auth include system-local-login |