95 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			95 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| #### Variables
 | |
| APT_UPDATE="apt -y update"
 | |
| APT_INST="apt -y install"
 | |
| APT_PURGE="apt -y purge"
 | |
| APT_REMOVE="apt -y autoremove"
 | |
| 
 | |
| PKG_MATE="mate-desktop-environment mozo caja-open-terminal lightdm"
 | |
| PKG_INDI="package-update-indicator"
 | |
| PKG_APPS="audacious vlc synaptic gnome-disk-utility gimp hardinfo"
 | |
| PKG_OFFICE="libreoffice libreoffice-gtk3 aspell-hr hunspell-hr"
 | |
| PKG_NET="network-manager-gnome thunderbird net-tools remmina"
 | |
| PKG_CHAT="element-desktop telegram-desktop"
 | |
| 
 | |
| 
 | |
| #### Functions
 | |
| check_root() {
 | |
|     if [ "$EUID" -ne 0 ]; then
 | |
|         echo "Must be root to run $0"
 | |
|         exit
 | |
|     fi
 | |
| }
 | |
| 
 | |
| choice() {
 | |
|     echo -ne "[y/n]"
 | |
|     while true
 | |
|     do
 | |
|         read -rN1 input
 | |
|     case $input in
 | |
|         [yY][eE][sS]|[yY])
 | |
|         return 0
 | |
| 
 | |
|     break
 | |
|     ;;
 | |
|         [nN][oO]|[nN])
 | |
|         return 1
 | |
|         ;;
 | |
|         esac
 | |
|     done
 | |
| }
 | |
| 
 | |
| #### Main
 | |
| 
 | |
| check_root
 | |
| 
 | |
| echo -e "\nUpdate apt"
 | |
| echo "$APT_UPDATE"
 | |
| $APT_UPDATE
 | |
| 
 | |
| 
 | |
| echo -ne "\nInstall of MATE minimal ($PKG_MATE)? "
 | |
| if choice 2>/dev/null; then
 | |
|     echo -ne "\n$APT_INST $PKG_MATE\n"
 | |
|     $APT_INST $PKG_MATE
 | |
| fi
 | |
| 
 | |
| echo -ne "\nInstall of update indicator ($PKG_INDI)? "
 | |
| if choice 2>/dev/null; then
 | |
|      echo -ne "\n$APT_INST --no-install-recommends $PKG_INDI\n"
 | |
|      $APT_INST --no-install-recommends $PKG_INDI
 | |
| fi
 | |
| 
 | |
| 
 | |
| echo -ne "\nYou want to install apps ($PKG_APPS)? "
 | |
| if choice 2>/dev/null; then
 | |
|     echo -ne "\n$APT_INST $PKG_APPS\n"
 | |
|     $APT_INST $PKG_APPS
 | |
| fi
 | |
| 
 | |
| echo -ne "\nYou want to install office packages ($PKG_OFFICE)? "
 | |
| if choice 2>/dev/null; then
 | |
|     echo -ne "\n$APT_INST $PKG_OFFICE\n"
 | |
|     $APT_INST $PKG_OFFICE
 | |
| fi
 | |
| 
 | |
| echo -ne "\nYou want to install internet programs ($PKG_NET)? "
 | |
| if choice 2>/dev/null; then
 | |
|     echo -ne "\n$APT_INST $PKG_FIREFOX $PKG_NET\n"
 | |
|     $APT_INST $PKG_FIREFOX $PKG_NET
 | |
| fi
 | |
| 
 | |
| echo -ne "\nYou want to install chat programs ($PKG_CHAT)? "
 | |
| if choice 2>/dev/null; then
 | |
|     echo -ne "\nAdd repository for Element client\n"
 | |
|     $APT_INST apt-transport-https wget
 | |
|     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
 | |
|     $APT_UPDATE
 | |
|     echo -ne "\n$APT_INST $PKG_CHAT\n"
 | |
|     $APT_INST $PKG_CHAT
 | |
| fi
 | |
| 
 | |
| echo -ne "\n\n"
 |