Commit 4210dfa7 authored by Gustav Geier's avatar Gustav Geier

Updated scripts

parent ffb8224f
......@@ -2,6 +2,11 @@
set -e
#options for GUI are kdialog zenity no
if [ -z "$GUI" ]; then
GUI=kdialog
fi
MY_DIR="$( readlink -f "$( dirname "${BASH_SOURCE[0]}" )" )"
HIVE_DIR="$MY_DIR/../hive/" #we assume here that the LIP install stick is mounted at /media/MultiBoot... better idea?
......@@ -100,25 +105,6 @@ preinstalledpkgs() {
done
}
askyesno() {
while true
do
read -n1 -p "$1 [j,n]"
echo
case "$REPLY" in
y|Y|j|J) return 0;;
n|N) return 1;;
*) echo 'Antworte bitte mit "j" für "Ja" oder "n" für "Nein"' ;;
esac
done
}
pressenter() {
echo $@
echo "Drücke <Enter> um fortzufahren (Strg-C zum Abbrechen)"
read
}
bright() {
# gruen
echo -ne "\033[1m$@\033[0m"
......@@ -138,42 +124,122 @@ warn() {
echo -e "\033[0m" # normal
}
err() {
echo
echo -ne "\033[31;7m" # rot
echo -n "$@"
echo -e "\033[0m" # normal
}
install_pkgs() {
#ACHTUNG: nicht vorausgewählte Packete werden _nie_ installiert!
local arg=$3[@]
pkglist=$(preinstalledpkgs $3)
if [ -n "$pkglist" ]; then
apt-install $pkglist
ok "$pkglist installiert"
else
ok "Keine Packete installiert"
fi
}
if [ -z "$NOGUI" ]; then
#overwrite functions with graphical replacements
askyesno() {
zenity --question --text "$@" 2> /dev/null
}
err() {
zenity --error --text "$@" 2> /dev/null
}
pressenter() {
zenity --info --text "$@" 2> /dev/null
}
fi
case "$GUI" in
no)
askyesno() {
while true
do
read -n1 -p "$1 [j,n]"
echo
case "$REPLY" in
y|Y|j|J) return 0;;
n|N) return 1;;
*) echo 'Antworte bitte mit "j" für "Ja" oder "n" für "Nein"' ;;
esac
done
}
pressenter() {
echo $@
echo "Drücke <Enter> um fortzufahren (Strg-C zum Abbrechen)"
read
}
err() {
echo
echo -ne "\033[31;7m" # rot
echo -n "$@"
echo -e "\033[0m" # normal
}
install_pkgs() {
#ACHTUNG: nicht vorausgewählte Packete werden _nie_ installiert!
local arg=$3[@]
pkglist=$(preinstalledpkgs $3)
if [ -n "$pkglist" ]; then
apt-install $pkglist
ok "$pkglist installiert"
else
ok "Keine Packete installiert"
fi
}
;;
zenity)
askyesno() {
zenity --question --text "$@" 2> /dev/null
}
err() {
zenity --error --text "$@" 2> /dev/null
}
pressenter() {
zenity --info --text "$@" 2> /dev/null
}
install_pkgs() {
local pkglist=$3[@]
INSTALL=$(zenity --list --title "$1" --text "$2" --checklist --separator=" " --width=786 --height=400 --column "Installieren?" --column "Packet" --column "Beschreibung" "${!pkglist}" 2> /dev/null || true)
if [ -n "$INSTALL" ]; then
apt-install $INSTALL
ok "$INSTALL installiert"
else
ok "Keine Packete installiert"
fi
}
;;
kdialog)
askyesno() {
kdialog --yesno "$@" 2> /dev/null
}
err() {
kdialog --error "$@" 2> /dev/null
}
pressenter() {
kdialog --msgbox "$@" 2> /dev/null
}
install_pkgs() {
local pkglist=$3[@]
local nlist=""
local n=0
local tag=""
local text=""
local use=""
for e in $pkglist; do
case n in
0)
use="$e"
n=1
;;
1)
tag="$e"
n=2
;;
2)
text="$e"
nlist="$nlist $tag \"$tag: $text\" $use"
n=0
;;
esac
done
INSTALL=$(kdialog --width=786 --height=400 --title "$1" --checklist $nlist 2> /dev/null || true)
if [ -n "$INSTALL" ]; then
apt-install $INSTALL
ok "$INSTALL installiert"
else
ok "Keine Packete installiert"
fi
}
;;
*)
echo "Ungültige GUI Option '$GUI'. Möglich Werte sind 'kdialog', 'zenity' oder 'no'"
exit 1
;;
esac
# Verbose error trapping
showerr() {
......@@ -185,24 +251,6 @@ apt-install() {
apt-get install --quiet -y --force-yes $@
}
if [ -z "$NOGUI" ]; then
#graphical installations
install_pkgs() {
local pkglist=$3[@]
INSTALL=$(zenity --list --title "$1" --text "$2" --checklist --separator=" " --width=786 --height=400 --column "Installieren?" --column "Packet" --column "Beschreibung" "${!pkglist}" 2> /dev/null || true)
if [ -n "$INSTALL" ]; then
apt-install $INSTALL
ok "$INSTALL installiert"
else
ok "Keine Packete installiert"
fi
}
fi
install_common() {
install_pkgs "Allg. Packete installieren?" "Programme, die der OSAK/die ALUG für sinnvoll hält, sind bereits zur Installation vorselektiert.\nWenn du keine Packete aus der Liste installieren willst, einfach Abbrechen.\nBitte beachten: Das LIP-Script deinstalliert keine Packete, insbesondere also keine Packete die in einem früheren Lauf aktiv waren,\nund diesmal nicht ausgewählt sind!" COMMON_PKGS
}
......
......@@ -3,6 +3,9 @@ set -e
#find device
DEV="$(blkid -t "LABEL=MultiBoot" -o device | head -n1 || echo '')"
if [ -z "$DEV" ]; then
DEV="$(blkid -t "LABEL=MULTIBOOT" -o device | head -n1 || echo '')"
fi
PS3="[1,2,3]<Enter>: "
while [ -z "$DEV" ]; do
......@@ -14,6 +17,9 @@ while [ -z "$DEV" ]; do
case $i in
"Stick ist jetzt gesteckt")
DEV="$(blkid -t "LABEL=MultiBoot" -o device | head -n1 || echo '')"
if [ -z "$DEV" ]; then
DEV="$(blkid -t "LABEL=MULTIBOOT" -o device | head -n1 || echo '')"
fi
;;
"Ohne Stick weitermachen")
DEV='-nomount-'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment