yggdrasil_ng/install_functions_ub1804.sh
2018-06-05 10:11:13 +02:00

868 lines
15 KiB
Bash

#-----------------------------------------------------------------------------#
# Yggdrasil NG #
# compatibility : see documentation or man pages #
# author : Francois B. (Makotosan/Shakasan) #
# licence : GPLv3 #
# website : https://makotonoblog.be/ #
#-----------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
# #
# Ubuntu 18.04 / Linux Mint 19 #
# #
#-----------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
# install functions #
#-----------------------------------------------------------------------------#
#
# install Base Apps (headless)
#
function installBase () {
installAppsFromList base
}
#
# install Base Apps (Menu)
#
function installBaseMenu () {
installAppsFromListMenu base
}
#
# install Office Apps (headless)
#
function installOffice () {
installAppsFromList office
}
#
# install Office Apps (Menu)
#
function installOfficeMenu () {
installAppsFromListMenu office
}
#
# install Multimedia Apps (headless)
#
function installMultimedia () {
installAppsFromList multimedia
}
#
# install Multimedia Apps (Menu)
#
function installMultimediaMenu () {
installAppsFromListMenu multimedia
}
#
# install eBook Apps (headless)
#
function installEbook () {
installAppsFromList ebook
}
#
# install eBook Apps (Menu)
#
function installEbookMenu () {
installAppsFromListMenu ebook
}
#
# install Internet Apps (headless)
#
function installInternet () {
installAppsFromList internet
}
#
# install Internet Apps (Menu)
#
function installInternetMenu () {
installAppsFromListMenu internet
}
#
# Viber (headless)
#
function installViber () {
installPackageDpkg http://download.cdn.viber.com/cdn/desktop/Linux/viber.deb \
viber.deb \
no
}
#
# Viber (Menu)
#
function installViberMenu () {
installPackageDpkg http://download.cdn.viber.com/cdn/desktop/Linux/viber.deb \
viber.deb \
yes
}
#
# Franz (headless)
#
function installFranz () {
installPackageDpkg https://github.com/meetfranz/franz/releases/download/v5.0.0-beta.17/franz_5.0.0-beta.17_amd64.deb \
franz.deb \
no
}
#
# Franz (Menu)
#
function installFranzMenu () {
installPackageDpkg https://github.com/meetfranz/franz/releases/download/v5.0.0-beta.17/franz_5.0.0-beta.17_amd64.deb \
franz.deb \
yes
}
#
# XnViewMP (headless)
#
function installXnViewMP () {
installPackageDpkg https://download.xnview.com/XnViewMP-linux-x64.deb \
xnviewmp.deb \
no
}
#
# XnViewMP (Menu)
#
function installXnViewMPMenu () {
installPackageDpkg https://download.xnview.com/XnViewMP-linux-x64.deb \
xnviewmp.deb \
yes
}
#
# install Misc Utilities Apps (headless)
#
function installMiscUtilities () {
installAppsFromList utilities
}
#
# install Misc Utilities Apps (Menu)
#
function installMiscUtilitiesMenu () {
installAppsFromListMenu utilities
}
#
# install Wine Build (headless)
#
function installWine () {
installAppsFromList wine
}
#
# install Wine Build (Menu)
#
function installWineMenu () {
installAppsFromListMenu wine
}
#
# install Game Apps (headless)
#
function installGames () {
installAppsFromList games
}
#
# install Game Apps (Menu)
#
function installGamesMenu () {
installAppsFromListMenu games
}
#
# Steam (headless)
#
function installSteam () {
installAppsFromList steam
}
#
# Steam (Menu)
#
function installSteamMenu () {
installAppsFromListMenu steam
}
#
# install Burning Apps (headless)
#
function installBurningTools () {
installAppsFromList burningtools
}
#
# install Burning Apps (Menu)
#
function installBurningToolsMenu () {
installAppsFromListMenu burningtools
}
#
# install Network Apps (headless)
#
function installNetTools () {
installAppsFromList nettools
}
#
# install Network Apps (Menu)
#
function installNetToolsMenu () {
installAppsFromListMenu nettools
}
#
# install Caja Plugins (headless)
#
function installCajaPlugins () {
installAppsFromList cajaplugins
}
#
# install Caja Plugins (Menu)
#
function installCajaPluginsMenu () {
installAppsFromListMenu cajaplugins
}
#
# install Nautilus Apps + plugins (headless)
#
function installNautilusAndPlugins () {
installAppsFromList nautilus
}
#
# install Nautilus Apps + plugins (Menu)
#
function installNautilusAndPluginsMenu () {
installAppsFromListMenu nautilus
}
#
# install Gimp plugins (headless)
#
function installGimpPlugins () {
installAppsFromList gimp
}
#
# install Gimp plugins (Menu)
#
function installGimpPluginsMenu () {
installAppsFromListMenu gimp
}
#
# install RhythmBox plugins (headless)
#
function installRhythmBoxPlugins () {
installAppsFromList rhythmbox
}
#
# install RhythmBox plugins (Menu)
#
function installRhythmBoxPluginsMenu () {
installAppsFromListMenu rhythmbox
}
#
# install Pidgin plugins (headless)
#
function installPidginPlugins () {
installAppsFromList pidgin
}
#
# install Pidgin plugins (Menu)
#
function installPidginPluginsMenu () {
installAppsFromListMenu pidgin
}
#
# install Nitrogen app (headless)
#
function installNitrogen () {
installAppsFromList nitrogen
}
#
# install Nitrogen app (Menu)
#
function installNitrogenMenu () {
installAppsFromListMenu nitrogen
}
#
# install Beta Apps (headless)
#
function installBeta () {
installAppsFromList beta
}
#
# install Beta Apps (Menu)
#
function installBetaMenu () {
installAppsFromListMenu beta
}
#
# install Nightly Apps (headless)
#
function installNightly () {
installAppsFromList nightly
}
#
# install Nightly Apps (Menu)
#
function installNightlyMenu () {
installAppsFromListMenu nightly
}
#
# install GTK Themes (headless)
#
function installThemes () {
installAppsFromList gtkthemes
}
#
# install GTK Themes (Menu)
#
function installThemesMenu () {
installAppsFromListMenu gtkthemes
}
#
# install Icon Themes (headless)
#
function installIcons () {
installAppsFromList icons
}
#
# install Icon Themes (Menu)
#
function installIconsMenu () {
installAppsFromListMenu icons
}
#
# install Solaar App (headless)
#
function installSolaar () {
installAppsFromList solaar
}
#
# install Solaar App (Menu)
#
function installSolaarMenu () {
installAppsFromListMenu solaar
}
#
# install CardReader Apps (headless)
#
function installCardReader () {
installAppsFromList cardreader
}
#
# install CardReader Apps (Menu)
#
function installCardReaderMenu () {
installAppsFromListMenu cardreader
}
#
# update AMD/Intel CPU Microcode
#
function updateMicrocode () {
msg "CPU Microcode updating"
oldMicrocode=`cat /proc/cpuinfo | grep -i --color microcode -m 1 | awk -F': ' '{print $2}'`
intel=`cat /proc/cpuinfo | grep -i Intel | wc -l`
amd=`cat /proc/cpuinfo | grep -i Amd | wc -l`
if [ "$intel" -gt "0" ]; then
installPackage apt intel-microcode
newMicrocode=`cat /proc/cpuinfo | grep -i --color microcode -m 1 | awk -F': ' '{print $2}'`
printf "[INFO] Microcode updated from "$oldMicrocode" version to "$newMicrocode" version"
elif [ "$amd" -gt "0" ]; then
installPackage apt amd64-microcode
newMicrocode=`cat /proc/cpuinfo | grep -i --color microcode -m 1 | awk -F': ' '{print $2}'`
printf "[INFO] Microcode updated from "$oldMicrocode" version to "$newMicrocode" version"
else
printf "[INFO] No Intel/AMD CPU found"
fi
printf "\n"
}
#
# fix some config issue with Intel Wireless 6320 cards
#
function fixWirelessIntel6320 () {
runCmd "sudo cp /etc/modprobe.d/iwlwifi.conf /etc/modprobe.d/iwlwifi.conf.bak" \
"backing up config file"
runCmd "echo options iwlwifi bt_coex_active=0 swcrypto=1 11n_disable=8 | sudo tee /etc/modprobe.d/iwlwifi.conf" \
"applying new config"
printf "[INFO] reboot required !!!"
printf "\n"
}
#
# install Webcam Apps (headless)
#
function installWebcam () {
installAppsFromList webcam
}
#
# install Webcam Apps (Menu)
#
function installWebcamMenu () {
installAppsFromListMenu webcam
}
#
# install latest versions of graphic drivers, mesa, .... (headless)
#
function installOibaf () {
addRepo_Oibaf
}
#
# install latest versions of graphic drivers, mesa, .... (Menu)
#
function installOibafMenu () {
addRepo_Oibaf
}
#
# install Nvidia Drivers (headless)
#
function installNvidia384 () {
installAppsFromList nvidia-384
}
#
# install Nvidia Drivers (Menu)
#
function installNvidia384Menu () {
installAppsFromListMenu nvidia-384
}
#
# install Nvidia Drivers (headless)
#
function installNvidia387 () {
installAppsFromList nvidia-387
}
#
# install Nvidia Drivers (Menu)
#
function installNvidia387Menu () {
installAppsFromListMenu nvidia-387
}
#
# install Nvidia Drivers (headless)
#
function installNvidia390 () {
installAppsFromList nvidia-390
}
#
# install Nvidia Drivers (Menu)
#
function installNvidia390Menu () {
installAppsFromListMenu nvidia-390
}
#
# install Nvidia Drivers (headless)
#
function installNvidia396 () {
installAppsFromList nvidia-driver-396
}
#
# install Nvidia Drivers (Menu)
#
function installNvidia396Menu () {
installAppsFromListMenu nvidia-driver-396
}
#
# install TLP App (headless)
#
function installTLP () {
installAppsFromList tlp
}
#
# install TLP App (Menu)
#
function installTLPMenu () {
installAppsFromListMenu tlp
}
#
# Key-ID USB Fido U2F device udev rules
#
function installKeyIDuDev () {
printf "[CMD] Adding Key-ID device UDEV rules "
cat << EOF | sudo tee /etc/udev/rules.d/70-u2f.rules
# this udev file should be used with udev 188 and newer\n\
ACTION!="add|change", GOTO="u2f_end"
# Key-ID FIDO U2F
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="096e", ATTRS{idProduct}=="0850|0880", TAG+="uaccess"
LABEL="u2f_end"
EOF
ret_code=$?
retCode $ret_code
runCmd "sudo service udev restart" \
"restarting UDEV service"
}
#
# install Dev Apps (headless)
#
function installDevApps () {
installAppsFromList dev
}
#
# install Dev Apps (Menu)
#
function installDevAppsMenu () {
installAppsFromListMenu dev
}
#
# install Javascript env (headless)
#
function installJavascript () {
installAppsFromList javascript
}
#
# install Javascript env (Menu)
#
function installJavascriptMenu () {
installAppsFromListMenu javascript
}
#
# install JAVA 10 (headless)
#
function installJava10 () {
installAppsFromList java10
}
#
# install JAVA 10 (Menu)
#
function installJava10Menu () {
installAppsFromListMenu java10
}
#
# install Mongo DB 3 CE (headless)
#
function installMongo3CE () {
installAppsFromList mongodb
}
#
# install Mongo DB 3 CE (Menu)
#
function installMongo3CEMenu () {
installAppsFromListMenu mongodb
}
#
# install Python Apps (headless)
#
function installPython () {
installAppsFromList python
}
#
# install Python Apps (Menu)
#
function installPythonMenu () {
installAppsFromListMenu python
}
#
# install PHP Apps (headless)
#
function installPHP () {
installAppsFromList php
}
#
# install PHP Apps (Menu)
#
function installPHPMenu () {
installAppsFromListMenu php
}
#
# install QT Apps/tools (headless)
#
function installQT () {
installAppsFromList qt
}
#
# install QT Apps/tools (Menu)
#
function installQTMenu () {
installAppsFromListMenu qt
}
#
# install LUA Apps (headless)
#
function installLUA () {
installAppsFromList lua
}
#
# install LUA Apps (Menu)
#
function installLUAMenu () {
installAppsFromListMenu lua
}
#
# install Ruby Apps (headless)
#
function installRuby () {
installAppsFromList ruby
}
#
# install Ruby Apps (Menu)
#
function installRubyMenu () {
installAppsFromListMenu ruby
}
#
# install Atom App (headless)
#
function installAtom () {
installAppsFromList atom
}
#
# install Atom App (menu)
#
function installAtomMenu () {
installAppsFromListMenu atom
}
#
# install Anjuta Apps (headless)
#
function installAnjuta () {
installAppsFromList anjuta
}
#
# install Anjuta Apps (Menu)
#
function installAnjutaMenu () {
installAppsFromListMenu anjuta
}
#
# install Brackets Apps (headless)
#
function installBrackets () {
installAppsFromList brackets
}
#
# install Brackets Apps (Menu)
#
function installBracketsMenu () {
installAppsFromListMenu brackets
}
#
# install CodeBlocks Apps (headless)
#
function installCodeBlocks () {
installAppsFromList codeblocks
}
#
# install CodeBlocks Apps (Menu)
#
function installCodeBlocksMenu () {
installAppsFromListMenu codeblocks
}
#
# install Geany Apps (headless)
#
function installGeany () {
installAppsFromList geany
}
#
# install Geany Apps (Menu)
#
function installGeanyMenu () {
installAppsFromListMenu geany
}
#
# install IDEA Apps (headless)
#
function installIdea () {
installAppsFromList idea
}
#
# install IDEA Apps (Menu)
#
function installIdeaMenu () {
installAppsFromListMenu idea
}
#
# install Eclipse Apps (headless)
#
function installEclipse () {
installAppsFromList eclipse
}
#
# install Eclipse Apps (Menu)
#
function installEclipseMenu () {
installAppsFromListMenu eclipse
}
#
# install Pycharm Apps (headless)
#
function installPyCharm () {
installAppsFromList pycharm
}
#
# install Pycharm Apps (Menu)
#
function installPyCharmMenu () {
installAppsFromListMenu pycharm
}
#
# install Visual Studio Code Apps (headless)
#
function installVisualStudioCode () {
installAppsFromList code
}
#
# install Visual Studio Code Apps (Menu)
#
function installVisualStudioCodeMenu () {
installAppsFromListMenu code
}
#
# install Android-Studio Apps (headless)
#
function installAndroidStudio () {
installAppsFromList androidstudio
}
#
# install Android-Studio Apps (Menu)
#
function installAndroidStudioMenu () {
installAppsFromListMenu androidstudio
}
#
# install SublimeText Apps (headless)
#
function installSublimeText() {
installAppsFromList sublime-text
}
#
# install SublimeText Apps (Menu)
#
function installSublimeTextMenu() {
installAppsFromListMenu sublime-text
}
#
# install CAD Apps (headless)
#
function installCAD () {
installAppsFromList cad
}
#
# install CAD Apps (Menu)
#
function installCADMenu () {
installAppsFromListMenu cad
}
#
# install Teamviewer 13 (headless)
#
function installTeamViewer13 () {
installPackageDpkg https://download.teamviewer.com/download/linux/teamviewer_amd64.deb \
teamviewer13.deb \
no
}
#
# install Teamviewer 13 (Menu)
#
function installTeamViewer13Menu () {
installPackageDpkg https://download.teamviewer.com/download/linux/teamviewer_amd64.deb \
teamviewer13.deb \
yes
}
#
# install/enable Unboud (headless)
#
function installUnbound () {
installAppsFromList unbound
}