Files
BackTunnel/scripts/install.sh

56 lines
2.5 KiB
Bash

#!/usr/bin/env bash
# Copyright (c) 2025. LUXIM d.o.o., Slovenia - Matjaž Mozetič.
set -euo pipefail
# Install binaries
echo "📦 Installing BackTunnel binaries to /usr/local/bin..."
sudo install -m 0755 scripts/backtunnel-share /usr/local/bin/backtunnel-share
sudo install -m 0755 scripts/backtunnel-access /usr/local/bin/backtunnel-access
# Man page
echo "📚 Installing man page..."
sudo install -m 0644 man/backtunnel.1 /usr/local/share/man/man1/backtunnel.1 || true
sudo mandb || true
# Bash completions
if [[ -d /usr/share/bash-completion/completions ]]; then
echo "🧠 Installing bash completion ..."
sudo install -m 0644 completions/backtunnel.bash /usr/share/bash-completion/completions/backtunnel-share || true
sudo install -m 0644 completions/backtunnel.bash /usr/share/bash-completion/completions/backtunnel-access || true
elif [[ -d /etc/bash_completion.d ]]; then
echo "🧠 Installing bash completion ..."
sudo install -m 0644 completions/backtunnel.bash /etc/bash_completion.d/backtunnel || true
fi
# Dolphin service menus (Plasma 6)
if [[ -d /usr/share/kio/servicemenus ]]; then
echo "🖱️ Installing Dolphin service menus (Plasma 6)..."
sudo install -m 0644 servicemenus/backtunnel_share.desktop /usr/share/kio/servicemenus/backtunnel_share.desktop || true
sudo install -m 0644 servicemenus/backtunnel_access.desktop /usr/share/kio/servicemenus/backtunnel_access.desktop || true
fi
# Dolphin service menus (Plasma 5)
if [[ -d /usr/share/kservices5/ServiceMenus ]]; then
echo "🖱️ Installing Dolphin service menus (Plasma 5)..."
sudo install -m 0644 servicemenus/backtunnel_share.desktop /usr/share/kservices5/ServiceMenus/backtunnel_share.desktop || true
sudo install -m 0644 servicemenus/backtunnel_access.desktop /usr/share/kservices5/ServiceMenus/backtunnel_access.desktop || true
fi
# Desktop launcher (optional)
if [[ -d /usr/share/applications ]]; then
echo "🖥️ Installing desktop launcher ..."
sudo install -m 0644 desktop/backtunnel.desktop /usr/share/applications/backtunnel.desktop || true
fi
# Refresh desktop DB and KDE service cache (best-effort)
command -v update-desktop-database >/dev/null 2>&1 && sudo update-desktop-database -q || true
if command -v kbuildsycoca6 >/dev/null 2>&1; then
kbuildsycoca6 --noincremental >/dev/null 2>&1 || true
elif command -v kbuildsycoca5 >/dev/null 2>&1; then
kbuildsycoca5 --noincremental >/dev/null 2>&1 || true
fi
echo "✅ BackTunnel installed. You may need to restart your shell and Dolphin."