summaryrefslogtreecommitdiffstats
path: root/linux/bin/erzeuge_installation/installation.1
diff options
context:
space:
mode:
Diffstat (limited to 'linux/bin/erzeuge_installation/installation.1')
-rw-r--r--linux/bin/erzeuge_installation/installation.1290
1 files changed, 0 insertions, 290 deletions
diff --git a/linux/bin/erzeuge_installation/installation.1 b/linux/bin/erzeuge_installation/installation.1
deleted file mode 100644
index 171ec65..0000000
--- a/linux/bin/erzeuge_installation/installation.1
+++ /dev/null
@@ -1,290 +0,0 @@
-#!/bin/bash
-# Copyright 2008 Pascal Hauck <pascal.hauck@web.de>
-# Distributed under the terms of the GNU General Public License v3
-
-# ======= Installation =======
-# Um NEO auf Ihrem System zu (dauerhaft) zu installieren, genügt es, dieses Skript auszuführen
-# z.B. in der Konsole die folgenden beiden Zeilen eingeben:
-# chmod u+x installation
-# ./installation
-# 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, 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, 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
-# 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.
-# ==============================
-
-
-# colours in the Bash
-B="\033[30m"
-R="\033[31m"
-G="\033[32m"
-
-datei() { # cut files from the complete file ›installiere_neo‹
- grep -A10000 "#neo: $1 --- Beginn" installation | grep -B10000 "#neo: $1 --- Ende" | grep -v "#neo:"
-}
-
-erzeuge() { # create directories, files and entries
- case $1 in
- d) # directory
- if [ -d $2 ] # if already exists
- then
- echo -e "Das Verzeichnis ${R}$2${B} gibt es bereits – wird verwendet…"
- else
- echo -e "Erstelle $2"
- mkdir $2 # create
- fi
- ;;
- f) # file
- if [ -f $3 ] # if already exists
- then
- echo -e "Die Datei ${R}$3${B} gibt es bereits – soll die bestehende Datei überschrieben werden? \c"; read -p "[J,N] " -e overwrite
- if [ "$overwrite" = "J" ] # overwrite?
- then
- echo "Datei $3 wird überschrieben!"
- rm -f $3 # remove if user wants to overwrite
- else
- echo -e "Datei ${R}$3${B} gibt es schon → Installation abgebrochen"
- exit
- fi
- fi
- echo "Erstelle Datei $3" # create
- datei $2 > $3
- ;;
- l) # soft link
- if [ -d $HOME/bin/ ] # $HOME/bin has to exist!
- then
- echo "Verzeichnis $HOME/bin/ gefunden"
- else
- echo -e "Verzeichnis ${R}$HOME/bin${B} wird erwartet, ist aber nicht vorhanden"
- echo "Außerdem wird erwartet, dass /$HOME/bin in der Umgebungsvariable \$PATH ist"
- echo "Istallation wird abgebrochen."
- exit
- fi
- if [ -f $HOME/bin/$2 ] # if already exists
- then
- echo -e "Datei ${R}$HOME/bin/$2${B} gibt es bereits – soll die bestehende Datei überschrieben werden? \c"; read -p "[J,N] " -e overwrite
- if [ "$overwrite" = "J" ] # overwrite?
- then
- echo "Datei $2 wird überschrieben!"
- rm -f $HOME/bin/$2 # remove if user wants to overwrite
- else
- echo -e "Datei ${R}$2${B} gibt es schon → Installation abgebrochen"
- exit
- fi
- fi
- echo "Erstelle Link $HOME/bin/$2"
- ln -s $HOME/neo/$2 $HOME/bin # create
- ;;
- esac
-}
-
-entferne(){ # remove files for uninstall option
- echo "Entferne $1"
- rm $1 || echo -e "${R}Konnte die Datei $1 nicht entfernen!${B}"
-}
-
-deinstall() { #remove all directories, files and entries made by ›installiere_neo‹
- 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() { # remove the entry in $HOME/.profile
- grep -v "^\# NEO:$" $HOME/.profile | grep -v "asdf \# mit" > $HOME/profile.neo.tmp
- rm /$HOME/.profile
- mv $HOME/profile.neo.tmp $HOME/.profile
-}
-
-
-# *** main program ***
-clear
-echo
-echo " *** NEO – Ergonomie und Zeichenvielfalt ***"
-echo
-echo
-echo " Ihr System wird untersucht…"
-echo
-
-# check for an existing neo configuration
-if [ -f "${NEO_CONFIG}" ]; then
- . "${NEO_CONFIG}" || die "Failed to source ${NEO_CONFIG}"
-elif [ -f "${HOME}"/.neorc ]; then
- . "${HOME}"/.neorc || die "Failed to source ${HOME}/.neorc"
-elif [ -f /etc/neo.conf ]; then
- . /etc/neo.conf || die "Failed to source /etc/neo.conf"
-else
-
-# no configuration file found → install NEO
- 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 ] # choose between QWERTZ or NEO as standard
- do # switch with ›asdf‹ and ›uiae‹
- 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
-
-# *** main installation process ***
-# creating a directory $HOME/neo with NEO files
-# linking ›asdf‹ and ›uiae‹ scripts to $HOME/bin
- erzeuge d $HOME/neo
- erzeuge f xmodmap $HOME/neo/neo_de.xmodmap
- erzeuge f console $HOME/neo/neo.map
- erzeuge f asdf $HOME/neo/asdf
- chmod u+x $HOME/neo/asdf
- erzeuge l asdf
- erzeuge f uiae $HOME/neo/uiae
- chmod u+x $HOME/neo/uiae
- erzeuge l uiae
- erzeuge f neorc $HOME/.neorc
-
-# entry in $HOME/.profile with NEO or QWERTZ as standard keyboard layout after login
- 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
-
-# starting NEO layout
- echo
- echo "Die Belegung wird nun auf NEO geändert…"
- cd $HOME/neo
- ./asdf xmodmap
- echo -e "Um zu QWERTZ zurückzukehren, genügt es, die Abrollbewegung ${G}uiae${B} einzugeben."
- exit
-fi
-
-
-# configuration file found → delete/deinstall options
- 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 ] # choose between deleting NEO as standard layout or delete NEO at all
- do # if deleted as standard layout only, ›asdf‹ is still working
- 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 # full deinstallation
- ;;
- 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 # alter the entry in $HOME/.profile; first: remove old entry
- echo >> $HOME/.profile # write the new entry
- 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
-