Pós-instalação para Ubuntu 20.04 e Linux Mint 19.03
Publicado por tiago gilgia manoel (última atualização em 05/05/2020)
[ Hits: 2.463 ]
Script para facilitar o processo de pós-instalação das distribuições Ubuntu 20.04 LTS e Linux Mint 19.03.
#!/bin/bash
########## POST SCRIPT INSTALLATION OF LINUX MINT 19.03 and Ubuntu 20.04 #########
# Written by Tiago G. Manoel
# Release - 3.0
# Date - 30/04/2020
#---VARIABLES---#
CHOICE=Softwares
# make sure this is run as root
declare -f VERIFY_ROOT
function VERIFY_ROOT()
{
uid=$(id -ur)
if [ "$uid" != "0" ]; then
echo "ERROR: This script must be run as root."
if [ -x /usr/bin/sudo ]; then
echo "try: sudo $0"
fi
exit 1
fi
}
#---IDENTIFY DISTRIBUTION---#
declare -f VERIFY_DISTRIB
function VERIFY_DISTRIB()
{
ID=`lsb_release -i`
RELEASE=`lsb_release -r`
if [[ $ID = "Distributor ID: Ubuntu" && $RELEASE = "Release: 20.04" ]]; then
clear
lsb_release -a
MENU_UBUNTU
elif [[ $ID = "Distributor ID: LinuxMint" && $RELEASE = "Release: 19.3" ]]; then
clear
lsb_release -a
MENU_MINT
else
echo "#========== Unsupported Distribution ==========#"
sleep 3
fi
}
#---System Update Function ---#
declare -f UPDATE
function UPDATE()
{
clear
echo "=== Updating Repositories ==="
sleep 2
sudo rm /var/lib/dpkg/lock-frontend
sudo rm /var/cache/apt/archives/lock
sudo apt update -y
clear
echo "=== Applying Updates ==="
sleep 2
sudo apt dist-upgrade -y
clear
echo "=== Finished ==="
sleep 3
VERIFY_DISTRIB
}
#--- Functions ---#
declare -f INSTSOFTWARE
function INSTSOFTWARE()
{
clear
echo "#========== Installing $CHOICE ==========#"
sleep 2
clear
for CHOICE in $selection; do
echo "#========== Installing $CHOICE ==========#"
sleep 2
case $CHOICE in
Google-Chrome-Stable )
INSTCHROME
;;
Insync )
INSTINSYNC
;;
Spotify-FlatHub )
flatpak install flathub com.spotify.Client -y
;;
Sublime-Text-FlatHub )
flatpak install flathub com.sublimetext.three -y
;;
Handbrake-FlatHub )
flatpak install flathub fr.handbrake.ghb -y
;;
WPS-Office-FlatHub )
flatpak install flathub com.wps.Office -y
;;
ONLYOFFICE-FlatHub )
flatpak install flathub org.onlyoffice.desktopeditors -y
;;
Discord-FlatHub )
flatpak install flathub com.discordapp.Discord -y
;;
libreoffice )
INSTLIBREOFFICE
;;
Telegram-FlatHub )
flatpak install flathub org.telegram.desktop -y
;;
Tor-Browser-Launcher-FlatHub )
flatpak install flathub com.github.micahflee.torbrowser-launcher -y
;;
Jdownloader-FlatHub )
flatpak install flathub org.jdownloader.JDownloader -y
;;
Whatsapp-desktop-Snap )
sudo snap install whatsdesk
;;
Vlc )
sudo snap install vlc
;;
Unpackers )
sudo apt install p7zip-full p7zip-rar lzma lzma-dev rar unrar-free p7zip ark ncompress -y
;;
* )
apt install $CHOICE -y
;;
esac
done
echo "#========== Successfully finished! ==========#"
sleep 3
clear
VERIFY_DISTRIB
}
declare -f INSTCHROME
function INSTCHROME()
{
mkdir /tmp/chrome
cd /tmp/chrome
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i *.deb
}
declare -f INSTINSYNC
function INSTINSYNC()
{
mkdir /tmp/insync
cd /tmp/insync
wget https://d2t3ff60b2tol4.cloudfront.net/builds/insync_3.0.27.40677-bionic_amd64.deb
sudo dpkg -i *.deb
which nautilus && sudo apt install insync-nautilus -y
which nemo && sudo apt install insync-nemo -y
}
declare -f INSTLIBREOFFICE
function INSTLIBREOFFICE()
{
sudo add-apt-repository ppa:libreoffice/ppa -y
sudo apt update && sudo apt dist-upgrade -y
which libreoffice || sudo apt install libreoffice libreoffice-l10n-br -y
}
#--- Unistall Softwares ---#
declare -f RMSOFTWARES
function RMSOFTWARES()
{
for CHOICE in $selection; do
echo "#========== Removing $CHOICE ==========#"
sleep 2
sudo apt remove $CHOICE -y
done
VERIFY_DISTRIB
}
######========== LinuxMint ==========######
###### Main Menu Function ######
declare -f MENU_MINT
function MENU_MINT()
{
selection=$(zenity --list --title='Selection' --column="#" --column="Softwares" \
FALSE "Update Repositories and System" \
FALSE "Install Softwares" \
FALSE "Uninstall Embedded" \
--radiolist --height=200 --width=300 )
if [[ -z $selection ]]; then
exit 0
fi
case "$selection" in
"Update Repositories and System" )
UPDATE
;;
"Install Softwares" )
INSTMENU_MINT
;;
"Uninstall Embedded" )
RMMENU_MINT
;;
* )
echo "invalid option, try again!"
;;
esac
exit 0
}
declare -f INSTMENU_MINT
function INSTMENU_MINT()
{
selection=$(zenity --list --title='Select' --column="#" --column="Softwares" --column="description" \
FALSE "Google-Chrome-Stable" "Web browser" \
FALSE "Tor-Browser-Launcher-FlatHub" "Private Web Browser" \
FALSE "Insync" "Client Google Drive" \
FALSE "Spotify-FlatHub" "Music Streaming" \
FALSE "Telegram-FlatHub" "Messenger" \
FALSE "Discord-FlatHub" "Voice Messenger" \
FALSE "Jdownloader-FlatHub" "Downloader Manager" \
FALSE "whatsapp-desktop" "Messenger" \
FALSE "Sublime-Text-FlatHub" "IDE for development" \
FALSE "ubuntu-restricted-extras" "Additional (codec, flash and etc...)" \
FALSE "mpv" "Video Player" \
FALSE "celluloid" "Video Player" \
FALSE "audacious" "Audio Player" \
FALSE "gnome-calendar" "Calendar" \
FALSE "gnome-maps" "Maps" \
FALSE "gnome-contacts" "Contacts" \
FALSE "gnome-weather" "Weather" \
FALSE "shutter" "PrintScreen Tool" \
FALSE "flameshot" "PrintScreen Tool" \
FALSE "snapd" "core for SNAP containers" \
FALSE "kdenlive" "Video editor" \
FALSE "ffmpeg" "Back-End Tool for Media Conversion" \
FALSE "winff" "Front-End for FFMPEG"\
FALSE "mint-meta-codecs" "Codec Pack" \
FALSE "synaptic" "Package Manager" \
FALSE "gparted" "Partition Manager" \
FALSE "geary" "EMAIL CLIENT" \
FALSE "clipit" "Clipboard Manager" \
FALSE "virtualbox-qt" "Virtualization" \
FALSE "wine-stable" "Layer for Windows Software" \
FALSE "libreoffice" "Office Tools" \
FALSE "WPS-Office-FlatHub" "Office Tools" \
FALSE "ONLYOFFICE-FlatHub" "Office Tools" \
FALSE "Handbrake-FlatHub" "Video conversion tools" \
FALSE "transmission" "Torrent client" \
FALSE "keepassxc" "Password Manager" \
FALSE "Unpackers" "zip-rar lzma lzma-dev rar unrar-free p7zip ark ncompress" \
FALSE "steam-installer" "Game Store" \
FALSE "zsnes" "SuperNes emulator" \
FALSE "ttf-mscorefonts-installer" "Microsoft fonts" \
--separator=" " --checklist --height=650 --width=650 )
if [[ -z $selection ]]; then
MENU_MINT
fi
INSTSOFTWARE
}
declare -f RMMENU_MINT
function RMMENU_MINT()
{
selection=$(zenity --list --title='Select' --column="#" --column="Softwares" --column="description" \
FALSE "hexchat" "Chat" \
FALSE "firefox" "Web browser" \
FALSE "thunderbird" "EMAIL CLIENT" \
FALSE "rhythmbox" "Audio Player" \
--separator=" " --checklist --height=650 --width=550 )
if [[ -z $selection ]]; then
MENU_MINT
fi
RMSOFTWARES
}
######========== Ubuntu ==========######
###### Main Menu Function ######
declare -f MENU_UBUNTU
function MENU_UBUNTU()
{
selection=$(zenity --list --title='Selection' --column="#" --column="Softwares" \
FALSE "Update Repositories and System" \
FALSE "Install Softwares" \
FALSE "Uninstall Embedded" \
--radiolist --height=200 --width=300 )
if [[ -z $selection ]]; then
exit 0
fi
case "$selection" in
"Update Repositories and System" )
UPDATE
;;
"Install Softwares" )
INSTMENU_UBUNTU
;;
"Uninstall Embedded" )
RMMENU_UBUNTU
;;
* )
echo "invalid option, try again!"
;;
esac
exit 0
}
declare -f INSTMENU_UBUNTU
function INSTMENU_UBUNTU()
{
selection=$(zenity --list --title='Select' --column="#" --column="Softwares" --column="description" \
FALSE "Google-Chrome-Stable" "Web browser" \
FALSE "Tor-Browser-Launcher-FlatHub" "Private Web Browser" \
FALSE "Insync" "Client Google Drive" \
FALSE "Spotify-FlatHub" "Music Streaming" \
FALSE "Telegram-FlatHub" "Messenger" \
FALSE "Discord-FlatHub" "Voice Messenger" \
FALSE "Jdownloader-FlatHub" "Downloader Manager" \
FALSE "Whatsapp-desktop-Snap" "Messenger" \
FALSE "Sublime-Text-FlatHub" "IDE for development" \
FALSE "ubuntu-restricted-extras" "Additional (codec, flash and etc...)" \
FALSE "mpv" "Video Player" \
FALSE "celluloid" "Video Player" \
FALSE "audacious" "Audio Player" \
FALSE "Vlc" "Audio Player" \
FALSE "gnome-calendar" "Calendar" \
FALSE "gnome-maps" "Maps" \
FALSE "gnome-contacts" "Contacts" \
FALSE "gnome-weather" "Weather" \
FALSE "shutter" "PrintScreen Tool" \
FALSE "flameshot" "PrintScreen Tool" \
FALSE "kdenlive" "Video editor" \
FALSE "ffmpeg" "Back-End Tool for Media Conversion" \
FALSE "winff" "Front-End for FFMPEG"\
FALSE "synaptic" "Package Manager" \
FALSE "gparted" "Partition Manager" \
FALSE "geary" "EMAIL CLIENT" \
FALSE "virtualbox-qt" "Virtualization" \
FALSE "wine-stable" "Layer for Windows Software" \
FALSE "libreoffice" "Office Tools" \
FALSE "WPS-Office-FlatHub" "Office Tools" \
FALSE "ONLYOFFICE-FlatHub" "Office Tools" \
FALSE "Handbrake-FlatHub" "Video conversion tools" \
FALSE "transmission" "Torrent client" \
FALSE "keepassxc" "Password Manager" \
FALSE "Unpackers" "zip-rar lzma lzma-dev rar unrar-free p7zip ark ncompress" \
FALSE "steam-installer" "Game Store" \
FALSE "zsnes" "SuperNes emulator" \
FALSE "ttf-mscorefonts-installer" "Microsoft fonts" \
FALSE "gnome-tweaks" "Gnome extra settings" \
--separator=" " --checklist --height=650 --width=650 )
if [[ -z $selection ]]; then
MENU_UBUNTU
fi
which flatpak || sudo apt install flatpak gnome-software-plugin-flatpak -y && flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
sudo sed -i.bak "/^# deb .*partner/ s/^# //" /etc/apt/sources.list && sudo apt update
INSTSOFTWARE
}
declare -f RMMENU_UBUNTU
function RMMENU_UBUNTU()
{
selection=$(zenity --list --title='Select' --column="#" --column="Softwares" --column="description" \
FALSE "firefox" "Web browser" \
FALSE "thunderbird" "EMAIL CLIENT" \
FALSE "rhythmbox" "Audio Player" \
FALSE "remmina" "remote connection" \
--separator=" " --checklist --height=650 --width=550 )
if [[ -z $selection ]]; then
MENU_UBUNTU
fi
RMSOFTWARES
}
#========== EXECUTION ==========#
VERIFY_ROOT
VERIFY_DISTRIB
Conversor de Celsius para Farenheit e vice-versa...
Menu em formato texto simples em BASH script feito com comando select
birthday - script que manda email no dia do aniversário
Script de inicialização do PostgreSQL 8 com suporte a acesso remoto - Fedora 7
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
É normal não gostar de KDE? (7)
O programa assinador digital (0)
dpkg: erro: gatilho de arquivo duplicado chamado pelo arquivo de nome (6)









