#!/bin/bash set -e if type update-alternatives >/dev/null 2>&1; then # Remove previous link if it doesn't use update-alternatives if [ -L '/usr/bin/clash-party' ] && [ -e '/usr/bin/clash-party' ] && [ "$(readlink '/usr/bin/clash-party')" != '/etc/alternatives/clash-party' ]; then rm -f '/usr/bin/clash-party' fi update-alternatives --install '/usr/bin/clash-party' 'clash-party' '/opt/clash-party/mihomo-party' 100 || ln -sf '/opt/clash-party/mihomo-party' '/usr/bin/clash-party' else ln -sf '/opt/clash-party/mihomo-party' '/usr/bin/clash-party' fi chmod 4755 '/opt/clash-party/chrome-sandbox' 2>/dev/null || true chmod +sx /opt/clash-party/resources/sidecar/mihomo 2>/dev/null || true chmod +sx /opt/clash-party/resources/sidecar/mihomo-alpha 2>/dev/null || true chmod +sx /opt/clash-party/resources/sidecar/mihomo-smart 2>/dev/null || true if hash update-mime-database 2>/dev/null; then update-mime-database /usr/share/mime || true fi if hash update-desktop-database 2>/dev/null; then update-desktop-database /usr/share/applications || true fi # Update icon cache for GNOME/GTK environments if hash gtk-update-icon-cache 2>/dev/null; then for dir in /usr/share/icons/hicolor /usr/share/icons/gnome; do [ -d "$dir" ] && gtk-update-icon-cache -f -t "$dir" 2>/dev/null || true done fi # Refresh GNOME Shell icon cache if hash update-icon-caches 2>/dev/null; then update-icon-caches /usr/share/icons/* 2>/dev/null || true fi