Files
bananarchy/overlay/rootfs/usr/bin/bananarchy-x11-session.sh
T

85 lines
3.6 KiB
Bash
Executable File

#!/bin/sh
export HOME="${HOME:-/home/user}"
export XDG_RUNTIME_DIR="${XDG_RUNTIME_DIR:-/run/user/10000}"
export XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}"
export XDG_CACHE_HOME="${XDG_CACHE_HOME:-$HOME/.cache}"
export XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
export XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}"
export XDG_DATA_DIRS="${XDG_DATA_DIRS:-/usr/local/share:/usr/share}"
export SXMO_CACHEDIR="${SXMO_CACHEDIR:-$XDG_CACHE_HOME/sxmo}"
export SXMO_BLOCKDIR="${SXMO_BLOCKDIR:-$XDG_DATA_HOME/sxmo/block}"
export SXMO_BLOCKFILE="${SXMO_BLOCKFILE:-$XDG_CONFIG_HOME/sxmo/block.tsv}"
export SXMO_CONTACTFILE="${SXMO_CONTACTFILE:-$XDG_CONFIG_HOME/sxmo/contacts.tsv}"
export SXMO_STATE="${SXMO_STATE:-$XDG_RUNTIME_DIR/sxmo.state}"
export SXMO_LOGDIR="${SXMO_LOGDIR:-$XDG_DATA_HOME/sxmo/modem}"
export SXMO_NOTIFDIR="${SXMO_NOTIFDIR:-$XDG_DATA_HOME/sxmo/notifications}"
export DISPLAY=:0
export SXMO_WM=dwm
export SXMO_MENU=dmenu
export SXMO_TERMINAL=st
export EDITOR=nano
export VISUAL=nano
export PAGER="less -RXF"
export LESS="-RXF"
export TERM=xterm-256color
export CHARSET=UTF-8
export LANG=C.UTF-8
export LC_ALL=C.UTF-8
export LC_COLLATE=C.UTF-8
export SXMO_DISABLE_LEDS=1
export SXMO_NO_VIRTUAL_KEYBOARD=1
export NO_AT_BRIDGE=1
export GTK_A11Y=none
export GTK_USE_PORTAL=0
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
if [ -d /home/user/.local/x11 ]; then
export FCITX_ADDON_DIRS=/home/user/.local/lib/fcitx5:/home/user/.local/x11:/usr/lib/fcitx5
export LD_LIBRARY_PATH=/tmp/x11/usr/lib:/usr/lib:/lib
export PATH=/home/user/.local/bin:/home/user/.config/sxmo/hooks:/tmp/x11/usr/bin:/usr/share/sxmo/default_hooks:/usr/local/bin:/usr/bin:/bin:/sbin:/usr/sbin
rm -rf /tmp/x11
ln -s /home/user/.local/x11 /tmp/x11
cp -f /home/user/.local/x11/xorg-bananarchy.conf /tmp/xorg-bananarchy.conf 2>/dev/null || true
else
export FCITX_ADDON_DIRS=/home/user/.local/lib/fcitx5:/usr/lib/fcitx5
export PATH=/home/user/.local/bin:/home/user/.config/sxmo/hooks:/usr/share/sxmo/default_hooks:/usr/local/bin:/usr/bin:/bin:/sbin:/usr/sbin
cp -f /etc/X11/xorg.conf.d/10-bananarchy-msm8909.conf /tmp/xorg-bananarchy.conf 2>/dev/null || true
fi
unset WAYLAND_DISPLAY
unset SWAYSOCK
mkdir -p "$XDG_RUNTIME_DIR"
[ -n "${DBUS_SESSION_BUS_ADDRESS:-}" ] && printf "%s\n" "$DBUS_SESSION_BUS_ADDRESS" > "$XDG_RUNTIME_DIR/dbus.bus"
printf "unlock\n" > "$XDG_RUNTIME_DIR/sxmo.state"
printf "14" > /tmp/sxmo_saved_brightness
printf "14" > /sys/class/backlight/backlight/brightness 2>/dev/null || true
printf "255" > /sys/class/leds/white:kbd_backlight/brightness 2>/dev/null || true
XORG_BIN="Xorg"
[ -x /tmp/x11/usr/bin/Xorg ] && XORG_BIN="/tmp/x11/usr/bin/Xorg"
XORG_MODPATH="/usr/lib/xorg/modules/xlibre-25,/usr/lib/xorg/modules"
[ -d /tmp/x11/usr/lib/xorg/modules ] && XORG_MODPATH="/tmp/x11/usr/lib/xorg/modules/xlibre-25,/tmp/x11/usr/lib/xorg/modules"
if ! pidof -s Xorg >/dev/null 2>&1; then
"$XORG_BIN" :0 -nocursor -nolisten tcp -config /tmp/xorg-bananarchy.conf -modulepath "$XORG_MODPATH" -logfile /tmp/Xorg.0.log >/dev/null 2>&1 </dev/null &
i=0
while [ "$i" -lt 40 ]; do
if xset s off -dpms >/dev/null 2>&1; then
break
fi
sleep 0.05
i=$((i + 1))
done
fi
xrdb -merge "$HOME/.Xresources" >/dev/null 2>&1 || true
feh --bg-fill /usr/share/wallpapers/bananarchy.png >/dev/null 2>&1 </dev/null &
pidof -s conky >/dev/null 2>&1 || CONKY_DPY=:0 conky -c /home/user/.config/sxmo/conky.conf -d >/dev/null 2>&1 </dev/null || true
pidof -s fcitx5 >/dev/null 2>&1 || fcitx5 -d >/tmp/fcitx5.log 2>&1 </dev/null &
sxmo_hook_start.sh >/tmp/sxmo_hook_start.log 2>&1 </dev/null &
exec dwm >/tmp/dwm.log 2>&1