summaryrefslogtreecommitdiff
path: root/usr/bin/phosh-session
diff options
context:
space:
mode:
Diffstat (limited to 'usr/bin/phosh-session')
-rwxr-xr-xusr/bin/phosh-session57
1 files changed, 57 insertions, 0 deletions
diff --git a/usr/bin/phosh-session b/usr/bin/phosh-session
new file mode 100755
index 00000000..4e7af764
--- /dev/null
+++ b/usr/bin/phosh-session
@@ -0,0 +1,57 @@
+#!/bin/sh
+
+COMPOSITOR="/usr/bin/phoc"
+PHOC_INI="/usr/share/phosh/phoc.ini"
+GNOME_SESSION=${GNOME_SESSION:-gnome-session}
+
+help()
+{
+ cat <<EOF
+phosh-session - Session start script for Phosh
+
+This is usually invoked by a display manager but you can
+also run it from a tty.
+
+Usage: phosh
+EOF
+ exit 0
+}
+
+
+version()
+{
+ echo "0.37.0"
+ exit 0
+}
+
+case "$1" in
+ -h|-\?|--help)
+ help
+ ;;
+ --version)
+ version
+ ;;
+esac
+
+if [ -x /usr/bin/phoc ]; then
+ COMPOSITOR=/usr/bin/phoc
+fi
+
+ROOTSTON_INI=/etc/phosh/rootston.ini
+if [ -f /etc/phosh/phoc.ini ]; then
+ PHOC_INI=/etc/phosh/phoc.ini
+elif [ -f "${ROOTSTON_INI}" ]; then
+ echo "WARN: Deprecated ${ROOTSTON_INI} detected - please rename to phoc.ini"
+ PHOC_INI="${ROOTSTON_INI}"
+fi
+
+if [ -f "$HOME/.phoshdebug" ]; then
+ echo "WARN: .phoshdebug found."
+ . "$HOME/.phoshdebug"
+fi
+
+# Run gnome-session through a login shell so it picks
+# variables from /etc/profile.d (XDG_*)
+[ -n "$WLR_BACKENDS" ] || WLR_BACKENDS=drm,libinput
+export WLR_BACKENDS
+exec "${COMPOSITOR}" -S -C "${PHOC_INI}" -E "bash -lc 'exec ${GNOME_SESSION} --disable-acceleration-check --session=phosh --systemd'"