From 61077b45cd6a144ea134d76956fa7d0dbd8d0fe5 Mon Sep 17 00:00:00 2001 From: David Woodfall Date: Fri, 23 Nov 2018 11:19:40 +0000 Subject: [PATCH] system/sddm: Update to 0.18.0 --- system/sddm/README | 2 + system/sddm/sddm.SlackBuild | 20 ++++-- system/sddm/sddm.conf.new | 129 ++++++++++++++++++++++++++++++++++++ system/sddm/sddm.info | 6 +- system/sddm/xsession.patch | 21 +++--- 5 files changed, 161 insertions(+), 17 deletions(-) create mode 100644 system/sddm/sddm.conf.new diff --git a/system/sddm/README b/system/sddm/README index 74b07415e2..48efe82f75 100644 --- a/system/sddm/README +++ b/system/sddm/README @@ -20,3 +20,5 @@ usermod -d /var/lib/sddm sddm when SDDM is *not* running. Do this before installing or upgrading the package. + +Note that this is fixed in -current. diff --git a/system/sddm/sddm.SlackBuild b/system/sddm/sddm.SlackBuild index 9507440021..1f1e73f547 100644 --- a/system/sddm/sddm.SlackBuild +++ b/system/sddm/sddm.SlackBuild @@ -22,7 +22,7 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PRGNAM=sddm -VERSION=${VERSION:-0.17.0} +VERSION=${VERSION:-0.18.0} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -53,6 +53,15 @@ else LIBDIRSUFFIX="" fi +if grep sddm /etc/passwd | grep "/var/empty"; then + printf "%s\n%s\n%s\n%s\n" \ + "It appears that SDDM's home is set to /var/empty in /etc/passwd." \ + "This needs to be changed to /var/lib/sddm." \ + "To do this, run: usermod -d /var/lib/sddm sddm" \ + "This installation will now terminate." + exit 1 +fi + set -e rm -rf $PKG @@ -70,7 +79,7 @@ find -L . \ patch -p1 --verbose < $CWD/consolekit.patch -# Fix so that SDDM doesn't run ~/.xsession +# Fix so that SDDM doesn't source ~/.xsession which breaks on some WMs patch -p1 --verbose < $CWD/xsession.patch mkdir -p build @@ -87,6 +96,9 @@ cd build make install DESTDIR=$PKG cd .. +mkdir -p $PKG/etc +cp $CWD/sddm.conf.new $PKG/etc + find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true @@ -96,10 +108,8 @@ cp -a \ $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild -mv $PKG/etc/sddm.conf $PKG/etc/sddm.conf.new - mkdir -p $PKG/var/lib/sddm -chown sddm:users $PKG/var/lib/sddm +chown sddm:sddm $PKG/var/lib/sddm mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc diff --git a/system/sddm/sddm.conf.new b/system/sddm/sddm.conf.new new file mode 100644 index 0000000000..b5b4e205e5 --- /dev/null +++ b/system/sddm/sddm.conf.new @@ -0,0 +1,129 @@ +[Autologin] +# Whether sddm should automatically log back into sessions when they exit +Relogin=false + +# Name of session file for autologin session (if empty try last logged in) +Session= + +# Username for autologin session +User= + + +[General] +# Halt command +HaltCommand=/sbin/shutdown -h -P now + +# Input method module +InputMethod= + +# Initial NumLock state. Can be on, off or none. +# If property is set to none, numlock won't be changed +# NOTE: Currently ignored if autologin is enabled. +Numlock=on + +# Reboot command +RebootCommand=/sbin/shutdown -r now + + +[Theme] +# Current theme name +Current=maya + +# Cursor theme used in the greeter +CursorTheme=Oxygen_White + +# Number of users to use as threshold +# above which avatars are disabled +# unless explicitly enabled with EnableAvatars +DisableAvatarsThreshold=7 + +# Enable display of custom user avatars +EnableAvatars= + +# Global directory for user avatars +# The files should be named .face.icon +FacesDir=/usr/share/sddm/faces + +# Theme directory path +ThemeDir=/usr/share/sddm/themes + + +[Users] +# Default $PATH for logged in users +DefaultPath=/bin:/usr/bin:/usr/local/bin + +# Comma-separated list of shells. +# Users with these shells as their default won't be listed +HideShells= + +# Comma-separated list of users that should not be listed +HideUsers= + +# Maximum user id for displayed users +MaximumUid=60000 + +# Minimum user id for displayed users +MinimumUid=1000 + +# Remember the session of the last successfully logged in user +RememberLastSession=true + +# Remember the last successfully logged in user +RememberLastUser=true + +# When logging in as the same user twice, restore the original session, rather than create a new one +ReuseSession=false + + +[Wayland] +# Enable Qt's automatic high-DPI scaling +EnableHiDPI=false + +# Path to a script to execute when starting the desktop session +SessionCommand=/usr/share/sddm/scripts/wayland-session + +# Directory containing available Wayland sessions +SessionDir=/usr/share/wayland-sessions + +# Path to the user session log file +SessionLogFile=.local/share/sddm/wayland-session.log + + +[X11] +# Path to a script to execute when starting the display server +DisplayCommand=/usr/share/sddm/scripts/Xsetup + +# Path to a script to execute when stopping the display server +DisplayStopCommand=/usr/share/sddm/scripts/Xstop + +# Enable Qt's automatic high-DPI scaling +EnableHiDPI=false + +# The lowest virtual terminal number that will be used. +MinimumVT=7 + +# Arguments passed to the X server invocation +ServerArguments=-nolisten tcp + +# Path to X server binary +ServerPath=/usr/bin/X + +# Path to a script to execute when starting the desktop session +SessionCommand=/usr/share/sddm/scripts/Xsession + +# Directory containing available X sessions +SessionDir=/usr/share/xsessions + +# Path to the user session log file +SessionLogFile=.local/share/sddm/xorg-session.log + +# Path to the Xauthority file +UserAuthFile=.Xauthority + +# Path to xauth binary +XauthPath=/usr/bin/xauth + +# Path to Xephyr binary +XephyrPath=/usr/bin/Xephyr + + diff --git a/system/sddm/sddm.info b/system/sddm/sddm.info index c94c106d40..81cb4edc2f 100644 --- a/system/sddm/sddm.info +++ b/system/sddm/sddm.info @@ -1,8 +1,8 @@ PRGNAM="sddm" -VERSION="0.17.0" +VERSION="0.18.0" HOMEPAGE="https://github.com/sddm/sddm" -DOWNLOAD="https://github.com/sddm/sddm/releases/download/v0.17.0/sddm-0.17.0.tar.gz" -MD5SUM="3e665c82e20d9aa4ab84376ed4a80adc" +DOWNLOAD="https://github.com/sddm/sddm/releases/download/v0.18.0/sddm-0.18.0.tar.gz" +MD5SUM="f8656aa61020c727b6925225fa681996" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="extra-cmake-modules qt5" diff --git a/system/sddm/xsession.patch b/system/sddm/xsession.patch index 5bef451944..457ba85ed0 100644 --- a/system/sddm/xsession.patch +++ b/system/sddm/xsession.patch @@ -1,22 +1,25 @@ diff -Naur a/data/scripts/Xsession b/data/scripts/Xsession ---- a/data/scripts/Xsession 2017-11-03 11:49:19.374409491 +0000 -+++ b/data/scripts/Xsession 2017-11-03 11:50:17.807893273 +0000 -@@ -67,7 +67,6 @@ +--- a/data/scripts/Xsession 2018-07-18 11:31:40.000000000 +0100 ++++ b/data/scripts/Xsession 2018-08-07 20:06:16.937412206 +0100 +@@ -68,6 +68,7 @@ # by the scripts to work xsessionddir="/etc/X11/Xsession.d" OPTIONFILE=/etc/X11/Xsession.options --USERXSESSION=$HOME/.xsession ++# This seems to break with some WMs + USERXSESSION=$HOME/.xsession USERXSESSIONRC=$HOME/.xsessionrc ALTUSERXSESSION=$HOME/.Xsession - -@@ -90,10 +89,6 @@ +@@ -91,9 +92,10 @@ fi [ -f $HOME/.Xresources ] && xrdb -merge $HOME/.Xresources -if [ -f "$USERXSESSION" ]; then - . "$USERXSESSION" -fi -- - if [ -z "$@" ]; then ++# This seems to break with some WMs ++#if [ -f "$USERXSESSION" ]; then ++# . "$USERXSESSION" ++#fi + + if [ -z "$*" ]; then exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session." - else