new release 5.2 b2 with many improvements ...

This commit is contained in:
Francois B. (Makoto) 2020-02-22 20:57:42 +01:00
parent 179a0e38df
commit 9a03f5e857
6 changed files with 227 additions and 161 deletions

View file

@ -128,103 +128,19 @@ function isCinnamon () {
# check and install required dependencies for Yggdrasil
#
function yggInit () {
typeset ret_code
msg "Performing some Initializing steps"
printf "[INIT]"
runCmd "echo sience-config science-config/group select '$myHomedir ($myHomedir)' | sudo debconf-set-selections" \
"apply settings for science-config pkg"
if ! dpkg --print-foreign-architectures | grep -qi i386; then
printf "[INIT]"
runCmd "sudo dpkg --add-architecture i386" \
"adding i386 architecture"
else
printf "[INIT] i386 architecture already added [ "$BOLDVERT"OK"$NORMAL" ] \n"
printf "i386 architecture already added [ "$BOLDVERT"OK"$NORMAL" ] \n"
fi
printf "[INIT]"
addPPA ppa:ubuntu-desktop/ubuntu-make
printf "[INIT][APT] update "
printf "\n[INIT][APT] update\n" &>> $logFile
sudo apt-get update &>> $logFile
ret_code=$?
retCode $ret_code
printf "[INIT]"
installPackage apt "apt-transport-https"
# UMAKE
if ! which umake >/dev/null; then
printf "[INIT][UMAKE] not found, installing...\n"
printf "\n[INIT][UMAKE] not found, installing...\n" &>> $logFile
installPackage apt "ubuntu-make"
else
printf "[INIT][UMAKE] found [ "$BOLDVERT"OK"$NORMAL" ] \n"
fi
# GEM
if ! which gem >/dev/null; then
printf "[INIT][GEM] not found, installing...\n"
printf "\n[INIT][GEM] not found, installing...\n" &>> $logFile
installPackage apt "ruby-dev"
else
printf "[INIT][GEM] found [ "$BOLDVERT"OK"$NORMAL" ] \n"
printf "[GEM] update --system "
printf "\n[GEM] update --system\n" &>> $logFile
sudo gem update --system &>> $logFile
ret_code=$?
retCode $ret_code
fi
# SNAP
if ! which snap >/dev/null; then
printf "[INIT][SNAP] not found, installing...\n"
printf "\n[INIT][SNAP] not found, installing...\n" &>> $logFile
installPackage apt "snapd"
else
printf "[INIT][SNAP] found [ "$BOLDVERT"OK"$NORMAL" ] \n"
fi
# NPM
if ! which npm >/dev/null; then
printf "[INIT][NPM] not found, installing...\n"
printf "\n[INIT][NPM] not found, installing...\n" &>> $logFile
installPackage apt "nodejs"
else
printf "[INIT][NPM] found [ "$BOLDVERT"OK"$NORMAL" ] \n"
printf "[NPM] update npm "
printf "\n[NPM] update npm\n" &>> $logFile
sudo npm i -g npm &>> $logFile
ret_code=$?
retCode $ret_code
fi
# PIP3
if ! which pip3 >/dev/null; then
printf "[INIT][PIP] not found, installing...\n"
printf "\n[INIT][PIP] not found, installing...\n" &>> $logFile
printf "[INIT]"
installPackage apt "python3-pip"
if isMint19; then
printf "[INIT]"
installPackage apt "python3-distutils"
fi
printf "[INIT]"
installPackage pip "pip"
printf "[INIT]"
installPackage pip "setuptools"
else
printf "[INIT][PIP] found [ "$BOLDVERT"OK"$NORMAL" ] \n"
if isMint19; then
printf "[INIT]"
installPackage apt "python3-distutils"
fi
printf "[INIT]"
installPackage pip "pip"
printf "[INIT]"
installPackage pip "setuptools"
fi
installAppsFromList init
}
#
@ -260,6 +176,14 @@ function updateSystem () {
retCode $ret_code
fi
if which flatpak >/dev/null; then
printf "[FLATPAK] update "
printf "\n[FLATPAK] update\n" &>> $logFile
sudo flatpak update -y &>> $logFile
ret_code=$?
retCode $ret_code
fi
repoAdded=0
}
@ -384,7 +308,7 @@ function installPackage () {
if which npm >/dev/null; then
printf "[NPM] Installing $pkg "
printf "\n[NPM] installing $pkg\n" &>> $logFile
sudo npm install -g $pkg &>> $logFile
npm install -g $pkg &>> $logFile
ret_code=$?
retCode $ret_code
fi
@ -407,6 +331,15 @@ function installPackage () {
retCode $ret_code
fi
;;
"flatpak")
if which flatpak >/dev/null; then
printf "[FLATPAK] Installing $pkg "
printf "\n[FLATPAK] installing $pkg\n" &>> $logFile
sudo flatpak install -y $pkg &>> $logFile
ret_code=$?
retCode $ret_code
fi
;;
esac
}

View file

@ -38,7 +38,7 @@ function installViberMenu () {
# Franz (headless)
#
function installFranz () {
installPackageDpkg https://github.com/meetfranz/franz/releases/download/v5.1.0/franz_5.1.0_amd64.deb \
installPackageDpkg https://github.com/meetfranz/franz/releases/download/v5.4.0/franz_5.4.0_amd64.deb \
franz.deb \
no
}
@ -47,7 +47,7 @@ function installFranz () {
# Franz (Menu)
#
function installFranzMenu () {
installPackageDpkg https://github.com/meetfranz/franz/releases/download/v5.1.0/franz_5.1.0_amd64.deb \
installPackageDpkg https://github.com/meetfranz/franz/releases/download/v5.4.0/franz_5.4.0_amd64.deb \
franz.deb \
yes
}
@ -56,7 +56,7 @@ function installFranzMenu () {
# Slack (headless)
#
function installSlack () {
installPackageDpkg https://downloads.slack-edge.com/linux_releases/slack-desktop-3.4.2-amd64.deb \
installPackageDpkg https://downloads.slack-edge.com/linux_releases/slack-desktop-4.3.2-amd64.deb \
slack.deb \
no
}
@ -65,7 +65,7 @@ function installSlack () {
# Slack (Menu)
#
function installSlackMenu () {
installPackageDpkg https://downloads.slack-edge.com/linux_releases/slack-desktop-3.4.2-amd64.deb \
installPackageDpkg https://downloads.slack-edge.com/linux_releases/slack-desktop-4.3.2-amd64.deb \
slack.deb \
yes
}
@ -167,7 +167,7 @@ function installTeamViewer13Menu () {
# install Compass (headless)
#
function installCompass () {
installPackageDpkg https://downloads.mongodb.com/compass/mongodb-compass_1.18.0_amd64.deb \
installPackageDpkg https://downloads.mongodb.com/compass/mongodb-compass_1.20.5_amd64.deb \
compass.deb \
no
}
@ -176,7 +176,7 @@ function installCompass () {
# install Compass (Menu)
#
function installCompassMenu () {
installPackageDpkg https://downloads.mongodb.com/compass/mongodb-compass_1.18.0_amd64.deb \
installPackageDpkg https://downloads.mongodb.com/compass/mongodb-compass_1.20.5_amd64.deb \
compass.deb \
yes
}
@ -185,7 +185,7 @@ function installCompassMenu () {
# Boostnotes (headless)
#
function installBoostnotes () {
installPackageDpkg https://github.com/BoostIO/boost-releases/releases/download/v0.11.17/boostnote_0.11.17_amd64.deb \
installPackageDpkg https://github.com/BoostIO/boost-releases/releases/download/v0.14.0/boostnote_0.14.0_amd64.deb \
boostnotes.deb \
no
}
@ -194,7 +194,43 @@ function installBoostnotes () {
# Boostnotes (Menu)
#
function installBoostnotesMenu () {
installPackageDpkg https://github.com/BoostIO/boost-releases/releases/download/v0.11.17/boostnote_0.11.17_amd64.deb \
installPackageDpkg https://github.com/BoostIO/boost-releases/releases/download/v0.14.0/boostnote_0.14.0_amd64.deb \
boostnotes.deb \
yes
}
#
# Vagrant (headless)
#
function installVagrant () {
installPackageDpkg https://releases.hashicorp.com/vagrant/2.2.7/vagrant_2.2.7_x86_64.deb \
vagrant.deb \
no
}
#
# Vagrant (Menu)
#
function installVagrantMenu () {
installPackageDpkg https://releases.hashicorp.com/vagrant/2.2.7/vagrant_2.2.7_x86_64.deb \
vagrant.deb \
yes
}
#
# AppImage Launcher (headless)
#
function installAppImageLauncher () {
installPackageDpkg https://github.com/TheAssassin/AppImageLauncher/releases/download/v2.1.1/appimagelauncher_2.1.1-travis931.f6d5926.bionic_amd64.deb \
appimagelauncher.deb \
no
}
#
# AppImage Launcher (Menu)
#
function installAppImageLauncherMenu () {
installPackageDpkg https://github.com/TheAssassin/AppImageLauncher/releases/download/v2.1.1/appimagelauncher_2.1.1-travis931.f6d5926.bionic_amd64.deb \
appimagelauncher.deb \
yes
}

View file

@ -223,6 +223,7 @@ function showDevInstallMenu () {
"boostnotes" "Boostnotes Markdown wiki app" \
"compass" "MongoDB Compass GUI" \
"gitkraken" "Gitkraken git gui" \
"Vagrant" "Vagrant" \
"Back" "Back" 3>&1 1>&2 2>&3)
case $devInstallMenuOptions in
@ -304,6 +305,9 @@ function showDevInstallMenu () {
"gitkraken")
installAppsFromListMenu gitkraken
;;
"vagrant")
installVagrantMenu
;;
"Back")
break
;;
@ -343,6 +347,7 @@ function showAppInstallMenu () {
"viber" "Viber IM desktop app" \
"franz" "Franz multi IM app" \
"slack" "Slack App" \
"appimagelauncher" "AppImage Launcher" \
"Back" "Back" 3>&1 1>&2 2>&3)
case $appsInstallMenuOptions in
@ -409,6 +414,9 @@ function showAppInstallMenu () {
"slack")
installSlackMenu
;;
"appimagelauncher")
installAppImageLauncherMenu
;;
"Back")
break
;;

View file

@ -20,7 +20,18 @@
# List of packages available
# fields : package name, package manager, category, unique ID for external functions
#
Apps="cifs-utils;apt;base;cifs-utils
Apps="apt-transport-https;apt;init;apt-transport-https
flatpak;apt;init;flatpak
snapd;apt;init;snapd
ubuntu-make;apt;init;ubuntu-make
gcc-8 g++-8;apt;init;gcc8
ruby-dev;apt;init;ruby-dev
nodejs;apt;init;nodejslts
python3-pip;apt;init;python3-pip
python3-distutils;apt;init;python3-distutils
pip;pip;init;setuptools
setuptools;pip;init;setuptools
cifs-utils;apt;base;cifs-utils
xterm;apt;base;xterm
curl;apt;base;curl
mc;apt;base;mc
@ -37,10 +48,10 @@ iptraf;apt;base;iptraf
mpg123;apt;base;mpg123
debconf-utils;apt;base;debconf-utils
idle3-tools;apt;base;idle3-tools
snapd;apt;base;snapd
sysstat;apt;base;sysstat
dcfldd;apt;base;dcfldd
mdadm;apt;base;mdadm
ncdu;apt;base;ncdu
spotify;snap;multimedia;spotify
sayonara;apt;multimedia;sayonara
qmmp;apt;multimedia;qmmp
@ -105,12 +116,14 @@ gmusicbrowser;apt;multimedia;gmusicbrowser
peek;apt;multimedia;peek
bino;apt;multimedia;bino
kdenlive;apt;multimedia;kdenlive
com.github.huluti.ImCompressor;flatpak;multimedia;ImCompressor
syncthing;apt;internet;syncthing
syncthing-gtk;apt;internet;syncthinggtk
insync;apt;internet;insync
megasync;apt;internet;megasync
megacmd;apt;internet;megacmd
discord;snap;internet;discord
com.teamspeak.TeamSpeak;flatpak;internet;TeamSpeak
quiterss;apt;internet;quiterss
opera-stable;apt;internet;opera-stable
google-chrome-stable;apt;internet;google-chrome-stable
@ -119,9 +132,8 @@ chromium-browser-l10n;apt;internet;chromium-browser-l10n
filezilla;apt;internet;filezilla
hexchat;apt;internet;hexchat
mumble;apt;internet;mumble
geary;apt;internet;geary
org.gnome.Geary;flatpak;internet;geary
birdtray;apt;internet;birdtray
corebird;apt;internet;corebird
telegram;apt;internet;telegram
skypeforlinux;apt;internet;skypeforlinux
nextcloud-client;apt;internet;nextcloud-client
@ -132,9 +144,8 @@ transmission-gtk;apt;internet;transmission-gtk
iridium-browser;apt;internet;iridiumbrowser
youtube-dl;pip;internet;youtube-dl
youtube-dlg;apt;internet;youtube-dlg
gnome-twitch;snap;internet;gnome-twitch
gnome-twitch-player-backend-mpv-opengl;apt;internet;gnome-twitch
gallery-dl;pip;internet;gallery-dl
cawbird;apt;internet;cawbird
qtqr;apt;utilities;qtqr
cpu-g;apt;utilities;cpu-g
screenfetch;apt;utilities;screenfetch
@ -182,12 +193,13 @@ tldr;pip;utilities;tldr
gyazo;apt;utilities;gyazo
fdupes;apt;utilities;fdupes
balena-etcher-electron;apt;utilities;balena-etcher-electron
org.gabmus.hydrapaper;flatpak;utilities;hydrapaper
nvme-cli;apt;utilities;nvme-cli
translatium;snap;utilities;translatium
font-manager;apt;utilities;font-manager
python3-dev;apt;python;python3-dev
python3-pip;apt;python;python3-pip
python3-pyqt5;apt;python;python3-pyqt5
pyqt5-dev-tools;apt;python;pyqt5-dev-tools
pip;pip;python;setuptools
setuptools;pip;python;setuptools
PyOpenGL;pip;python;PyOpenGL
tweepy;pip;python;tweepy
weppy;pip;python;weppy
@ -313,9 +325,10 @@ cheese;apt;webcam;cheese
tlp;apt;tlp;tlp
notepadqq;apt;dev;notepadqq
gpick;apt;dev;gpick
virtualbox-6.0;apt;dev;virtualbox-6.0
virtualbox-6.1;apt;dev;virtualbox-6.1
virtualbox-dkms;apt;dev;virtualbox-6.1
libelf-dev;apt;dev;virtualbox-6.1
build-essential;apt;dev;build-essential
ubuntu-make;apt;dev;ubuntu-make
ghex;apt;dev;ghex
glade;apt;dev;glade
eric;apt;dev;eric
@ -335,7 +348,6 @@ mysql-workbench;apt;dev;mysql-workbench
jq;apt;dev;jq
tig;apt;dev;tig
postman;snap;dev;postman
nodejs;apt;javascript;nodejslts
javascript-common;apt;javascript;javascript-common
yarn;npm;javascript;yarn
emma-cli;npm;javascript;emma-cli
@ -450,7 +462,6 @@ flacon;addRepo_Flacon
y-ppa-manager;addRepo_YPPAManager
diodon;addRepo_Diodon
sayonara;addRepo_Sayonara
corebird;addRepo_Corebird
deluge-torrent;addRepo_Deluge
deluge-gtk;addRepo_Deluge
kodi;addRepo_Kodi
@ -458,7 +469,6 @@ indicator-sound-switcher;addRepo_IndicatorSoundSwitcher
krita;addRepo_Krita
gimp-gmic;addRepo_Gimp
gimp;addRepo_Gimp
geary;addRepo_Geary
vidcutter;addRepo_Vidcutter
oracle-java10-installer;addRepo_Java10
oracle-java10-set-default;addRepo_Java10
@ -520,7 +530,43 @@ megasync;addRepo_MEGA
lutris;addRepo_Lutris
guake;addRepo_LinuxUprising_Guake
winehq-stable;addRepo_WineHQ
balena-etcher-electron;addRepo_Belena"
flatpak;addRepo_flatpak
balena-etcher-electron;addRepo_Belena
font-manager;addRepo_FontManager
cawbird;addRepo_Cawbird
ubuntu-make;addRepo_UbuntuMake"
#
# Ubuntu Make
#
function addRepo_UbuntuMake () {
addPPA ppa:ubuntu-desktop/ubuntu-make
}
#
# Cawbird
#
function addRepo_Cawbird () {
addKey "https://download.opensuse.org/repositories/home:IBBoard:cawbird/xUbuntu_18.04/Release.key"
addRepo cawbird.list \
"deb http://download.opensuse.org/repositories/home:/IBBoard:/cawbird/xUbuntu_18.04/ /"
}
#
# Font Manager
#
function addRepo_FontManager () {
addPPA ppa:font-manager/staging
}
#
# Flatpak
#
function addRepo_flatpak () {
addPPA ppa:alexlarsson/flatpak
}
#
# Belena Etcher
@ -537,6 +583,7 @@ function addRepo_Belena () {
# Wine HQ
#
function addRepo_WineHQ () {
addPPA ppa:cybermax-dexter/sdl2-backport
addKey "https://dl.winehq.org/wine-builds/winehq.key"
addRepo winehq.list \
"deb https://dl.winehq.org/wine-builds/ubuntu/ bionic main"
@ -718,14 +765,6 @@ function addRepo_Vidcutter () {
addPPA ppa:ozmartian/apps
}
#
# Geary
#
function addRepo_Geary () {
addPPA ppa:geary-team/releases
}
#
# Gimp / Gmic
#
@ -761,13 +800,6 @@ function addRepo_Deluge () {
addPPA ppa:deluge-team/ppa
}
#
# Corebird
#
function addRepo_Corebird () {
addPPA ppa:ubuntuhandbook1/corebird
}
#
# Sayonara
#
@ -942,9 +974,10 @@ function addRepo_ChromeStable () {
# Insync
#
function addRepo_Insync () {
addKey "https://d2t3ff60b2tol4.cloudfront.net/services@insynchq.com.gpg.key"
addKey "keyserver.ubuntu.com" \
"ACCAF35C"
addRepo insync.list \
"deb http://apt.insynchq.com/ubuntu bionic non-free contrib"
"deb http://apt.insync.io/ubuntu bionic non-free contrib"
}
#
@ -1066,7 +1099,7 @@ function addRepo_AndroidStudio () {
}
#-----------------------------------------------------------------------------#
# Package pre install functions list #
# Package pre install functions list #
#-----------------------------------------------------------------------------#
#
@ -1118,10 +1151,76 @@ mongodb;mongodb_PostTrtFct
qttools5-dev-tools;qt_PostTrtFct
plank;plank_PostTrtFct
androidstudio;android_PostTrtFct
nodejs8lts;nodejs8lts_PostTrtFct
nodejslts;nodejslts_PostTrtFct
angularcli;angularcli_PostTrtFct
dockerio;dockerio_PostTrtFct
megasync;megasync_PostTrtFct"
megasync;megasync_PostTrtFct
flatpak;flatpak_PostTrtFct
gcc8;gcc8_PostTrtFct
ruby-dev;ruby-dev_PostTrtFct"
#
# NPM Update
#
function nodejslts_PostTrtFct () {
printf "[NPM] set prefix in ~/.local "
printf "\n[NPM] set prefix in ~/.local\n" &>> $logFile
npm config set prefix /home/$myHomedir/.local &>> $logFile
ret_code=$?
retCode $ret_code
if [ `grep 'PATH=~/.local/bin/:$PATH' ~/.bashrc | wc -l` -gt 0 ]; then
printf "[NPM] add ~/.local/bin to PATH ... already added [ "$BOLDVERT"OK"$NORMAL" ] "
else
printf "[NPM] add ~/.local/bin to PATH "
printf "\n[NPM] add ~/.local/bin to PATH\n" &>> $logFile
echo 'PATH=~/.local/bin/:$PATH' | tee -a ~/.bashrc &>> $logFile
ret_code=$?
retCode $ret_code
fi
printf "[NPM] update npm "
printf "\n[NPM] update npm\n" &>> $logFile
npm i -g npm &>> $logFile
ret_code=$?
retCode $ret_code
}
#
# GEM / Ruby Dev
#
function ruby-dev_PostTrtFct () {
printf "[GEM] update --system "
printf "\n[GEM] update --system\n" &>> $logFile
sudo gem update --system &>> $logFile
ret_code=$?
retCode $ret_code
}
#
# GCC 8
#
function gcc8_PostTrtFct () {
runCmd "sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 70 --slave /usr/bin/g++ g++ /usr/bin/g++-7 --slave /usr/bin/gcov gcov /usr/bin/gcov-7" \
"adding GCC-7 as alternative"
runCmd "sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 80 --slave /usr/bin/g++ g++ /usr/bin/g++-8 --slave /usr/bin/gcov gcov /usr/bin/gcov-8" \
"adding GCC-8 as alternative by default"
}
#
# Flatpak
#
function flatpak_PostTrtFct () {
if which flatpak >/dev/null; then
printf "[FLATPAK] Adding Flathub repository "
printf "\n[FLATPAK] Adding Flathub repository\n" &>> $logFile
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo &>> $logFile
ret_code=$?
retCode $ret_code
fi
}
#
# MEGASync
@ -1160,18 +1259,6 @@ function angularcli_PostTrtFct () {
fi
}
#
# NodeJS 8 LTS
#
function nodejs8lts_PostTrtFct () {
if which /usr/local/bin/node >/dev/null; then
runCmd "sudo rm /usr/local/bin/node" \
"cleaning/removing legacy node files"
else
print "[INFO] nothing to clean, good :-)"
fi
}
#
# Android Env for adb, fastboot, ....
#

22
vars.sh
View file

@ -1,19 +1,19 @@
#------------------------------------------------------------------------------#
# Yggdrasil NG #
# compatibility : see documentation or man pages #
# author : Francois B. (Makotosan/Shakasan) #
# licence : GPLv3 #
# website : https://makotonoblog.be/ #
#------------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
# Yggdrasil NG #
# compatibility : see documentation or man pages #
# author : Francois B. (Makotosan/Shakasan) #
# licence : GPLv3 #
# website : https://makotonoblog.be/ #
#-----------------------------------------------------------------------------#
#------------------------------------------------------------------------------#
# Script's cons. and vars. #
#------------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
# Script's cons. and vars. #
#-----------------------------------------------------------------------------#
#
# app version number
#
version="0.5.1-b11"
version="0.5.2-b2"
#
# myHomedir is used in full paths to the homedir

View file

@ -1,11 +1,11 @@
#!/bin/bash
#------------------------------------------------------------------------------#
# Yggdrasil NG #
# compatibility : Mint 19, Ubuntu 18.04 #
# author : Francois B. (Makotosan/Shakasan) #
# licence : GPLv3 #
# website : https://makotonoblog.be/ #
#------------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
# Yggdrasil NG #
# compatibility : Mint 19, Ubuntu 18.04 #
# author : Francois B. (Makotosan/Shakasan) #
# licence : GPLv3 #
# website : https://makotonoblog.be/ #
#-----------------------------------------------------------------------------#
#
# include functions and vars from external files
@ -106,6 +106,7 @@ while getopts ":h,v,f,c,u,a,d,q,s,t,w,k,p" option; do
installBoostnotes
installTeamViewer13
installXnViewMP
installAppImageLauncher
;;
f) # full install
if [ $ygginitCount = false ]; then
@ -154,6 +155,7 @@ while getopts ":h,v,f,c,u,a,d,q,s,t,w,k,p" option; do
installBoostnotes
installTeamViewer13
installXnViewMP
installAppImageLauncher
;;
c) # install themes and icons
if [ $ygginitCount = false ]; then