Dvb script gui/inst code

Aus Linupedia.org
Version vom 12. Oktober 2008, 15:50 Uhr von Escho (Diskussion | Beiträge) (UnderConstruction+ Kommentaränderungen)
Wechseln zu: Navigation, Suche
Vom DVB zur DVD, die GUI: Anleitungen - Installation - GUI-Kommanderscript - Arbeitsscript - Dokumentation


Höhe=24px
Achtung dieser Artikel ist noch in Arbeit und dient vorläufig nur als Vorlage. Dieser Beitrag zu Linux oder der Abschnitt ist in Bearbeitung. Weitere Informationen findest du hier. Der Ersteller arbeitet an dem Beitrag oder Abschnitt und entsorgt den Wartungsbaustein spätestens 3 Tage nach der letzten Bearbeitung. Änderungen außer Rechtschreibkorrekturen ohne Absprache mit dem Urspungsautor sind möglichst zu vermeiden, solange dieser Baustein noch innerhalb der genannten Frist aktiviert ist.
#!/bin/bash

#++++++++++++++++++++++++++++++++++++++++++++++++++++++++BESCHREIBUNG +++++++++++++++++++++++++++++++++++++++++++++++++++++++

#Name: dvb_script_gui_installation
#Version: 0.0.2
#Erstellungsdatum: 12.10.2008
#Autor: escho (www.linux-club.de)
#Funktion: Installation und Initialisierung des Programms dvb_script_gui
#Benutzung auf eigene Gefahr

#°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°Initialisierung°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°

default ()
{
echo "Default-Einstellungen laden"
aufnahmeordner=~/Aufnahme #In "~/Aufnahme" wird nach den aufgenommenen Video-files gesucht
schablonenordner=~/Druckschablonen # Im Ordner "~/Druckschablonen" wird nach den Schablonen für den Direktdruck mit OpenOffice gsucht
clipordner=~/Videoclips #Das Verzeichnis "~/Videoclips" dient als Speicherort für die Videoclips
}

verzeichnisstruktur_inifiles ()
{
echo "Verzeichnisstruktur ini-file erzeugen"
mkdir ~/.dvb_script_gui.ini
touch ~/.dvb_script_gui.ini/fortschrittfenster
touch ~/.dvb_script_gui.ini/debugfenster
touch ~/.dvb_script_gui.ini/pfad_hauptverzeichnis
touch ~/.dvb_script_gui.ini/X.ini.film
touch ~/.dvb_script_gui.ini/aufnahmeordner
touch ~/.dvb_script_gui.ini/schablonenordner
touch ~/.dvb_script_gui.ini/X.ini.film
touch ~/.dvb_script_gui.ini/clipordner

mkdir ~/.dvb_script_gui.ini/hilfsprogramme
}

default_sichern ()
{
echo "Default-Einstellungen sichern"
echo ${aufnahmeordner} > ~/.dvb_script_gui.ini/aufnahmeordner
echo ${schablonenordner} > ~/.dvb_script_gui.ini/schablonenordner
echo ${clipordner} > ~/.dvb_script_gui.ini/clipordner
}

hauptverzeichnis_festlegen ()
{
echo "Auswahl des Hauptverzeichnisses"
auswahl=`kdialog --caption "Name des Hauptverzeichnisses eingeben" --inputbox ~/ DVB_Script_neu`
	if [ $? = 0 ]
	then
		hauptverzeichnis=~/`echo $auswahl | tr -d " "`
		if [ -e ${hauptverzeichnis} ]
		then
			kdialog --passivepopup "Verzeichnis existiert schon!
Das Verzeichnis löschen oder ein anderes Verzeichnis wählen!
Installation wird abgebrochen!" 60
			exit
		else
			echo ${hauptverzeichnis} > ~/.dvb_script_gui.ini/pfad_hauptverzeichnis
			return
		fi
		
	else
		kdialog -- error "Abbruch durch den Benutzer! Installation wird abgebrochen!"
	fi
}

verzeichnisstruktur_hauptfiles ()
{
echo "Erstellen der Haupt-Verzeichnisstruktur"

mkdir ${hauptverzeichnis}

mkdir ${hauptverzeichnis}/gui
touch ${hauptverzeichnis}/gui/guicode.kmdr

mkdir ${hauptverzeichnis}/script
touch ${hauptverzeichnis}/script/scriptcode.sh

mkdir ${hauptverzeichnis}/save
mkdir ${hauptverzeichnis}/screenshot

mkdir ${hauptverzeichnis}/temp
mkdir ${hauptverzeichnis}/temp/tmp1
mkdir ${hauptverzeichnis}/temp/tmp2
mkdir ${hauptverzeichnis}/temp/struktur

if [ ! -e ${aufnahmeordner} ] ; then mkdir ${aufnahmeordner} ; fi
if [ ! -e ${schablonenordner} ] ; then mkdir ${schablonenordner} ; fi
if [ ! -e ${clipordner} ] ; then mkdir ${clipordner} ; fi
}

