aboutsummaryrefslogtreecommitdiff
path: root/system/sddm
diff options
context:
space:
mode:
Diffstat (limited to 'system/sddm')
-rw-r--r--system/sddm/README11
-rw-r--r--system/sddm/doinst.sh11
-rw-r--r--system/sddm/sddm.SlackBuild8
-rw-r--r--system/sddm/xsession.patch22
4 files changed, 50 insertions, 2 deletions
diff --git a/system/sddm/README b/system/sddm/README
index b16bdbaf0d004..f31e540f47a06 100644
--- a/system/sddm/README
+++ b/system/sddm/README
@@ -4,9 +4,18 @@ which in turn gives the designer the ability to create smooth,
animated user interfaces.
You will need to edit /etc/rc.d/rc.4 to get this work.
-Put the section that refers to sddm before the others:
+Put the section that refers to sddm before the sections for xdm, kdm
+etc:
# Look for SDDM as well:
if [ -x /usr/bin/sddm ]; then
exec /usr/bin/sddm
fi
+
+Note: The home for SDDM is set by default in /etc/passwd as
+/var/empty. This ought to be changed to /var/lib/sddm. To do this,
+run:
+
+usermod -d /var/lib/sddm sddm
+
+when SDDM is *not* running.
diff --git a/system/sddm/doinst.sh b/system/sddm/doinst.sh
index c5a2478d2b271..8133e45f74944 100644
--- a/system/sddm/doinst.sh
+++ b/system/sddm/doinst.sh
@@ -12,3 +12,14 @@ config() {
}
config etc/sddm.conf.new
+
+if [ -n "$(grep sddm etc/passwd | grep var/empty)" ]; then
+ echo "*NOTICE*"
+ echo
+ echo 'SDDM $HOME is set to /var/empty in /etc/passwd'
+ echo "This needs to be changed to /var/lib/sddm"
+ echo
+ echo "Please run:"
+ echo "usermod -d /var/lib/sddm sddm"
+ echo
+fi
diff --git a/system/sddm/sddm.SlackBuild b/system/sddm/sddm.SlackBuild
index c74771be5cbaa..f21cdad6fc9a5 100644
--- a/system/sddm/sddm.SlackBuild
+++ b/system/sddm/sddm.SlackBuild
@@ -23,7 +23,7 @@
PRGNAM=sddm
VERSION=${VERSION:-0.16.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -70,6 +70,9 @@ find -L . \
patch -p1 --verbose < $CWD/consolekit.patch
+# Fix so that SDDM doesn't run ~/.xsession
+patch -p1 --verbose < $CWD/xsession.patch
+
mkdir -p build
cd build
cmake \
@@ -95,6 +98,9 @@ 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
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
diff --git a/system/sddm/xsession.patch b/system/sddm/xsession.patch
new file mode 100644
index 0000000000000..5bef451944fe2
--- /dev/null
+++ b/system/sddm/xsession.patch
@@ -0,0 +1,22 @@
+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 @@
+ # by the scripts to work
+ xsessionddir="/etc/X11/Xsession.d"
+ OPTIONFILE=/etc/X11/Xsession.options
+-USERXSESSION=$HOME/.xsession
+ USERXSESSIONRC=$HOME/.xsessionrc
+ ALTUSERXSESSION=$HOME/.Xsession
+
+@@ -90,10 +89,6 @@
+ fi
+ [ -f $HOME/.Xresources ] && xrdb -merge $HOME/.Xresources
+
+-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