mirror of
https://github.com/stornic56/debianito-post-install.git
synced 2026-07-16 05:49:49 +00:00
Add files via upload
This commit is contained in:
@@ -0,0 +1,181 @@
|
||||
#!/usr/bin/env bash
|
||||
# internet.sh — Browsers, email, VPN (was _cat_browsers, now includes riseup-vpn)
|
||||
|
||||
_cat_internet() {
|
||||
local headless=false
|
||||
_is_headless && headless=true
|
||||
local chromium_state; chromium_state=$(_state "chromium")
|
||||
local dillo_state; dillo_state=$(_state "dillo")
|
||||
local elinks_state; elinks_state=$(_state "elinks")
|
||||
local epiphany_state; epiphany_state=$(_state "epiphany-browser")
|
||||
local falkon_state; falkon_state=$(_state "falkon")
|
||||
local firefox_state="OFF"
|
||||
if command -v firefox &>/dev/null && ! command -v firefox-esr &>/dev/null; then
|
||||
firefox_state="ON"
|
||||
fi
|
||||
local floorp_state; floorp_state=$(_state "floorp")
|
||||
local konqueror_state; konqueror_state=$(_state "konqueror")
|
||||
local librewolf_state; librewolf_state=$(_state "librewolf")
|
||||
local privacybrowser_state; privacybrowser_state=$(_state "privacybrowser")
|
||||
local qutebrowser_state; qutebrowser_state=$(_state "qutebrowser")
|
||||
local riseupvpn_state; riseupvpn_state=$(_state "riseup-vpn")
|
||||
local thunderbird_state; thunderbird_state=$(_state "thunderbird")
|
||||
local torbrowser_state; torbrowser_state=$(_state "torbrowser-launcher")
|
||||
local w3m_state; w3m_state=$(_state "w3m")
|
||||
|
||||
local choices
|
||||
choices=$(whiptail --title "Internet" --checklist \
|
||||
"Select browsers, email, and VPN tools:" $TUI_ALTO $TUI_ANCHO $TUI_ALTO_LISTA \
|
||||
"chromium" "Chromium web browser$(_inst chromium)" "$chromium_state" \
|
||||
"dillo" "Lightweight graphical browser$(_inst dillo)" "$dillo_state" \
|
||||
"elinks" "Text-mode web browser$(_inst elinks)" "$elinks_state" \
|
||||
"epiphany-browser" "GNOME web browser$(_inst epiphany-browser)" "$epiphany_state" \
|
||||
"falkon" "KDE web browser (QtWebEngine)$(_inst falkon)" "$falkon_state" \
|
||||
"firefox" "Firefox from Mozilla (replaces ESR)" "$firefox_state" \
|
||||
"floorp" "Firefox-based browser (external repo)" "$floorp_state" \
|
||||
"konqueror" "KDE file manager / web browser$(_inst konqueror)" "$konqueror_state" \
|
||||
"librewolf" "Privacy-focused Firefox fork$(_inst librewolf)" "$librewolf_state" \
|
||||
"privacybrowser" "Privacy-focused web browser$(_inst privacybrowser)" "$privacybrowser_state" \
|
||||
"qutebrowser" "Keyboard-driven browser (Qt)$(_inst qutebrowser)" "$qutebrowser_state" \
|
||||
"riseup-vpn" "Riseup VPN client$(_inst riseup-vpn)" "$riseupvpn_state" \
|
||||
"thunderbird" "Email client$(_inst thunderbird)" "$thunderbird_state" \
|
||||
"torbrowser-launcher" "Tor Browser launcher$(_inst torbrowser-launcher)" "$torbrowser_state" \
|
||||
"w3m" "Text-mode browser + deps (w3m-img)$(_inst w3m)" "$w3m_state" \
|
||||
3>&1 1>&2 2>&3)
|
||||
clear
|
||||
|
||||
[ -z "$choices" ] && return
|
||||
|
||||
local cleaned; cleaned=$(echo "$choices" | tr -d '"')
|
||||
|
||||
for pkg in $cleaned; do
|
||||
case $pkg in
|
||||
firefox)
|
||||
install_firefox_mozilla
|
||||
;;
|
||||
floorp)
|
||||
if ! is_installed "floorp"; then
|
||||
echo "Setting up Floorp repository..."
|
||||
! is_installed "curl" && _run_install curl
|
||||
! is_installed "gpg" && _run_install gpg
|
||||
sudo install -d -m 0755 /etc/apt/keyrings
|
||||
curl -fsSL https://ppa.floorp.app/KEY.gpg | \
|
||||
sudo gpg --dearmor -o /usr/share/keyrings/Floorp.gpg
|
||||
sudo curl -sS --compressed -o /etc/apt/sources.list.d/Floorp.list \
|
||||
'https://ppa.floorp.app/Floorp.list'
|
||||
sudo tee /etc/apt/preferences.d/floorp > /dev/null << EOF
|
||||
Package: *
|
||||
Pin: origin ppa.floorp.app
|
||||
Pin-Priority: 1000
|
||||
EOF
|
||||
_run_cmd "APT Update" "sudo apt update" "Updating package lists..."
|
||||
_run_install floorp
|
||||
echo -e "${GREEN}Floorp installed.${NC}"
|
||||
else
|
||||
echo "Floorp already installed."
|
||||
fi
|
||||
;;
|
||||
librewolf)
|
||||
if ! is_installed "librewolf"; then
|
||||
echo "Installing LibreWolf..."
|
||||
install_backports_or_stable extrepo
|
||||
sudo extrepo enable librewolf 2>/dev/null || true
|
||||
_run_cmd "APT Update" "sudo apt update" "Updating package lists..."
|
||||
_run_install librewolf
|
||||
echo -e "${GREEN}LibreWolf installed.${NC}"
|
||||
else
|
||||
echo "LibreWolf already installed."
|
||||
fi
|
||||
;;
|
||||
riseup-vpn)
|
||||
install_backports_or_stable riseup-vpn
|
||||
;;
|
||||
w3m)
|
||||
local need=()
|
||||
! is_installed "w3m" && need+=("w3m")
|
||||
! is_installed "w3m-img" && need+=("w3m-img")
|
||||
! is_installed "ca-certificates" && need+=("ca-certificates")
|
||||
! is_installed "xsel" && need+=("xsel")
|
||||
if [ ${#need[@]} -gt 0 ]; then
|
||||
_run_install_batch w3m w3m-img ca-certificates xsel
|
||||
else
|
||||
echo "w3m already installed."
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
if $headless; then
|
||||
echo "Skipping $pkg (headless mode)"
|
||||
continue
|
||||
fi
|
||||
if ! is_installed "$pkg"; then
|
||||
_run_install "$pkg"
|
||||
else
|
||||
echo "$pkg already installed."
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
echo -e "${GREEN}Internet tools installed.${NC}"
|
||||
}
|
||||
|
||||
install_firefox_mozilla() {
|
||||
if command -v firefox &>/dev/null && ! command -v firefox-esr &>/dev/null; then
|
||||
echo "Firefox (Mozilla) is already installed."
|
||||
return
|
||||
fi
|
||||
|
||||
echo "Setting up Mozilla APT repository for Firefox..."
|
||||
|
||||
if is_installed "firefox-esr"; then
|
||||
if _confirm "Firefox ESR" "Firefox ESR is installed.\nRemove it before installing Mozilla Firefox?"; then
|
||||
echo "Removing Firefox ESR..."
|
||||
sudo apt remove -y firefox-esr
|
||||
else
|
||||
echo "Keeping Firefox ESR."
|
||||
fi
|
||||
fi
|
||||
|
||||
! is_installed "wget" && _run_install wget
|
||||
! is_installed "gpg" && _run_install gpg
|
||||
|
||||
sudo install -d -m 0755 /etc/apt/keyrings
|
||||
|
||||
wget -q https://packages.mozilla.org/apt/repo-signing-key.gpg -O- | \
|
||||
sudo tee /etc/apt/keyrings/packages.mozilla.org.asc > /dev/null
|
||||
|
||||
local fp
|
||||
fp=$(gpg -n -q --import --import-options import-show \
|
||||
/etc/apt/keyrings/packages.mozilla.org.asc 2>/dev/null | \
|
||||
awk '/pub/{getline; gsub(/^ +| +$/,""); print}')
|
||||
if [ "$fp" != "35BAA0B33E9EB396F59CA838C0BA5CE6DC6315A3" ]; then
|
||||
echo -e "${YELLOW}Warning: Mozilla key fingerprint does not match expected value.${NC}"
|
||||
fi
|
||||
|
||||
local use_deb822=false
|
||||
[ -f /etc/apt/sources.list.d/debian.sources ] && use_deb822=true
|
||||
|
||||
if $use_deb822; then
|
||||
sudo tee /etc/apt/sources.list.d/mozilla.sources > /dev/null << EOF
|
||||
Types: deb
|
||||
URIs: https://packages.mozilla.org/apt
|
||||
Suites: mozilla
|
||||
Components: main
|
||||
Signed-By: /etc/apt/keyrings/packages.mozilla.org.asc
|
||||
EOF
|
||||
else
|
||||
echo "deb [signed-by=/etc/apt/keyrings/packages.mozilla.org.asc] https://packages.mozilla.org/apt mozilla main" | \
|
||||
sudo tee /etc/apt/sources.list.d/mozilla.list > /dev/null
|
||||
fi
|
||||
|
||||
sudo tee /etc/apt/preferences.d/mozilla > /dev/null << EOF
|
||||
Package: *
|
||||
Pin: origin packages.mozilla.org
|
||||
Pin-Priority: 1000
|
||||
EOF
|
||||
|
||||
_run_cmd "APT Update" "sudo apt update" "Updating package lists..."
|
||||
_run_install firefox
|
||||
|
||||
echo -e "${GREEN}Firefox (Mozilla) installed.${NC}"
|
||||
}
|
||||
Reference in New Issue
Block a user