summaryrefslogtreecommitdiffstats
path: root/testing/source/vtown/kde/post-install
diff options
context:
space:
mode:
Diffstat (limited to 'testing/source/vtown/kde/post-install')
-rw-r--r--testing/source/vtown/kde/post-install/akonadi4.post-install5
-rw-r--r--testing/source/vtown/kde/post-install/audiocd-kio4.post-install6
-rw-r--r--testing/source/vtown/kde/post-install/breeze-grub.post-install3
-rw-r--r--testing/source/vtown/kde/post-install/dolphin.post-install14
-rw-r--r--testing/source/vtown/kde/post-install/elisa.post-install4
-rw-r--r--testing/source/vtown/kde/post-install/k3b.post-install2
-rw-r--r--testing/source/vtown/kde/post-install/kauth.post-install2
-rw-r--r--testing/source/vtown/kde/post-install/kdelibs.post-install2
-rw-r--r--testing/source/vtown/kde/post-install/kdelibs4support.post-install5
-rw-r--r--testing/source/vtown/kde/post-install/kdepim.post-install10
-rw-r--r--testing/source/vtown/kde/post-install/kdepimlibs4.post-install4
-rw-r--r--testing/source/vtown/kde/post-install/kdesu.post-install4
-rw-r--r--testing/source/vtown/kde/post-install/kinfocenter.post-install7
-rw-r--r--testing/source/vtown/kde/post-install/kinfocenter/blueSW-128px.pngbin0 -> 29903 bytes
-rw-r--r--testing/source/vtown/kde/post-install/kinfocenter/kcm-about-distrorc.ex5
-rw-r--r--testing/source/vtown/kde/post-install/kinfocenter/slackware_traditional_website_logo.pngbin0 -> 5585 bytes
-rw-r--r--testing/source/vtown/kde/post-install/konsole.post-install13
-rw-r--r--testing/source/vtown/kde/post-install/konsolepart4.post-install5
-rw-r--r--testing/source/vtown/kde/post-install/kscreenlocker.post-install4
-rw-r--r--testing/source/vtown/kde/post-install/kservice.post-install9
-rw-r--r--testing/source/vtown/kde/post-install/kservice/profile.d/kde.csh23
-rw-r--r--testing/source/vtown/kde/post-install/kservice/profile.d/kde.sh23
-rw-r--r--testing/source/vtown/kde/post-install/ktorrent.post-install4
-rw-r--r--testing/source/vtown/kde/post-install/kwallet.post-install2
-rw-r--r--testing/source/vtown/kde/post-install/kwalletmanager.post-install2
-rw-r--r--testing/source/vtown/kde/post-install/libksysguard.post-install4
-rw-r--r--testing/source/vtown/kde/post-install/nepomuk-core.post-install2
-rw-r--r--testing/source/vtown/kde/post-install/oktetapart4.post-install5
-rwxr-xr-xtesting/source/vtown/kde/post-install/oxygen-fonts.post-install5
-rw-r--r--testing/source/vtown/kde/post-install/plasma-desktop.post-install4
-rw-r--r--testing/source/vtown/kde/post-install/plasma-workspace.post-install51
-rw-r--r--testing/source/vtown/kde/post-install/plasma-workspace/pam.d/kde10
-rw-r--r--testing/source/vtown/kde/post-install/plasma-workspace/scripts/startkwayland4
-rw-r--r--testing/source/vtown/kde/post-install/plasma-workspace/xinit/xinitrc.kde33
-rw-r--r--testing/source/vtown/kde/post-install/plasma-workspace/xsession/plasma-safe.desktop9
-rw-r--r--testing/source/vtown/kde/post-install/polkit-kde-kcmodules-framework.post-install4
-rw-r--r--testing/source/vtown/kde/post-install/powerdevil.post-install30
-rw-r--r--testing/source/vtown/kde/post-install/powerdevil/10-enable-ck2-power.rules12
-rw-r--r--testing/source/vtown/kde/post-install/powerdevil/10-enable-elogind-power.rules12
-rw-r--r--testing/source/vtown/kde/post-install/powerdevil/10-enable-powerdevil-discrete-gpu.rules9
-rw-r--r--testing/source/vtown/kde/post-install/powerdevil/10-enable-upower-suspend.rules9
-rw-r--r--testing/source/vtown/kde/post-install/sddm-kcm.post-install4
-rw-r--r--testing/source/vtown/kde/post-install/sddm.post-install49
-rw-r--r--testing/source/vtown/kde/post-install/sddm/pam.d/sddm26
-rw-r--r--testing/source/vtown/kde/post-install/sddm/pam.d/sddm-autologin25
-rw-r--r--testing/source/vtown/kde/post-install/sddm/pam.d/sddm-greeter19
-rw-r--r--testing/source/vtown/kde/post-install/wicd-kde.post-install2
47 files changed, 486 insertions, 0 deletions
diff --git a/testing/source/vtown/kde/post-install/akonadi4.post-install b/testing/source/vtown/kde/post-install/akonadi4.post-install
new file mode 100644
index 000000000..6115cf392
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/akonadi4.post-install
@@ -0,0 +1,5 @@
+# Remove files that clash with the Frameworks version of akonadi;
+# we need only the barebones of the old akonadi 0.x for kdepimlibs4:
+#rm -r $PKG/usr/{bin,share}
+rm -r $PKG/usr/bin
+
diff --git a/testing/source/vtown/kde/post-install/audiocd-kio4.post-install b/testing/source/vtown/kde/post-install/audiocd-kio4.post-install
new file mode 100644
index 000000000..ec32ab188
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/audiocd-kio4.post-install
@@ -0,0 +1,6 @@
+# These are provided by audiocd-kio and not needed in the kdelibs4 based pkg:
+rm -r $PKG/usr/include
+rm -r $PKG/usr/share/config.kcfg
+# Remove symlink shared with KF5 based pkg:
+rm $PKG/usr/lib${LIBDIRSUFFIX}/libaudiocdplugins.so
+
diff --git a/testing/source/vtown/kde/post-install/breeze-grub.post-install b/testing/source/vtown/kde/post-install/breeze-grub.post-install
new file mode 100644
index 000000000..ed723c2cc
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/breeze-grub.post-install
@@ -0,0 +1,3 @@
+# Install the GRUB theme:
+mkdir -p $PKG/boot/grub/themes
+ cp -r breeze $PKG/boot/grub/themes/
diff --git a/testing/source/vtown/kde/post-install/dolphin.post-install b/testing/source/vtown/kde/post-install/dolphin.post-install
new file mode 100644
index 000000000..8b0f9e142
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/dolphin.post-install
@@ -0,0 +1,14 @@
+# Add a 'run dolphin as root' menu entry:
+mkdir -p $PKG/usr/share/applications
+cat <<EOT > $PKG/usr/share/applications/org.kde.dolphinsu.desktop
+[Desktop Entry]
+Name=File Manager - Super User Mode
+Exec=dbus-launch dolphin -qwindowtitle "%c" "%u"
+Icon=system-file-manager
+Type=Application
+X-DocPath=dolphin/index.html
+Categories=Qt;KDE;System;FileManager;
+Terminal=false
+MimeType=inode/directory;
+X-KDE-SubstituteUID=true
+EOT
diff --git a/testing/source/vtown/kde/post-install/elisa.post-install b/testing/source/vtown/kde/post-install/elisa.post-install
new file mode 100644
index 000000000..93d9424fd
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/elisa.post-install
@@ -0,0 +1,4 @@
+# Create a symlink in /usr/lib$LIBDIRSUFFIX to the elisa library:
+mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}
+( cd $PKG/usr/lib${LIBDIRSUFFIX} ; ln -s elisa/libelisaLib.so.0 )
+
diff --git a/testing/source/vtown/kde/post-install/k3b.post-install b/testing/source/vtown/kde/post-install/k3b.post-install
new file mode 100644
index 000000000..881011489
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/k3b.post-install
@@ -0,0 +1,2 @@
+# Move the dbus configuration files to the proper place:
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
diff --git a/testing/source/vtown/kde/post-install/kauth.post-install b/testing/source/vtown/kde/post-install/kauth.post-install
new file mode 100644
index 000000000..9239a3e5f
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kauth.post-install
@@ -0,0 +1,2 @@
+# Move the polkit dbus configuration files to the proper place:
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
diff --git a/testing/source/vtown/kde/post-install/kdelibs.post-install b/testing/source/vtown/kde/post-install/kdelibs.post-install
new file mode 100644
index 000000000..9239a3e5f
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kdelibs.post-install
@@ -0,0 +1,2 @@
+# Move the polkit dbus configuration files to the proper place:
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
diff --git a/testing/source/vtown/kde/post-install/kdelibs4support.post-install b/testing/source/vtown/kde/post-install/kdelibs4support.post-install
new file mode 100644
index 000000000..c91513e94
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kdelibs4support.post-install
@@ -0,0 +1,5 @@
+# This file causes errors in lots of packages, like:
+# "no rule to make target ../po/it/PO_FILES"
+# (now fixed with a patch)
+#mv $PKG/usr/lib$LIBDIRSUFFIX/cmake/KF5KDELibs4Support/FindGettext.cmake{,.fail}
+
diff --git a/testing/source/vtown/kde/post-install/kdepim.post-install b/testing/source/vtown/kde/post-install/kdepim.post-install
new file mode 100644
index 000000000..c9cc6ce3c
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kdepim.post-install
@@ -0,0 +1,10 @@
+# Move the dbus configuration files to the proper place:
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
+
+# Kalarm should not start in XFCE:
+if ! grep -q "OnlyShowIn=KDE;" \
+ $PKG/etc/kde/xdg/autostart/kalarm.autostart.desktop ; then
+ echo "OnlyShowIn=KDE;" \
+ >> $PKG/etc/kde/xdg/autostart/kalarm.autostart.desktop
+fi
+
diff --git a/testing/source/vtown/kde/post-install/kdepimlibs4.post-install b/testing/source/vtown/kde/post-install/kdepimlibs4.post-install
new file mode 100644
index 000000000..0cd6c30a3
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kdepimlibs4.post-install
@@ -0,0 +1,4 @@
+# Remove files that clash with the Frameworks version of kdepimlibs:
+rm -r $PKG/usr/bin
+rm -r $PKG/usr/share/akonadi
+rm -r $PKG/usr/share/config.kcfg
diff --git a/testing/source/vtown/kde/post-install/kdesu.post-install b/testing/source/vtown/kde/post-install/kdesu.post-install
new file mode 100644
index 000000000..52402f52c
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kdesu.post-install
@@ -0,0 +1,4 @@
+# Create a symlink in /usr/bin to the KF5 kdesu binary
+mkdir -p $PKG/usr/bin
+( cd $PKG/usr/bin ; ln -s /usr/lib${LIBDIRSUFFIX}/kf5/kdesu kdesu )
+
diff --git a/testing/source/vtown/kde/post-install/kinfocenter.post-install b/testing/source/vtown/kde/post-install/kinfocenter.post-install
new file mode 100644
index 000000000..71a1efb71
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kinfocenter.post-install
@@ -0,0 +1,7 @@
+# Configure about-distro:
+mkdir -p $PKG/etc/kde/xdg
+# http://www.slackware.com/grfx/shared/slackware_traditional_website_logo.png
+# http://www.slackware.com/~alien/liveslak/blueSW-128px.png
+install -m0644 -o root $CWD/post-install/kinfocenter/blueSW-128px.png $PKG/etc/kde/xdg/slackware_logo.png
+install -m0644 -o root $CWD/post-install/kinfocenter/kcm-about-distrorc.ex $PKG/etc/kde/xdg/kcm-about-distrorc
+
diff --git a/testing/source/vtown/kde/post-install/kinfocenter/blueSW-128px.png b/testing/source/vtown/kde/post-install/kinfocenter/blueSW-128px.png
new file mode 100644
index 000000000..7eea5a2cd
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kinfocenter/blueSW-128px.png
Binary files differ
diff --git a/testing/source/vtown/kde/post-install/kinfocenter/kcm-about-distrorc.ex b/testing/source/vtown/kde/post-install/kinfocenter/kcm-about-distrorc.ex
new file mode 100644
index 000000000..636a331db
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kinfocenter/kcm-about-distrorc.ex
@@ -0,0 +1,5 @@
+[General]
+LogoPath=/etc/kde/xdg/slackware_logo.png
+Website=http://www.slackware.com/
+Variant=Post 14.2 -current\n(packages by AlienBOB)
+
diff --git a/testing/source/vtown/kde/post-install/kinfocenter/slackware_traditional_website_logo.png b/testing/source/vtown/kde/post-install/kinfocenter/slackware_traditional_website_logo.png
new file mode 100644
index 000000000..f60082b3b
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kinfocenter/slackware_traditional_website_logo.png
Binary files differ
diff --git a/testing/source/vtown/kde/post-install/konsole.post-install b/testing/source/vtown/kde/post-install/konsole.post-install
new file mode 100644
index 000000000..6104e9f2f
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/konsole.post-install
@@ -0,0 +1,13 @@
+# "konsole -ls" is no longer valid syntax for konsole, even though it's
+# still documented in the help manual. Here's a way to get the same
+# thing, and it works here, but I honestly don't know how it will act
+# everywhere with every shell. I just know it works with bash and ksh
+# Removed in KDE 4.9.4 package because it does not work:
+#sed -i -e 's/^Exec=konsole/Exec=konsole -e $SHELL -l/' \
+# $PKG/usr/share/applications/kde4/konsole.desktop
+
+## I find this a little bit too bright... <change by pjv>
+## Change the konsole defaults to look like the real Linux console:
+#sed -i 's/ColorScheme=Linux/ColorScheme=WhiteOnBlack/' \
+# $PKG/usr/share/apps/konsole/Shell.profile
+
diff --git a/testing/source/vtown/kde/post-install/konsolepart4.post-install b/testing/source/vtown/kde/post-install/konsolepart4.post-install
new file mode 100644
index 000000000..8345463ce
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/konsolepart4.post-install
@@ -0,0 +1,5 @@
+# These are provided by konsole and not needed in the KDE4 component:
+rm -r $PKG/usr/{bin,share/applications}
+rm -r $PKG/usr/share/doc/HTML
+rm $PKG/usr/lib${LIBDIRSUFFIX}/libkdeinit4_konsole.so
+
diff --git a/testing/source/vtown/kde/post-install/kscreenlocker.post-install b/testing/source/vtown/kde/post-install/kscreenlocker.post-install
new file mode 100644
index 000000000..203cff041
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kscreenlocker.post-install
@@ -0,0 +1,4 @@
+if [ "$SLACKPAM" == "no" ]; then
+ # For shadow, this file needs to be setuid root:
+ chmod +s $PKG/usr/lib$LIBDIRSUFFIX/kcheckpass
+fi
diff --git a/testing/source/vtown/kde/post-install/kservice.post-install b/testing/source/vtown/kde/post-install/kservice.post-install
new file mode 100644
index 000000000..a014f3ba3
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kservice.post-install
@@ -0,0 +1,9 @@
+# Add profile scripts
+mkdir -p $PKG/etc/profile.d
+cat $CWD/post-install/kservice/profile.d/kde.sh \
+ | sed -e "s#/lib/#/lib${LIBDIRSUFFIX}/#g" \
+ > $PKG/etc/profile.d/kde.sh
+cat $CWD/post-install/kservice/profile.d/kde.csh \
+ | sed -e "s#/lib/#/lib${LIBDIRSUFFIX}/#g" \
+ > $PKG/etc/profile.d/kde.csh
+chmod 0755 $PKG/etc/profile.d/*
diff --git a/testing/source/vtown/kde/post-install/kservice/profile.d/kde.csh b/testing/source/vtown/kde/post-install/kservice/profile.d/kde.csh
new file mode 100644
index 000000000..cce370cc9
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kservice/profile.d/kde.csh
@@ -0,0 +1,23 @@
+#!/bin/csh
+# KDE additions:
+if ( ! $?KDEDIRS ) then
+ setenv KDEDIRS /usr
+endif
+setenv PATH ${PATH}:/usr/lib/kf5:/usr/lib/kde4/libexec
+
+if ( $?XDG_CONFIG_DIRS ) then
+ setenv XDG_CONFIG_DIRS ${XDG_CONFIG_DIRS}:/etc/kde/xdg
+else
+ setenv XDG_CONFIG_DIRS /etc/xdg:/etc/kde/xdg
+endif
+
+if ( ! $?XDG_RUNTIME_DIR ) then
+ # Using /run/user would be more in line with XDG specs, but in that case
+ # we should mount /run as tmpfs and add this to the Slackware rc scripts:
+ # mkdir /run/user ; chmod 1777 /run/user
+ # setenv XDG_RUNTIME_DIR /run/user/$USER
+ setenv XDG_RUNTIME_DIR /tmp/xdg-runtime-$USER
+ mkdir -p $XDG_RUNTIME_DIR
+ chown $USER $XDG_RUNTIME_DIR
+ chmod 700 $XDG_RUNTIME_DIR
+endif
diff --git a/testing/source/vtown/kde/post-install/kservice/profile.d/kde.sh b/testing/source/vtown/kde/post-install/kservice/profile.d/kde.sh
new file mode 100644
index 000000000..9448c34ef
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kservice/profile.d/kde.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+# KDE additions:
+KDEDIRS=/usr
+export KDEDIRS
+PATH="$PATH:/usr/lib/kf5:/usr/lib/kde4/libexec"
+export PATH
+if [ ! "$XDG_CONFIG_DIRS" = "" ]; then
+ XDG_CONFIG_DIRS=$XDG_CONFIG_DIRS:/etc/kde/xdg
+else
+ XDG_CONFIG_DIRS=/etc/xdg:/etc/kde/xdg
+fi
+if [ "$XDG_RUNTIME_DIR" = "" ]; then
+ # Using /run/user would be more in line with XDG specs, but in that case
+ # we should mount /run as tmpfs and add this to the Slackware rc scripts:
+ # mkdir /run/user ; chmod 1777 /run/user
+ # XDG_RUNTIME_DIR=/run/user/$USER
+ XDG_RUNTIME_DIR=/tmp/xdg-runtime-$USER
+ mkdir -p $XDG_RUNTIME_DIR
+ chown $USER $XDG_RUNTIME_DIR
+ chmod 700 $XDG_RUNTIME_DIR
+fi
+export XDG_CONFIG_DIRS XDG_RUNTIME_DIR
+
diff --git a/testing/source/vtown/kde/post-install/ktorrent.post-install b/testing/source/vtown/kde/post-install/ktorrent.post-install
new file mode 100644
index 000000000..7e0c13031
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/ktorrent.post-install
@@ -0,0 +1,4 @@
+# Install a private copy of the GeoIP database, now that the online version
+# has been discontinued:
+mkdir -p $PKG/usr/share/apps/ktorrent/GeoIP
+zcat $CWD/patch/ktorrent/geoip.dat.gz > $PKG/usr/share/apps/ktorrent/GeoIP/geoip.dat
diff --git a/testing/source/vtown/kde/post-install/kwallet.post-install b/testing/source/vtown/kde/post-install/kwallet.post-install
new file mode 100644
index 000000000..9239a3e5f
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kwallet.post-install
@@ -0,0 +1,2 @@
+# Move the polkit dbus configuration files to the proper place:
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
diff --git a/testing/source/vtown/kde/post-install/kwalletmanager.post-install b/testing/source/vtown/kde/post-install/kwalletmanager.post-install
new file mode 100644
index 000000000..9239a3e5f
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/kwalletmanager.post-install
@@ -0,0 +1,2 @@
+# Move the polkit dbus configuration files to the proper place:
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
diff --git a/testing/source/vtown/kde/post-install/libksysguard.post-install b/testing/source/vtown/kde/post-install/libksysguard.post-install
new file mode 100644
index 000000000..10b156d72
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/libksysguard.post-install
@@ -0,0 +1,4 @@
+# Move the polkit dbus configuration files to the proper place:
+mkdir -p $PKG/etc
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
+
diff --git a/testing/source/vtown/kde/post-install/nepomuk-core.post-install b/testing/source/vtown/kde/post-install/nepomuk-core.post-install
new file mode 100644
index 000000000..881011489
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/nepomuk-core.post-install
@@ -0,0 +1,2 @@
+# Move the dbus configuration files to the proper place:
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
diff --git a/testing/source/vtown/kde/post-install/oktetapart4.post-install b/testing/source/vtown/kde/post-install/oktetapart4.post-install
new file mode 100644
index 000000000..262be1a7e
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/oktetapart4.post-install
@@ -0,0 +1,5 @@
+# These are provided by okteta and not needed in the KDE4 component:
+rm -r $PKG/usr/bin
+rm -r $PKG/usr/share/doc
+rm -r $PKG/usr/share/{appdata,config.kcfg,icons,mime}
+
diff --git a/testing/source/vtown/kde/post-install/oxygen-fonts.post-install b/testing/source/vtown/kde/post-install/oxygen-fonts.post-install
new file mode 100755
index 000000000..300b6c5a0
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/oxygen-fonts.post-install
@@ -0,0 +1,5 @@
+# Install fonts:
+FONTSDIR=/usr/share/fonts/TTF/oxygen
+mkdir -p $PKG/$FONTSDIR
+find . -name "*.ttf" -exec install -m644 {} $PKG/$FONTSDIR \;
+
diff --git a/testing/source/vtown/kde/post-install/plasma-desktop.post-install b/testing/source/vtown/kde/post-install/plasma-desktop.post-install
new file mode 100644
index 000000000..10b156d72
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/plasma-desktop.post-install
@@ -0,0 +1,4 @@
+# Move the polkit dbus configuration files to the proper place:
+mkdir -p $PKG/etc
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
+
diff --git a/testing/source/vtown/kde/post-install/plasma-workspace.post-install b/testing/source/vtown/kde/post-install/plasma-workspace.post-install
new file mode 100644
index 000000000..65d727fcb
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/plasma-workspace.post-install
@@ -0,0 +1,51 @@
+
+# Use ck-launch-session in runlevel 3 if that is available,
+# to start and attach a ConsoleKit session to the X session:
+mkdir -p $PKG/etc/X11/xinit
+cat $CWD/post-install/plasma-workspace/xinit/xinitrc.kde \
+ | sed -e "s/@LIBDIRSUFFIX@/$LIBDIRSUFFIX/g" \
+ > $PKG/etc/X11/xinit/xinitrc.kde
+chmod 0755 $PKG/etc/X11/xinit/xinitrc.kde
+
+# Add a script that launches a Plasma Wayland session from the commandline:
+mkdir -p $PKG/usr/bin
+cat $CWD/post-install/plasma-workspace/scripts/startkwayland \
+ | sed -e "s/@LIBDIRSUFFIX@/$LIBDIRSUFFIX/g" \
+ > $PKG/usr/bin/startkwayland
+chmod 0755 $PKG/usr/bin/startkwayland
+
+# Add a "fail-safe" version of KDE Plasma desktop session.
+# Prefix the name with "z_" because SDDM is braindead:
+mkdir -p $PKG/usr/share/xsessions
+cat $CWD/post-install/plasma-workspace/xsession/plasma-safe.desktop \
+ | sed -e "s,@PREFIX@,/usr,g" \
+ > $PKG/usr/share/xsessions/z_plasma-safe.desktop
+
+# What is "plugins/plugins"?
+mv $PKG/usr/lib$LIBDIRSUFFIX/qt5/plugins/{plugins,}/phonon_platform
+rmdir $PKG/usr/lib$LIBDIRSUFFIX/qt5/plugins/plugins
+
+# Move the polkit dbus configuration files to the proper place:
+mkdir -p $PKG/etc
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
+
+if [ "$SLACKPAM" == "no" ]; then
+ # For shadow, this file needs to be setuid root just like the KDE4 version:
+ if [ -f $PKG/usr/lib$LIBDIRSUFFIX/kcheckpass ]; then
+ chmod +s $PKG/usr/lib$LIBDIRSUFFIX/kcheckpass
+ fi
+
+ # ck-launch-session is needed for a Wayland session, since we do not have PAM:
+ sed -e 's/^Exec=dbus-launch/Exec=ck-launch-session dbus-launch --sh-syntax/' \
+ -i $PKG/usr/share/wayland-sessions/plasmawayland.desktop
+else
+ # Install a PAM file for Plasma5 workspace:
+ install -Dm644 $CWD/post-install/plasma-workspace/pam.d/kde $PKG/etc/pam.d/kde
+fi
+
+if [ "$SLKELOGIND" == "yes" ]; then
+ # Since elogind does not set DBUS_SESSION_BUS_ADDRESS we need to start
+ # Plasma X11 session through dbus-run-session like Wayland is launched:
+ sed -i $PKG/usr/share/xsessions/plasma.desktop \
+ -e "s,^Exec=/,Exec=dbus-run-session /,"
+fi
diff --git a/testing/source/vtown/kde/post-install/plasma-workspace/pam.d/kde b/testing/source/vtown/kde/post-install/plasma-workspace/pam.d/kde
new file mode 100644
index 000000000..50e0f53d2
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/plasma-workspace/pam.d/kde
@@ -0,0 +1,10 @@
+#%PAM-1.0
+auth include system-auth
+auth include postlogin
+account include system-auth
+password include system-auth
+session include system-auth
+session required pam_loginuid.so
+-session optional pam_ck_connector.so nox11
+-session optional pam_elogind.so
+session include postlogin
diff --git a/testing/source/vtown/kde/post-install/plasma-workspace/scripts/startkwayland b/testing/source/vtown/kde/post-install/plasma-workspace/scripts/startkwayland
new file mode 100644
index 000000000..2d8cf55b3
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/plasma-workspace/scripts/startkwayland
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+# Start KWin as a Plasma 5 Wayland session
+dbus-launch --sh-syntax --exit-with-session /usr/bin/startplasma-wayland
diff --git a/testing/source/vtown/kde/post-install/plasma-workspace/xinit/xinitrc.kde b/testing/source/vtown/kde/post-install/plasma-workspace/xinit/xinitrc.kde
new file mode 100644
index 000000000..b0a920f58
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/plasma-workspace/xinit/xinitrc.kde
@@ -0,0 +1,33 @@
+#!/bin/sh
+# $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $
+
+userresources=$HOME/.Xresources
+usermodmap=$HOME/.Xmodmap
+sysresources=/etc/X11/xinit/.Xresources
+sysmodmap=/etc/X11/xinit/.Xmodmap
+
+# merge in defaults and keymaps
+
+if [ -f $sysresources ]; then
+ xrdb -merge $sysresources
+fi
+
+if [ -f $sysmodmap ]; then
+ xmodmap $sysmodmap
+fi
+
+if [ -f $userresources ]; then
+ xrdb -merge $userresources
+fi
+
+if [ -f $usermodmap ]; then
+ xmodmap $usermodmap
+fi
+
+# Start the window manager:
+if [ -z "$DESKTOP_SESSION" -a -x /usr/bin/ck-launch-session ]; then
+ ck-launch-session dbus-launch --sh-syntax --exit-with-session startplasma-x11
+else
+ dbus-launch --sh-syntax --exit-with-session startplasma-x11
+fi
+
diff --git a/testing/source/vtown/kde/post-install/plasma-workspace/xsession/plasma-safe.desktop b/testing/source/vtown/kde/post-install/plasma-workspace/xsession/plasma-safe.desktop
new file mode 100644
index 000000000..e166414fa
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/plasma-workspace/xsession/plasma-safe.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Encoding=UTF-8
+Type=XSession
+Exec=dbus-run-session /usr/bin/startplasma-x11 --failsafe
+TryExec=/usr/bin/startplasma-x11
+DesktopNames=KDE
+Name=Plasma (Failsafe)
+Comment=Plasma by KDE (Failsafe)
+
diff --git a/testing/source/vtown/kde/post-install/polkit-kde-kcmodules-framework.post-install b/testing/source/vtown/kde/post-install/polkit-kde-kcmodules-framework.post-install
new file mode 100644
index 000000000..10b156d72
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/polkit-kde-kcmodules-framework.post-install
@@ -0,0 +1,4 @@
+# Move the polkit dbus configuration files to the proper place:
+mkdir -p $PKG/etc
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
+
diff --git a/testing/source/vtown/kde/post-install/powerdevil.post-install b/testing/source/vtown/kde/post-install/powerdevil.post-install
new file mode 100644
index 000000000..4d6b9f836
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/powerdevil.post-install
@@ -0,0 +1,30 @@
+# Move the polkit dbus configuration files to the proper place:
+mkdir -p $PKG/etc
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
+
+mkdir -p $PKG/etc/polkit-1/rules.d
+
+# Add upower policy allowing users in the 'power' group
+# to suspend/hibernate the computer:
+install -m 0644 -o root \
+ $CWD/post-install/powerdevil/10-enable-upower-suspend.rules \
+ $PKG/etc/polkit-1/rules.d/10-enable-upower-suspend.rules.new
+
+if [ "$SLKELOGIND" == "no" ]; then
+ # Add ConsoleKit2 policy file that allows users in the 'power' group
+ # to shutdown/reboot the computer:
+ install -m 0644 -o root \
+ $CWD/post-install/powerdevil/10-enable-ck2-power.rules \
+ $PKG/etc/polkit-1/rules.d/10-enable-session-power.rules.new
+else
+ # Add login1 policy file that allows users in the 'power' group
+ # to shutdown/reboot the computer:
+ install -m 0644 -o root \
+ $CWD/post-install/powerdevil/10-enable-elogind-power.rules \
+ $PKG/etc/polkit-1/rules.d/10-enable-session-power.rules.new
+ # Add powerdevil policy file that allows users in the 'power' group
+ # to check for existence of a discrete gpu:
+ install -m 0644 -o root \
+ $CWD/post-install/powerdevil/10-enable-powerdevil-discrete-gpu.rules \
+ $PKG/etc/polkit-1/rules.d/10-enable-powerdevil-discrete-gpu.rules.new
+fi
diff --git a/testing/source/vtown/kde/post-install/powerdevil/10-enable-ck2-power.rules b/testing/source/vtown/kde/post-install/powerdevil/10-enable-ck2-power.rules
new file mode 100644
index 000000000..2a8a5a70b
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/powerdevil/10-enable-ck2-power.rules
@@ -0,0 +1,12 @@
+polkit.addRule(
+ function(action, subject) {
+ if ( (action.id == "org.freedesktop.consolekit.system.restart" ||
+ action.id == "org.freedesktop.consolekit.system.restart-multiple-users" ||
+ action.id == "org.freedesktop.consolekit.system.stop" ||
+ action.id == "org.freedesktop.consolekit.system.stop-multiple-users")
+ && subject.isInGroup("power") ) {
+ return polkit.Result.YES;
+ }
+ }
+);
+
diff --git a/testing/source/vtown/kde/post-install/powerdevil/10-enable-elogind-power.rules b/testing/source/vtown/kde/post-install/powerdevil/10-enable-elogind-power.rules
new file mode 100644
index 000000000..db4992062
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/powerdevil/10-enable-elogind-power.rules
@@ -0,0 +1,12 @@
+polkit.addRule(
+ function(action, subject) {
+ if ( (action.id == "org.freedesktop.login1.reboot" ||
+ action.id == "org.freedesktop.login1.reboot-multiple-sessions" ||
+ action.id == "org.freedesktop.login1.power-off" ||
+ action.id == "org.freedesktop.login1.power-off-multiple-sessions")
+ && subject.isInGroup("power") ) {
+ return polkit.Result.YES;
+ }
+ }
+);
+
diff --git a/testing/source/vtown/kde/post-install/powerdevil/10-enable-powerdevil-discrete-gpu.rules b/testing/source/vtown/kde/post-install/powerdevil/10-enable-powerdevil-discrete-gpu.rules
new file mode 100644
index 000000000..f001848e4
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/powerdevil/10-enable-powerdevil-discrete-gpu.rules
@@ -0,0 +1,9 @@
+polkit.addRule(
+ function(action, subject) {
+ if ( action.id == "org.kde.powerdevil.discretegpuhelper.hasdualgpu" &&
+ subject.isInGroup("power") ) {
+ return polkit.Result.YES;
+ }
+ }
+);
+
diff --git a/testing/source/vtown/kde/post-install/powerdevil/10-enable-upower-suspend.rules b/testing/source/vtown/kde/post-install/powerdevil/10-enable-upower-suspend.rules
new file mode 100644
index 000000000..4bccfb014
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/powerdevil/10-enable-upower-suspend.rules
@@ -0,0 +1,9 @@
+polkit.addRule(
+ function(action, subject) {
+ if ( (action.id == "org.freedesktop.upower.suspend" ||
+ action.id == "org.freedesktop.upower.hibernate")
+ && subject.isInGroup("power") ) {
+ return polkit.Result.YES;
+ }
+ }
+);
diff --git a/testing/source/vtown/kde/post-install/sddm-kcm.post-install b/testing/source/vtown/kde/post-install/sddm-kcm.post-install
new file mode 100644
index 000000000..10b156d72
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/sddm-kcm.post-install
@@ -0,0 +1,4 @@
+# Move the polkit dbus configuration files to the proper place:
+mkdir -p $PKG/etc
+mv $PKG/etc/kde/dbus-1 $PKG/etc/
+
diff --git a/testing/source/vtown/kde/post-install/sddm.post-install b/testing/source/vtown/kde/post-install/sddm.post-install
new file mode 100644
index 000000000..3d168b14f
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/sddm.post-install
@@ -0,0 +1,49 @@
+if [ "$SLACKPAM" == "no" ]; then
+ # Remove PAM related stuff:
+ rm -rf $PKG/etc/pam.d
+else
+ # Replace systemd-centric files with ours:
+ rm -f $PKG/etc/pam.d/sddm*
+ for FILE in sddm sddm-autologin sddm-greeter ; do
+ install -Dm644 $CWD/post-install/sddm-qt5/pam.d/$FILE $PKG/etc/pam.d/$FILE
+ done
+fi
+
+# Remove the sddm.conf file because we will generate our own in doinst.sh:
+rm -f $PKG/etc/sddm.conf
+
+# Make sure that Plasma and SDDM work on older GPUs,
+# by forcing Qt5 to use software GL rendering:
+cat <<"EOGL" >> $PKG/usr/share/sddm/scripts/Xsetup
+
+# Make sure that Plasma and SDDM work on older GPUs,
+# by forcing Qt5 to use software GL rendering:
+OPENGL_VERSION=$(LANG=C glxinfo |grep '^OpenGL version string: ' |head -n 1 |sed -e 's/^OpenGL version string: \([0-9]\).*$/\1/g')
+if [ "$OPENGL_VERSION" -lt 2 ]; then
+ QT_XCB_FORCE_SOFTWARE_OPENGL=1
+ export QT_XCB_FORCE_SOFTWARE_OPENGL
+fi
+EOGL
+
+# Ensure that user customizations to the session files are not lost:
+mv $PKG/usr/share/sddm/scripts/Xsession{,.new}
+mv $PKG/usr/share/sddm/scripts/Xsetup{,.new}
+mv $PKG/usr/share/sddm/scripts/Xstop{,.new}
+mv $PKG/usr/share/sddm/scripts/wayland-session{,.new}
+
+# Add a wrapper for the sddm binary, to enable a custom environment:
+mv $PKG/usr/bin/sddm $PKG/usr/bin/sddm.bin
+cat <<"EOT" > $PKG/usr/bin/sddm
+#!/bin/sh
+# Customized environment (LANG definition):
+if [ -f /etc/default/sddm ]; then
+ . /etc/default/sddm
+fi
+/usr/bin/sddm.bin "$*"
+EOT
+chmod 0755 $PKG/usr/bin/sddm
+
+# Let's also add an example customization (localization of the UI):
+mkdir -p $PKG/etc/default
+echo ". /etc/profile.d/lang.sh" > $PKG/etc/default/sddm.new
+
diff --git a/testing/source/vtown/kde/post-install/sddm/pam.d/sddm b/testing/source/vtown/kde/post-install/sddm/pam.d/sddm
new file mode 100644
index 000000000..df016a7ec
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/sddm/pam.d/sddm
@@ -0,0 +1,26 @@
+#%PAM-1.0
+
+auth substack system-auth
+
+# Uncomment this line to restrict login to users with a UID greater
+# than 999 (in other words, don't allow login for root):
+#auth required pam_succeed_if.so uid >= 1000 quiet
+
+-auth optional pam_gnome_keyring.so
+-auth optional pam_kwallet5.so
+auth include postlogin
+
+account include system-auth
+
+password substack system-auth
+-password optional pam_gnome_keyring.so use_authtok
+-password optional pam_kwallet5.so use_authtok
+
+session optional pam_keyinit.so force revoke
+session substack system-auth
+session required pam_loginuid.so
+-session optional pam_ck_connector.so nox11
+-session optional pam_elogind.so
+-session optional pam_gnome_keyring.so auto_start
+-session optional pam_kwallet5.so auto_start
+session include postlogin
diff --git a/testing/source/vtown/kde/post-install/sddm/pam.d/sddm-autologin b/testing/source/vtown/kde/post-install/sddm/pam.d/sddm-autologin
new file mode 100644
index 000000000..360239544
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/sddm/pam.d/sddm-autologin
@@ -0,0 +1,25 @@
+#%PAM-1.0
+auth requisite pam_nologin.so
+auth required pam_env.so
+auth required pam_shells.so
+
+# Uncomment this line to restrict autologin to users with a UID greater
+# than 999 (in other words, don't allow autologin for root):
+#auth required pam_succeed_if.so uid >= 1000 quiet
+
+auth required pam_permit.so
+-auth optional pam_gnome_keyring.so
+-auth optional pam_kwallet5.so
+
+account include system-auth
+
+password include system-auth
+
+session substack system-auth
+session required pam_loginuid.so
+-session optional pam_ck_connector.so nox11
+-session optional pam_elogind.so
+-session optional pam_gnome_keyring.so auto_start
+-session optional pam_kwallet5.so auto_start
+session include postlogin
+
diff --git a/testing/source/vtown/kde/post-install/sddm/pam.d/sddm-greeter b/testing/source/vtown/kde/post-install/sddm/pam.d/sddm-greeter
new file mode 100644
index 000000000..fe30e60c2
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/sddm/pam.d/sddm-greeter
@@ -0,0 +1,19 @@
+#%PAM-1.0
+
+# Load environment from /etc/environment and ~/.pam_environment
+auth required pam_env.so
+
+# Always let the greeter start without authentication
+auth required pam_permit.so
+
+# No action required for account management
+account required pam_permit.so
+
+# Can't change password
+password required pam_deny.so
+
+# Setup session
+session required pam_unix.so
+-session optional pam_systemd.so
+-session optional pam_ck_connector.so nox11
+-session optional pam_elogind.so
diff --git a/testing/source/vtown/kde/post-install/wicd-kde.post-install b/testing/source/vtown/kde/post-install/wicd-kde.post-install
new file mode 100644
index 000000000..881011489
--- /dev/null
+++ b/testing/source/vtown/kde/post-install/wicd-kde.post-install
@@ -0,0 +1,2 @@
+# Move the dbus configuration files to the proper place:
+mv $PKG/etc/kde/dbus-1 $PKG/etc/