Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save AccaliaDeElementia/5855066cea67152e6085fa24f0b74616 to your computer and use it in GitHub Desktop.
Save AccaliaDeElementia/5855066cea67152e6085fa24f0b74616 to your computer and use it in GitHub Desktop.
Install streamdeck-ui with pinned pillow pending resolution of the Pillow10 breakage by maintainer or fork
#!/bin/bash
mkdir -p ~/.local/streamdeck/
cd ~/.local/streamdeck/
python -m venv app
cd app/
source bin/activate
python -m pip install pillow==9.5
python -m pip install streamdeck-ui
deactivate
cd ..
cat << EOF > streamdeck.sh
#!/bin/bash
cd "\$(dirname "\$(readlink -f "\${BASH_SOURCE[0]}")")"
source app/bin/activate
./app/bin/streamdeck \$1
EOF
chmod +x streamdeck.sh
curl https://raw.githubusercontent.com/timothycrosley/streamdeck-ui/master/art/logo.png -o logo.png
cat << EOF > ~/.local/share/applications/Streamdeck\ UI.desktop
[Desktop Entry]
Comment=Application used to configure Elgato Stream Deck products
Exec=/bin/bash '${HOME}/.local/streamdeck/streamdeck.sh'
Icon=${HOME}/.local/streamdeck/logo.png
Name=Streamdeck UI
NoDisplay=false
Path=${HOME}/.local/streamdeck/
StartupNotify=true
Terminal=false
TerminalOptions=
Type=Application
X-KDE-SubstituteUID=false
X-KDE-Username=
EOF
update-desktop-database ~/.local/share/applications
read -p "Install autostart XDG entry? (y/N)" -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]
then
cat << EOF > ~/.config/autostart/Streamdeck\ UI.desktop
[Desktop Entry]
Comment=Application used to configure Elgato Stream Deck products
Exec=/bin/bash '${HOME}/.local/streamdeck/streamdeck.sh -n'
Icon=${HOME}/.local/streamdeck/logo.png
Name=Streamdeck UI
NoDisplay=false
Path=${HOME}/.local/streamdeck/
StartupNotify=true
Terminal=false
TerminalOptions=
Type=Application
X-KDE-SubstituteUID=false
X-KDE-Username=
EOF
update-desktop-database ~/.config/autostart
fi
echo 'DONE!'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment