64 lines
2 KiB
Bash
Executable file
64 lines
2 KiB
Bash
Executable file
#!/bin/bash
|
||
help() {
|
||
echo "Usage: $(basename $0)
|
||
[-e] Installs Firefox ESR
|
||
[-f] Installs Flatpak Firefox
|
||
[-d] Installs Firefox from the official Mozilla Repo and Pins it's Priority in apt
|
||
[-p] Purges the Snapd daemon from the system. Use if you don't want snaps anymore period."
|
||
exit 1
|
||
}
|
||
|
||
#process flags
|
||
case "$1" in
|
||
-e)
|
||
echo "Installing Firefox ESR"
|
||
sudo add-apt-repository ppa:mozillateam/ppa
|
||
sudo apt-get update
|
||
echo 'Unattended-Upgrade::Allowed-Origins:: "LP-PPA-mozillateam:${distro_codename}";' | sudo tee /etc/apt/apt.conf.d/51unattended-upgrades-firefox
|
||
sudo apt-get -y install firefox-esr
|
||
;;
|
||
|
||
-f)
|
||
echo "Installing Flatpak Firefox"
|
||
sudo apt-get -y install flatpak
|
||
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||
flatpak install flathub org.mozilla.firefox
|
||
;;
|
||
|
||
-d)
|
||
echo "Installing Firefox from Offical Mozilla Repo"
|
||
#Create an APT keyring (if one doesn’t already exist):
|
||
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
|
||
echo "deb [signed-by=/etc/apt/keyrings/packages.mozilla.org.asc] https://packages.mozilla.org/apt mozilla main" | sudo tee -a /etc/apt/sources.list.d/mozilla.list > /dev/null
|
||
echo '
|
||
Package: *
|
||
Pin: origin packages.mozilla.org
|
||
Pin-Priority: 1000
|
||
|
||
Package: firefox*
|
||
Pin: release o=Ubuntu
|
||
Pin-Priority: -1
|
||
' | sudo tee /etc/apt/preferences.d/mozilla
|
||
sudo apt update && sudo apt install firefox
|
||
;;
|
||
|
||
-p)
|
||
echo "Purging snapd..."
|
||
sudo apt-get autoremove snapd
|
||
;;
|
||
|
||
-r)
|
||
echo "Purging Firefox Snap"
|
||
echo "Backing up Snap Profile"
|
||
mkdir ~/mozilla_backup
|
||
cp -r ~/snap/firefox/common/.mozilla ~/mozilla_backup
|
||
sudo systemctl disable --now var-snap-firefox-common-host\\x2dhunspell.mount
|
||
sudo snap remove firefox
|
||
;;
|
||
|
||
*)
|
||
help
|
||
;;
|
||
esac
|
||
|