ini_files ()
{
echo "X.ini für ProjectX erzeugen"
echo \
"# Application
Application.Agreement=1
Application.Language=de

# WindowPosition
WindowPosition.Main.Height=670
WindowPosition.Main.Width=866
WindowPosition.Main.X=500
WindowPosition.Main.Y=0

# OptionPanel
OptionPanel.NormalLog=0
OptionPanel.closeOnEnd=1" \
>~/.dvb_script_gui.ini/X.ini.film
}

hilfsprogramme ()
{
name[0]=mplex
name[1]=tcrequant
name[2]=dvdauthor
name[3]=ProjectX.jar
name[4]=normalize
name[5]=ffmpeg
name[6]=growisofs
name[7]=vlc
name[8]=mplayer

echo "Suche der Hilfsprogramme, kann etwas dauern!"
echo ""

for ((i=0 ; i<9 ; i++))
do
	touch ~/.dvb_script_gui.ini/hilfsprogramme/pfad[$i]
	pfad[i]=`cat ~/.dvb_script_gui.ini/hilfsprogramme/pfad[$i]`

	if [ ! -e ${pfad[i]}/${name[i]} ]
	then
		echo "${name[i]} wird gesucht"
		gefundene_pfade=`find /bin $HOME /opt /usr -type f -name ${name[i]} -printf "%h " 2>/dev/null`
		pfadzahl=`echo "$gefundene_pfade" | wc -w`

		case "$pfadzahl" in

			0)	kdialog -passivepopup "Das Programm wurde nicht gefunden. Bitte zuerst installieren." 60
				exit ;;

			1)	echo $gefundene_pfade > ~/.dvb_script_gui.ini/hilfsprogramme/pfad[$i] ;;

			*)	auswahl=`kdialog --caption "${name[i]}" --combobox "Bitte Pfad auswählen" $gefundene_pfade --default $gefundene_pfade`
				if [ $? = 0 ]
				then
					echo ${auswahl} > ~/.dvb_script_gui.ini/hilfsprogramme/pfad[$i]
				else
					kdialog -- passivepopup "Abbruch durch den Benutzer! Installation wird abgebrochen!" 60
					exit
				fi ;;
		esac
	fi
done
}

desktop_datei ()
{
echo "Desktop-Datei erzeugen in ~/Desktop"
echo \
"[Desktop Entry]
Comment[de]=
Comment=
Exec=kmdr-executor ${hauptverzeichnis}/gui/guicode.kmdr
GenericName[de]=
GenericName=
Icon=kcmperformance
MimeType=
Name[de]=
Name=
Path=
StartupNotify=true
Terminal=false
TerminalOptions=
Type=Application
X-DBUS-ServiceName=
X-DBUS-StartupType=
X-KDE-SubstituteUID=false
X-KDE-Username=
X-SuSE-translate=true" \
> ~/Desktop//DVB-Script
}

hinweis ()
{
echo ""
echo "Die Installation ist fertig. Nun müssen noch die Programmdateien an die richtigen Stellen kopiert werden."
echo "Wie das funktioniert und noch einiges mehr, das steht im LC-Wiki:"
echo "http://wiki.linux-club.de/opensuse/Dvb_script_gui/anleitung"
echo ""
echo "Viel Spass beim ausprobieren"

#Der auskommentierte Code dient der Programmerprobung durch den Autor.
#cp /home/daten/scripte/dvb_script_gui/Kommander/guicode.kmdr ${hauptverzeichnis}/gui/guicode.kmdr
#cp /home/daten/scripte/dvb_script_gui/Script/scriptcode.sh ${hauptverzeichnis}/script/scriptcode.sh
#chmod u+x ${hauptverzeichnis}/gui/guicode.kmdr
#chmod u+x ${hauptverzeichnis}/script/scriptcode.sh
}

#°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°Hauptprogramm°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°

echo "Installationsroutine für das DVB-Script" ; echo ""

default
verzeichnisstruktur_inifiles
default_sichern
hauptverzeichnis_festlegen
verzeichnisstruktur_hauptfiles
ini_files
hilfsprogramme
desktop_datei
hinweis

echo "" ; echo "Installation beendet"

kdialog --msgbox "fertig"