mirror of
https://git.bs.b-eit.de/bucde/notes.git
synced 2024-11-22 02:13:07 +01:00
67 lines
1.8 KiB
Bash
Executable File
67 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
echo "##########################################################################################"
|
|
echo "# install script for qtile window manager"
|
|
echo "# Dennis Buchhorn - code@b-eit.de"
|
|
echo "##########################################################################################"
|
|
echo ""
|
|
|
|
if ! [[ $(id -u) == "0" ]]; then
|
|
echo "The script need to be run as root!" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [[ $SUDO_USER ]]; then
|
|
REAL_USER=$SUDO_USER
|
|
else
|
|
REAL_USER=$(whoami)
|
|
fi
|
|
|
|
for ARG in "$@"; do
|
|
if [[ $ARG == "--repo-dir="* ]]; then
|
|
REPO_DIR=$(echo $ARG | cut -c 12-)
|
|
fi
|
|
done
|
|
|
|
## copied from https://github.com/JerrySM64/Qtile-Debian/blob/main/qtile-setup.sh
|
|
|
|
# Remove the EXTERNALLY-MANAGED file so pip works again
|
|
rm /usr/lib/python3.11/EXTERNALLY-MANAGED
|
|
|
|
# Install the full python 3 suite, pip, git and all dependencies
|
|
apt update
|
|
apt install python3-full python3-pip libpangocairo-1.0-0 python3-cffi python3-xcffib git -y
|
|
|
|
# Install cairocffi using pip
|
|
sudo -u $REAL_USER pip install --no-cache-dir cairocffi
|
|
|
|
if [[ $REPO_DIR == "" ]]; then
|
|
REPO_DIR="/home/$REAL_USER/qtile"
|
|
fi
|
|
|
|
sudo -u $REAL_USER mkdir -p $REPO_DIR
|
|
|
|
sudo -u $REAL_USER git clone https://github.com/qtile/qtile.git "$REPO_DIR"
|
|
cd "$REPO_DIR"
|
|
sudo -u $REAL_USER pip install .
|
|
|
|
# Create xsessions desktop file
|
|
tee << EOF /usr/share/xsessions/qtile.desktop > /dev/null
|
|
[Desktop Entry]
|
|
Name=Qtile
|
|
Comment=Qtile Session
|
|
Type=Application
|
|
Keywords=wm;tiling
|
|
Exec=/home/$REAL_USER/.local/bin/qtile start
|
|
EOF
|
|
|
|
# Create config for using qtile as xrdp desktop session and loading pulseaudio modules for xrdp
|
|
sudo -u $REAL_USER tee -a << EOF /home/$REAL_USER/.profile > /dev/null
|
|
|
|
## start preferred desktop environment via xrdp
|
|
[ -n "\$XRDP_SESSION" ] && export DESKTOP_SESSION=qtile
|
|
|
|
## load pulseaudio modules for xrdp
|
|
/usr/libexec/pulseaudio-module-xrdp/load_pa_modules.sh
|
|
EOF
|