#!/usr/bin/env bash set -e USER_NAME="apulkin" FIREFOX_KEYRING="/etc/apt/keyrings/packages.mozilla.org.asc" MOZILLA_LIST="/etc/apt/sources.list.d/mozilla.list" MOZILLA_PREF="/etc/apt/preferences.d/mozilla" KEYRING_URL="https://packages.mozilla.org/apt/repo-signing-key.gpg" PACKAGES=( sudo sysstat guvcview net-tools thunderbird nnn build-essential remmina remmina-plugin-python remmina-plugin-x2go remmina-plugin-rdp qbittorrent mc vlc wireguard wireguard-tools cifs-utils autofs open-iscsi libavcodec-extra smbldap-tools network-manager-l2tp tilix unzip keepassxc default-jdk icedtea-netx sshpass smplayer gimp wireshark mplayer kdeconnect pdfarranger pwgen curl evolution mpv simplescreenrecorder iftop debian-keyring p7zip qt6-base-dev-tools manpages-ru network-manager-openvpn gwenview libgtk2.0-0 printer-driver-splix isoimagewriter kdiskmark krita openshot-qt shotcut trippy linux-headers-$(uname -r) desktop-file-utils apt-transport-https git syncthing kdenlive ) base() { sudo usermod -aG sudo "$USER_NAME" sudo chown "$USER_NAME":root /opt/ } packages() { sudo apt update sudo apt install -y "${PACKAGES[@]}" } firefox() { echo "Adding Mozilla signing key..." sudo install -d -m 0755 /etc/apt/keyrings wget -q "$KEYRING_URL" -O- | sudo tee "$FIREFOX_KEYRING" >/dev/null echo "Adding Mozilla repo..." echo "deb [signed-by=$FIREFOX_KEYRING] https://packages.mozilla.org/apt mozilla main" \ | sudo tee "$MOZILLA_LIST" >/dev/null echo -e "Package: *\nPin: origin packages.mozilla.org\nPin-Priority: 1000" \ | sudo tee "$MOZILLA_PREF" >/dev/null sudo apt update sudo apt install -y firefox firefox-l10n-ru } qtfix() { sudo ln -sf /usr/bin/qtpaths6 /usr/bin/qtpaths } winbox() { wget -O /tmp/WinBox_Linux.zip \ https://download.mikrotik.com/routeros/winbox/4.1/WinBox_Linux.zip sudo mkdir -p /opt/winbox sudo unzip -o /tmp/WinBox_Linux.zip -d /opt/winbox/ sudo ln -sf /opt/winbox/WinBox /usr/bin/WinBox } matrix() { sudo wget -O /usr/share/keyrings/element-io-archive-keyring.gpg \ https://packages.element.io/debian/element-io-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/element-io-archive-keyring.gpg] https://packages.element.io/debian/ default main" \ | sudo tee /etc/apt/sources.list.d/element-io.list sudo apt update sudo apt install -y element-desktop } brave() { curl -fsS https://dl.brave.com/install.sh | sh } codium() { wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg \ | gpg --dearmor \ | sudo dd of=/usr/share/keyrings/vscodium-archive-keyring.gpg echo 'deb [signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg] https://download.vscodium.com/debs vscodium main' \ | sudo tee /etc/apt/sources.list.d/vscodium.list sudo apt update sudo apt install -y codium } syncthing() { systemctl --user enable --now syncthing.service } telegram() { wget -O /tmp/telegram.tar.xz https://telegram.org/dl/desktop/linux tar -xf /tmp/telegram.tar.xz -C /tmp sudo mv /tmp/Telegram /opt/telegram sudo ln -sf /opt/telegram/Telegram /usr/bin/telegram } menu() { PS3="Выбери действие: " options=( "base" "packages" "firefox" "qtfix" "winbox" "matrix" "brave" "codium" "syncthing" "telegram" "all" "exit" ) select opt in "${options[@]}"; do case "$opt" in base|packages|firefox|qtfix|winbox|matrix|brave|codium|syncthing|telegram) "$opt" ;; all) base packages firefox qtfix winbox matrix brave codium syncthing telegram ;; exit) break ;; *) echo "Неверный выбор" ;; esac done } menu