#!/usr/bin/env bash # =========================================================================== # Stage 12: Other Applications # Depends on: stage 01 (repos), stage 02 (packages) # Chrome, Signal, Zotero, Obsidian, Nextcloud client, FreeRDP. # Distro-agnostic — uses pkg_install / Flatpak / tarball. # =========================================================================== # ---- Google Chrome ---- info "Installing Google Chrome..." pkg_install google-chrome-stable 2>/dev/null && ok "Chrome installed." \ || warn "Chrome not available. Install from https://www.google.com/chrome/" # ---- Signal Desktop ---- info "Installing Signal Desktop..." pkg_install signal-desktop 2>/dev/null && ok "Signal installed." \ || warn "Signal not available. Check repo in stage 01." # ---- Zotero (reference manager) ---- info "Installing Zotero..." if command -v zotero &>/dev/null || flatpak list 2>/dev/null | grep -qi "zotero"; then ok "Zotero already installed." elif command -v flatpak &>/dev/null; then flatpak install -y flathub org.zotero.Zotero 2>/dev/null && ok "Zotero installed via Flatpak." \ || warn "Zotero Flatpak failed. Try manual tarball from zotero.org." else warn "Zotero not installed. Get it from https://www.zotero.org/download/" fi # ---- Obsidian (knowledge base) ---- info "Installing Obsidian..." if command -v obsidian &>/dev/null || flatpak list 2>/dev/null | grep -qi "obsidian"; then ok "Obsidian already installed." elif command -v flatpak &>/dev/null; then flatpak install -y flathub md.obsidian.Obsidian 2>/dev/null && ok "Obsidian installed." \ || warn "Obsidian Flatpak failed. Download from https://obsidian.md/" else warn "Obsidian not installed." fi # ---- Nextcloud Desktop Client ---- info "Installing Nextcloud Desktop Client..." if [ "$DISTRO_FAMILY" = "debian" ]; then pkg_install nextcloud-desktop 2>/dev/null && ok "Nextcloud client installed." || \ warn "Nextcloud client not available." else pkg_install nextcloud-client 2>/dev/null && ok "Nextcloud client installed." || \ warn "Nextcloud client not available." fi # ---- FreeRDP (for WinBoat RDP) ---- info "Installing FreeRDP (Flatpak)..." if command -v flatpak &>/dev/null; then flatpak install -y flathub com.freerdp.FreeRDP 2>/dev/null && ok "FreeRDP installed." \ || warn "FreeRDP Flatpak failed." fi ok "Stage 12 complete: additional applications installed."