weitere Verbesserung am Installationsskript – unterschiedliche Optionen, auch eine Deinstallation möglich
This commit is contained in:
parent
89439b36ab
commit
68bb782adf
@ -10,26 +10,20 @@
|
||||
# Nun ist NEO auf Ihrem System dauerhaft installier
|
||||
# Ein Wechsel zurück zu QWERTZ ist jederzeit mit ›uiae‹ leicht möglich
|
||||
|
||||
# Wenn NEO nicht automatisch nach dem Login gestartet werden soll, genügt es, die beiden Zeilen
|
||||
# # NEO:
|
||||
# asdf
|
||||
# in der Datei $HOME/.profile zu löschen
|
||||
# (siehe dazu auch den Abschnitt ›Deinstallation‹
|
||||
# Wenn NEO nicht automatisch nach dem Login gestartet werden soll, genügt es, vor die Zeile, die mit
|
||||
# asdf # mit einem # am Zeilenanfang
|
||||
# beginnt und sich in der Datei $HOME/.profile befinden, ein # zu setzen
|
||||
# ==============================
|
||||
|
||||
|
||||
# ======= Deinstallation =======
|
||||
# Um NEO wieder zu deinstallieren muss vor allem der Abschnitt ›#NEO:‹ in der .profile entfernt werden (2 Zeilen)
|
||||
# Das Verzeichnis $HOME/neo und die Datei $HOME/.neorc können einfach gelöscht werden
|
||||
# Achtung: dieses Skript kann NICHT dazu genutzt werden, NEO wieder zu deinstallieren oder QWERTZ wieder
|
||||
# zur Standardbelegung zu machen.
|
||||
# Um NEO wieder zu deinstallieren, kann das Skript ›installiere_neo‹ ein weiteres Mal aufgerufen werden
|
||||
# ==============================
|
||||
|
||||
|
||||
# ======= Bemerkungen ==========
|
||||
# Dieses Skript ist eine rudimentäre Installation. Derzeit gibt es keine Konfigurationsmöglichkeit.
|
||||
# Es wird immer das Standardverzeichnis $HOME/neo verwendet
|
||||
# Bei mehrfacher Anwendung (trozt Warnung) werden Zeilen in der .profile doppelt erzeugt.
|
||||
# Es gibt keine graphische Installation
|
||||
# Dennoch kann dieses Skrip helfen, NEO auf eine einfache Weise zu installieren.
|
||||
# Dieses Skript wird mit der Zeit verbessert werden.
|
||||
@ -98,6 +92,40 @@ erzeuge() {
|
||||
esac
|
||||
}
|
||||
|
||||
entferne(){
|
||||
echo "Entferne $1"
|
||||
rm $1 || echo -e "${R}Konnte die Datei $1 nicht entfernen!${B}"
|
||||
}
|
||||
|
||||
deinstall() { #remove all NEO-directories and files
|
||||
echo
|
||||
echo
|
||||
rmfromprofile
|
||||
entferne $HOME/.neorc
|
||||
entferne $HOME/bin/uiae
|
||||
entferne $HOME/neo/uiae
|
||||
entferne $HOME/bin/asdf
|
||||
entferne $HOME/neo/asdf
|
||||
entferne $HOME/neo/neo.map
|
||||
entferne $HOME/neo/neo_de.xmodmap
|
||||
echo "Entferne $HOME/neo/"
|
||||
rmdir $HOME/neo/ || echo -e "${R}Konnte das Verzeichenis $HOME/neo/ nicht entfernen!${B}"
|
||||
}
|
||||
|
||||
rmfromprofile() {
|
||||
grep -v "^\# NEO:$" $HOME/.profile | grep -v "asdf \# mit" > $HOME/profile.neo.tmp
|
||||
rm /$HOME/.profile
|
||||
mv $HOME/profile.neo.tmp $HOME/.profile
|
||||
}
|
||||
|
||||
clear
|
||||
echo
|
||||
echo " *** NEO – Ergonomie und Zeichenvielfalt ***"
|
||||
echo
|
||||
echo
|
||||
echo " Ihr System wird untersucht…"
|
||||
echo
|
||||
|
||||
if [ -f "${NEO_CONFIG}" ]; then
|
||||
. "${NEO_CONFIG}" || die "Failed to source ${NEO_CONFIG}"
|
||||
elif [ -f "${HOME}"/.neorc ]; then
|
||||
@ -105,7 +133,58 @@ elif [ -f "${HOME}"/.neorc ]; then
|
||||
elif [ -f /etc/neo.conf ]; then
|
||||
. /etc/neo.conf || die "Failed to source /etc/neo.conf"
|
||||
else
|
||||
echo "NEO mit xmodmap wird installiert…"
|
||||
|
||||
echo "Bislang gibt es kein vollständig konfiguriertes NEO auf Ihrem System"
|
||||
echo
|
||||
echo "Sie haben folgende Möglichkeiten:"
|
||||
echo
|
||||
echo " [1] NEO nur testen"
|
||||
echo " Sie haben die Möglichkeit, NEO zu Testen, ihre Standardbelegung (in der Regel QWERTZ) bleibt erhalten"
|
||||
echo
|
||||
echo
|
||||
echo " [2] NEO als Standardbelegung"
|
||||
echo " Mit dieser Option wird NEO die neue Standardbelegung für diesen Benutzer und nach (nicht vor!) dem"
|
||||
echo " Login automatisch aktiviert"
|
||||
echo
|
||||
echo
|
||||
echo -e " Wenn ${G}installiere_neo${B} ein weiteres Mal aufgerufen wird, haben weitere Optionen – z.B. die Deinstallation von NEO"
|
||||
echo
|
||||
|
||||
installoption=""
|
||||
while [ ! $installoption ]
|
||||
do
|
||||
echo
|
||||
read -p "Wählen Sie eine Option [1,2]: " -e installoption
|
||||
case $installoption in
|
||||
2)
|
||||
echo
|
||||
echo "Nach dem Login wird NEO die Standardbelegung sein."
|
||||
echo -e "Um dies zu ändern, kann ${G}installiere_neo${B} ein weiteres Mal ausgeführt werden."
|
||||
echo
|
||||
read -n1 -p "Drücke eine Taste um fortzufahren oder STRG+C zum Abbrechen"
|
||||
;;
|
||||
1)
|
||||
echo
|
||||
echo "Das Standardlayout wird nich verändert."
|
||||
echo -e "Zu NEO kann man jederzeit mit der Abrollbewegung ${G}asdf${B} wechseln."
|
||||
echo
|
||||
read -n1 -p "Drücke eine Taste um fortzufahren oder STRG+C zum Abbrechen"
|
||||
;;
|
||||
*)
|
||||
echo
|
||||
echo "Bitte wählen Sie die Optionen 1, um NEO zu testen oder 2, um NEO zur Standardbelegung zu machen"
|
||||
installoption=""
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
|
||||
echo
|
||||
echo
|
||||
echo " Installation von NEO mit xmodmap wird gestartet…"
|
||||
echo
|
||||
echo
|
||||
|
||||
erzeuge d $HOME/neo
|
||||
erzeuge f xmodmap $HOME/neo/neo_de.xmodmap
|
||||
erzeuge f console $HOME/neo/neo.map
|
||||
@ -117,43 +196,88 @@ else
|
||||
erzeuge l uiae
|
||||
erzeuge f neorc $HOME/.neorc
|
||||
|
||||
layout=""
|
||||
while [ ! $layout ]
|
||||
do
|
||||
read -p "Soll NEO oder QWERTZ die Standardbelegung nacht dem Login sein? [N,Q] " -e layout
|
||||
case $layout in
|
||||
N)
|
||||
echo
|
||||
echo "Nach dem Login wird NEO die Standardbelegung sein."
|
||||
echo "Um dies zu ändern bitte die Kurzanleitung am Anfang dieses Skriptes lesen."
|
||||
datei profile.neo > $HOME/neo/neo.profile
|
||||
cd $HOME/neo
|
||||
cat neo.profile >> $HOME/.profile
|
||||
rm ./neo.profile
|
||||
;;
|
||||
Q)
|
||||
echo
|
||||
echo "Das Standardlayout wird nich verändert."
|
||||
echo -e "Zu NEO kann man jederzeit in der Konsole mit der Abrollbewegung ${G}asdf${B} wechseln."
|
||||
# datei profile.qwertz > $HOME/neo/neo.profile
|
||||
;;
|
||||
*)
|
||||
echo
|
||||
echo "Bitte wählen Sie zwischen N für NEO und Q für QWERTZ"
|
||||
layout=""
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
case $installoption in
|
||||
2)
|
||||
echo
|
||||
echo "Nach dem Login wird NEO die Standardbelegung sein."
|
||||
echo -e "Um dies zu ändern, kann ${G}installiere_neo${B} ein weiteres Mal ausgeführt werden."
|
||||
rmfromprofile
|
||||
datei profile.neo > $HOME/neo/neo.profile
|
||||
cat $HOME/neo/neo.profile >> $HOME/.profile
|
||||
rm $HOME/neo/neo.profile
|
||||
;;
|
||||
1)
|
||||
echo
|
||||
echo "Das Standardlayout wird nich verändert."
|
||||
echo -e "Zu NEO kann man jederzeit mit der Abrollbewegung ${G}asdf${B} wechseln."
|
||||
rmfromprofile
|
||||
datei profile.qwertz > $HOME/neo/neo.profile
|
||||
cat $HOME/neo/neo.profile >> $HOME/.profile
|
||||
rm $HOME/neo/neo.profile
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
cd $HOME/neo
|
||||
echo
|
||||
echo "Die Belegung wird nun auf NEO geändert…"
|
||||
./asdf xmodmap
|
||||
echo -e "Um zu QWERTZ zurückzukehren, genügt es, die Abrollbewegung ${G}uiae${B} in die Konsole einzugeben."
|
||||
echo -e "Um zu QWERTZ zurückzukehren, genügt es, die Abrollbewegung ${G}uiae${B} einzugeben."
|
||||
exit
|
||||
fi
|
||||
|
||||
echo "Es scheint schon eine Konfiguration für NEO auf Ihrem System zu geben."
|
||||
echo -e "Wenn sie sicher sind, NEO über dieses Skript installieren zu wollen, löschen Sie zuvor ${R}$HOME/.neorc${B} und ${R}/etc/neo.conf${B}"
|
||||
|
||||
echo "Es gibt auf Ihrem System bereits eine Konfiguration für NEO."
|
||||
echo
|
||||
echo "Sollte NEO nur für diesen Benutzer installiert sein, haben folgende Möglichkeiten:"
|
||||
echo
|
||||
echo " [1] NEO zukünftig nicht mehr als Standardbelegung"
|
||||
echo -e " NEO wird nicht länger direkt nach dem Login zur Verfügung stehen, wohl aber nach Eingabe von ${G}adsf${B}."
|
||||
echo
|
||||
echo
|
||||
echo " [2] NEO vollständig vom System entfernen"
|
||||
echo " Dieso Option entfernt alle zuvor angelegten Verzeichnisse, Datein und Einträge zur NEO-Belegung"
|
||||
echo
|
||||
echo
|
||||
echo " Diese Optionen funktionieren nur dann zuverlässig, wenn NEO auch mit ${G}installiere_neo${B} installiert wurde"
|
||||
echo
|
||||
|
||||
deinstalloption=""
|
||||
while [ ! $deinstalloption ]
|
||||
do
|
||||
echo
|
||||
read -p "Wählen Sie eine Option [1,2]: " -e deinstalloption
|
||||
case $deinstalloption in
|
||||
2)
|
||||
echo
|
||||
echo -e "Alle zuvor von ${G}installiere_neo${B} vorgenommen Änderungen am System werden gelöscht!"
|
||||
echo
|
||||
read -n1 -p "Drücke eine Taste um fortzufahren oder STRG+C zum Abbrechen"
|
||||
deinstall
|
||||
;;
|
||||
1)
|
||||
echo
|
||||
echo "NEO wird als Standardbelegung entfernt"
|
||||
echo -e "Zu NEO kann man weiterhin jederzeit mit der Abrollbewegung ${G}asdf${B} wechseln."
|
||||
echo
|
||||
read -n1 -p "Drücke eine Taste um fortzufahren oder STRG+C zum Abbrechen"
|
||||
echo
|
||||
rmfromprofile
|
||||
echo >> $HOME/.profile
|
||||
echo "# NEO:" >> $HOME/.profile
|
||||
echo "# asdf # mit einem # am Zeilenanfang bleibt QWERTZ das Standardlayout, sonst ist es NEO" >> $HOME/.profile
|
||||
;;
|
||||
*)
|
||||
echo
|
||||
echo "Bitte wählen Sie die Optionen 1, um NEO nicht länger als Standardbelegung zu nutzen"
|
||||
echo " oder 2, um NEO vollständig zu entfernen"
|
||||
deinstalloption=""
|
||||
;;
|
||||
esac
|
||||
done
|
||||
exit
|
||||
|
||||
#neo: xmodmap --- Beginn
|
||||
!! ~/.xmodmap
|
||||
!!
|
||||
@ -1427,12 +1551,12 @@ NEO_CONSOLE_KEYMAP="$HOME/neo/neo" # if necessary add „.map“
|
||||
#neo: neorc --- Ende
|
||||
#neo: profile.neo --- Beginn
|
||||
|
||||
# Neo:
|
||||
asdf xmodmap # mit einem # am Zeilenanfang bleibt QWERTZ das Standardlayout, sonst ist es NEO
|
||||
# NEO:
|
||||
asdf # mit einem # am Zeilenanfang bleibt QWERTZ das Standardlayout, sonst ist es NEO
|
||||
#neo: profile.neo --- Ende
|
||||
#neo: profile.qwertz --- Beginn
|
||||
|
||||
# Neo:
|
||||
# asdf xmodmap # mit einem # am Zeilenanfang bleibt QWERTZ das Standardlayout, sonst ist es NEO
|
||||
# NEO:
|
||||
# asdf # mit einem # am Zeilenanfang bleibt QWERTZ das Standardlayout, sonst ist es NEO
|
||||
#neo: profile.qwertz --- Ende
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user