Skip to content
Snippets Groups Projects
Select Git revision
  • c1625a8963123fd2685e99e33298b93c29e7ae82
  • master default
  • lip-21w
3 results

linuxparty.sh

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    linuxparty.sh 4.22 KiB
    #!/bin/bash
    
    set -e
    
    # Root pruefen 
    
    if [ x$EUID != x0 ]
    then
      echo "Du bist nicht ROOT ... verwende \"sudo bash $0\" !"
      exit 1
    fi
    
    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
    }
    
    ok() {
    	echo
    	echo -ne "\033[32;7m"    # gruen
    	echo -n "$@"
    	echo -e "\033[0m"       # normal
    }
    
    warn() {
    	echo
    	echo -ne "\033[33;7m"    # gelb
    	echo -n "$@"
    	echo -e "\033[0m"       # normal
    }
    
    err() {
    	echo
    	echo -ne "\033[31;7m"    # rot
    	echo -n "$@"
    	echo -e "\033[0m"       # normal
    }
    
    # Verbose error trapping
    showerr() {
    	err "Bei der Installation ist ein Fehler aufgetreten. Frage einen Helfer."
    }
    trap showerr ERR
    
    # DEBUG-Modus:
    #apt-get() {
    #	echo "APT-GET $@"
    #}
    #/ DEBUG-Modus:
    
    # System absichern
    if askyesno "Netzwerk: Soll die Ubuntu Firewall (ufw/gufw) aktiviert werden ?"
    then
    	ufw enable
    	apt-get --quiet install -y gufw
    	ok "Firewall aktiviert, benutze 'gufw' um die Einstellungen der Firewall zu verändern"
    fi
    
    #Medibuntu einbinden
    
    if askyesno "Sollen die Medibuntu-Paketquellen hinzugefügt werden ?"
    then
    	wget --output-document=/etc/apt/sources.list.d/medibuntu.list http://www.medibuntu.org/sources.list.d/$(lsb_release -cs).list && apt-get --quiet update && apt-get --yes --quiet --allow-unauthenticated install medibuntu-keyring && apt-get --quiet update
    	apt-get --quiet install -y app-install-data-medibuntu apport-hooks-medibuntu
    	apt-get --quiet install -y non-free-codecs
    	apt-get --quiet install -y libdvdread4
    	/usr/share/doc/libdvdread4/install-css.sh
    	apt-get --quiet install -y libdvdcss2 libxine1-ffmpeg gxine mencoder
    	apt-get --quiet install -y ffmpeg
    	apt-get --quiet install -y vlc mplayer
    	ok "DVDs abspielen ist nun möglich; der VLC Player und mplayer sind installiert worden"
    else
    	echo "Es wurde nichts installiert"
    fi
    
    #Allgemeine Programme, Codecs, etc. installieren (VPN, LaTeX, gcc, Flash, unrar...)
    
    echo
    echo "Programme, die für alle Fachrichtungen interressant sind (VPN, LaTeX, Flash, unrar, etc.)"
    if askyesno "Sollen diese Programme installiert werden ?"
    then
    	apt-get -y --quiet install ubuntu-restricted-extras
    	ok "Codec Installation abgeschlossen"
    	apt-get install synaptic pwgen
    	ok "Installation der System-Utilities abgeschlossen"
    	apt-get install -y build-essential gcc g++ make automake vpnc network-manager-vpnc
    	apt-get install texlive texlive-doc-de texlive-latex-extra texlive-lang-german
    	ok "Development Programme, VPN und LaTeX abgeschlossen"
    else
    	echo "Es wurde nichts installiert"
    fi
    
    #Fachrichtung wählen
    
    echo
    echo "Auswahl fachspezifischer Software. Wähle deine Fachrichtung:"
    
    (   # Diese Subshell setzt PS3 nur lokal
    PS3="Deine Auswahl [1,2,3,4,5]<Enter>: "
    select fach in "Informatik" "Mathematik" "Physik" "<anderes Fach>" "<keine Spezial-Software installieren>"
    do
      case "$fach" in
        "") echo "Bitte wähle entsprechend deiner Fachrichtung eine Zahl von 1 bis 4 aus, tippe sie ein und drücke dann <Enter>"
    	;;
        Informatik)
    	apt-get --quiet install -y default-jdk eclipse hugs swi-prolog
    	ok "Java, Haskell, Prolog und Eclipse wurden installiert"
    	break
    	;;
        Physik)
    	wget http://www.fsmpi.rwth-aachen.de/apt/osak@fsmpi.rwth-aachen.de.gpg.key -O fsmpi.key
    	apt-key add fsmpi.key
    	rm fsmpi.key
    	echo "deb http://www.fsmpi.rwth-aachen.de/apt/ oneiric main" > /etc/apt/sources.list.d/fsmpi-root.list
    	apt-get update
    	apt-get --quiet install -y root-system libroot-core-dev libroot-bindings-python-dev
    	echo "ROOT wurde installiert"
    	apt-get --quiet install -y python python-numpy python-simpy python-scipy python-matplotlib ipython python-dev gnuplot wxmaxima kmplot
    	ok "Python (inkl. scipy und numpy), gnuplot, WxMaxima und KMplot wurden installiert"
    	break
    	;;
        Mathematik)
    	warn "Bitte wende dich an deine Professoren - die Faschschaft I/1 könnte nicht klären," \
    "welche (freie) Spezial-Software Mathematiker üblicherweise benutzen."
    	break
    	;;
        "<anderes Fach>")
    	echo
    	echo "Für andere Fächer gibt es keine allgemeine Software-Empfehlung. Frage einen Helfer."
    	break
    	;;
        "<keine Spezial-Software installieren>")
    	break ;;
      esac
    done
    )
    
    echo
    echo "Wenn Du Software für eine weitere Fachrichung installieren möchtest, starte $0 erneut."
    #end;