Installscript

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Fehler)
(Entfernen von "Vorraussetzungen": checkreq scheint es nicht mehr zu geben, ebensowenig einen ähnlichen Befehl)
 
(206 dazwischenliegende Versionen von 85 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:
 
Das Installscript ist ein Tool, mit dem die üblichen Installationsschritte durch eine Sammlung von Skripten erledigt werden.
 
Das Installscript ist ein Tool, mit dem die üblichen Installationsschritte durch eine Sammlung von Skripten erledigt werden.
  
==Bilder==
+
{|
[[Bild:Main_1.png|thumb|none|''dialog'']]
+
|[[Bild:installscript-0.png|thumb|none|''0.5.8'']]
 +
|[[Bild:installscript-1.jpg|thumb|none|''0.9.8.7'']]
 +
|}
  
==Voraussetzungen==
+
==Webvideo==
* Entwicklungsumgebung
+
Mal eine Installation, als {{vdrportal board|85149|Webvideo}} unter {{wikipedia|openSuSE}} 11.1 auf der {{wikipedia|Konsole}}, mit ''geschnitten''.
  
==Anleitung==
+
==Download==
* [[installscript-manual-de|'''Manual''']]
+
bash> wget ftp://ftp.tvdr.de/vdr/Tools/vdr-install-script-current.run
<!-- * [[installscript-manual-en|'''Manual''']] -->
+
  
 +
==Anleitung==
 
===Vorab===
 
===Vorab===
 
* Linux-Grundwissen erforderlich.
 
* Linux-Grundwissen erforderlich.
Zeile 19: Zeile 21:
 
Normal werden die lokalen (''locale'') Einstellungen uebernommen.
 
Normal werden die lokalen (''locale'') Einstellungen uebernommen.
  
Sprich ist die Konsole in Deutsch ('''LC_MESSAGES="de_DE@euro"'''), sind auch die Scripts in Deutsch, sollte das nicht der Fall sein.
+
Sprich ist die Konsole in Deutsch ('''LC_MESSAGES="de_DE.UTF8"''' oder '''de_DE.iso885915@euro'''), sind auch die Scripts in Deutsch, sollte das nicht der Fall sein.
  
 
Einfach, vorm ausfuehren der Scripts.
 
Einfach, vorm ausfuehren der Scripts.
  
  bash> export LANG=de_DE@euro
+
  bash> export LANG=de_DE.UTF8
  
 
Alternativ.
 
Alternativ.
  
  bash> LANG=de_DE@euro sh setup.sh
+
  bash> LANG=de_DE.UTF8 sh setup.sh
  bash> LANG=de_DE@euro sh vdr-install-script-current.run
+
  bash> LANG=de_DE.UTF8 sh vdr-install-script-current.run
  
 
===Skripte anpassen===
 
===Skripte anpassen===
Zeile 34: Zeile 36:
  
 
<pre>
 
<pre>
bash> sh vdr-install-script-current.run --noexec --target /tmp/VDRtmp
+
bash> sh vdr-install-script-current.run --noexec --target /tmp/vdr
bash> cd /tmp/VDRtmp/setup
+
bash> cd /tmp/vdr/setup
 
</pre>
 
</pre>
  
 
Folgende Konfigurationsdateien sollte man sich an seine Bedürfnisse anpassen (Beschreibungen befinden sich unter den Links...).
 
Folgende Konfigurationsdateien sollte man sich an seine Bedürfnisse anpassen (Beschreibungen befinden sich unter den Links...).
  
<code>config/[[installscript-setup.conf|'''setup.conf''']]</code><br>
+
+-- [[Bild:Folder.png]] $DISDIR
<code>config/[[installscript-commands.conf|'''commands.conf''']]</code><br>
+
    +-- [[Bild:Folder.png]] setup
<code>config/[[installscript-reccmds.conf|'''reccmds.conf''']]</code><br>
+
        +-- [[Bild:Folder.png]] config
<code>config/[[installscript-make.conf|'''make.conf''']]</code><br>
+
            |--+ [[installscript-different.conf|'''different.conf''']]
<code>config/[[installscript-kernel.conf|'''kernel.conf''']]</code><br>
+
            |--+ [[installscript-setup.conf|'''setup.conf''']]
<code>config/[[installscript-configure.conf|'''configure.conf''']]</code><br>
+
            |--+ [[installscript-make.conf|'''make.conf''']]
<code>config/[[installscript-marks2pts.conf|'''marks2pts.conf''']]</code><br>
+
            |--+ [[installscript-modules.conf|'''modules.conf''']]
<code>config/[[installscript-keymacros.conf|'''keymacros.conf''']]</code><br>
+
            |--+ [[installscript-sources.conf|'''sources.conf''']]
<code>config/[[installscript-timercmds.conf|'''timercmds.conf''']]</code><br>
+
            |--+ [[installscript-keymacros.conf|'''keymacros.conf''']]
<code>examples/plugins/mailbox/'''[[accounts.conf]]'''</code><br>
+
        +-- [[Bild:Folder.png]] examples
<code>examples/vdr/[[installscript-record.conf|'''record.conf''']]</code><br>
+
            +-- [[Bild:Folder.png]] plugins
<code>examples/vdr/[[installscript-lirc.conf|'''lirc.conf''']]</code><br>
+
                +-- [[Bild:Folder.png]] mailbox
<code>examples/vdr/[[installscript-lcd.conf|'''lcd.conf''']]</code><br>
+
                    |--+ '''[[accounts.conf]]'''
<code>examples/vdr/[[installscript-shutdown.conf|'''shutdown.conf''']]</code>
+
            +-- [[Bild:Folder.png]] vdr
 
+
                |--+ [[installscript-vdr.conf|'''vdr.conf''']]
In '''../config/plugins''' befinden sich die Einstellungen der Plugins, als bsp das [[remote-plugin]]. '''../config/plugins/remote.conf'''
+
 
+
<pre>
+
## Description:
+
#
+
## Command line options:
+
#
+
# -i dev,  --input=dev  select device which supports the /dev/input protocol
+
# -l dev,  --lirc=dev    select LIRC device
+
# -t dev,  --tty=dev    select terminal device
+
# -T dev,  --TTY=dev    select terminal device with 'OSD'
+
# -p tcp:n  --port=tcp:n  select connection on tcp port <n>
+
#
+
## Examples:
+
#
+
# -i autodetect
+
#    Try to autodetect device '/dev/input/eventX' (X = 0,1,2,...).
+
#    If no device can be identified, '-i /dev/input/event0' is used.
+
#
+
# -i /dev/input/event2
+
#    use specified input device '/dev/input/event2'
+
#
+
# -l /dev/lircd
+
#    select LIRC remote control
+
#
+
# -p tcp:3333
+
#    wait for a telnet connection on tcp port 3333
+
#    (use 'telnet vdr 3333' to access this port)
+
#
+
# -t /dev/tty10
+
#    use terminal device without 'OSD'
+
#
+
# -T /dev/tty10
+
#    use terminal device with 'OSD'
+
#
+
# -i autodetect -p tcp:3333 -t /dev/tty10
+
#    use multiple devices
+
#
+
##
+
 
+
-i autodetect
+
</pre>
+
 
+
Optionen werden mit einen '''<code>^-</code>''' eingeleitet, landet nach Auswahl in der '''plugin_setup.conf''', siehe [[pluginsetup-plugin]], das selbe für die '''Description'''.
+
 
+
<pre>
+
## Description: Remote Plugin (Beschreibung)
+
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
                Würde später im Menu des Plugins (pluginsetup) stehen, ansonnsten nur der <NAME> (Remote)
+
</pre>
+
 
+
Weiter.
+
 
+
<pre>
+
bash> mcedit config/setup.conf
+
</pre>
+
  
 
Die meisten Optionen können unabhängig von der '''setup.conf''' auf der Komandozeile übergeben werden:
 
Die meisten Optionen können unabhängig von der '''setup.conf''' auf der Komandozeile übergeben werden:
Zeile 118: Zeile 64:
 
bash> LANG="de_DE@euro" sh vdr-install-script-current.run -- --help
 
bash> LANG="de_DE@euro" sh vdr-install-script-current.run -- --help
 
</pre>
 
</pre>
 +
 +
===CMD(s)===
 +
Beschreibungen... Links folgen :-)
 +
 +
+-- [[Bild:Folder.png]] $DISDIR
 +
    +-- [[Bild:Folder.png]] admin
 +
        +-- [[Bild:Folder.png]] [[installscript-command-cmds|'''command-cmds''']]
 +
        +-- [[Bild:Folder.png]] [[installscript-plugin-cmds|'''plugin-cmds''']]
 +
        +-- [[Bild:Folder.png]] [[installscript-recording-cmds|'''recording-cmds''']]
 +
        +-- [[Bild:Folder.png]] [[installscript-shutdown-cmds|'''shutdown-cmds''']]
 +
        +-- [[Bild:Folder.png]] [[installscript-start-cmds|'''start-cmds''']]
 +
            |--+ [[Bild:Folder.png]] rc
 +
            |--+ [[Bild:Folder.png]] rc.d
 +
            |--+ [...]
  
 
===Struktur===
 
===Struktur===
Verzeichnis für die Konfiguration, ist von nun an '''/usr/local/etc (Standart)''', es sei denn es wurde anders Definiert.
+
Verzeichnis für die Konfiguration, ist '''$PREFIX/etc (Standard)''', es sei denn es wurde anders Definiert.
  
  --prefix=DIR [ /usr/local ]
+
  --prefix=DIR
  
'''../src''' befindet sich eine ebene tiefer, vom '''$INSTALLPREFIX''' (somit '''$INSTALLPREFIX/src''').
+
Das ganze schaut in etwa wie folgt aus, es wurde soweit wie möglich versucht System + VDR zu trennen.
  
Das ganze schaut in etwa wie folgt aus.
+
+-- [[Bild:Folder.png]] /usr/local ("'''$INSTALLPREFIX'''")
 +
    +-- [[Bild:Folder.png]] src
 +
        +-- [[Bild:Folder.png]] VDR -> vdr-$VERSION
 +
        +-- [[Bild:Folder.png]] DVB -> v4l-dvb-snapshot-$TIMESTAMP
 +
    +-- [[Bild:Folder.png]] stow
 +
        +-- [[Bild:Folder.png]] package
 +
            +-- [[Bild:Folder.png]] bin
 +
            +-- [[Bild:Folder.png]] lib
 +
            +-- [[Bild:Folder.png]] doc
 +
    +-- [[Bild:Folder.png]] cache
 +
        +-- [[Bild:Folder.png]] cddb
 +
        +-- [[Bild:Folder.png]] gameboy
 +
        +-- [[Bild:Folder.png]] infosatepg
 +
        +-- [[Bild:Folder.png]] mp3
 +
        +-- [[Bild:Folder.png]] podcatcher
 +
        +-- [[Bild:Folder.png]] mldonkey
 +
        +-- [[Bild:Folder.png]] vtx
 +
    +-- [[Bild:Folder.png]] etc
 +
        +-- [[Bild:Folder.png]] graphlcd
 +
            |--+ graphlcd.conf
 +
        +-- [[Bild:Folder.png]] igor
 +
            |--+ igor.conf
 +
        +-- [[Bild:Folder.png]] lcdproc
 +
            |--+ LCDd.conf
 +
        +-- [[Bild:Folder.png]] lirc
 +
            |--+ lircd.conf
 +
            |--+ lircrc
 +
        +-- [[Bild:Folder.png]] nvram-wakeup
 +
            |--+ nvram-wakeup.conf
 +
        +-- [[Bild:Folder.png]] vdr ("'''$DISDIR'''")
 +
            |--+ setup.conf
 +
        +-- [[Bild:Folder.png]] vdradmin
 +
            |--+ vdradmind.{at,bl,conf,done}
  
<pre>
+
===Module===
.
+
====Hinzufügen====
|----+ /var/log/vdr
+
Im Mainmenü.
|----+ /usr/local (--prefix=$INSTALLPREFIX)
+
|    |----+ /src
+
|    |    |----+ /VDR
+
|    |    |----+ /DVB
+
|    |----+ /stow
+
|    |    |----+ /package/bin
+
|    |    |----+ /package/lib
+
|    |    |----+ /package/doc
+
|    |    |----+ [...]
+
|    |----+ /cache
+
|    |    |----+ /gameboy
+
|    |    |----+ /infosatepg
+
|    |    |----+ /mp3
+
|    |    |----+ /mldonkey
+
|    |    |----+ /tvmovie2vdr
+
|    |    |    |----+ /epgimages
+
|    |    |    |----+ /downloadfiles
+
|    |    |    |----+ /downloadupdatefiles
+
|    |----+ /etc
+
|    |    |----+ /commands
+
|    |    |    |----+ SHAREMARKS-reccmds-<NUM>.conf
+
|    |    |    |----+ TVMOVIE2VDR-commands-<NUM>.conf
+
|    |    |    |----+ [...]
+
|    |    |----+ /graphlcd
+
|    |    |    |----+ graphlcd.conf
+
|    |    |----+ /lcdproc
+
|    |    |    |----+ LCDd.conf
+
|    |    |----+ /lirc
+
|    |    |    |----+ lircd.conf
+
|    |    |    |----+ lircrc
+
|    |    |----+ /mplayer
+
|    |    |    |----+ codecs.conf
+
|    |    |    |----+ [...]
+
|    |    |----+ /mplayer.sh
+
|    |    |    |----+ lircrc.conf
+
|    |    |    |----+ mplayer.sh.conf
+
|    |    |----+ /nvram-wakeup
+
|    |    |    |----+ nvram-wakeup.conf
+
|    |    |----+ /sharemarks
+
|    |    |    |----+ marks2pts.conf
+
|    |    |----+ /tvmovie2vdr
+
|    |    |    |----+ channels.pl
+
|    |    |    |----+ channels_wanted.pl
+
|    |    |    |----+ config.pl
+
|    |    |    |----+ [...]
+
|    |    |----+ /vdradmin
+
|    |    |    |----+ vdradmind.at
+
|    |    |    |----+ vdradmind.bl
+
|    |    |    |----+ vdradmind.conf
+
|    |    |    |----+ vdradmind.done
+
|    |    |----+ /vdrrip
+
|    |    |    |----+ queuehandler.conf
+
|    |    |----+ /wget
+
|    |    |    |----+ wgetrc
+
|    |    |----+ /xxv
+
|    |    |    |----+ xxvd.cfg
+
</pre>
+
  
===Sicherung===
+
Oder von '''../preeplugins/<PLUGIN>.bak''' nach '''../preeplugins/<PLUGIN>.cmd''' umbenennen.
Damit Einstellungen bei "updates" nicht verloren gehen, sichern Sie das ganze:
+
  
 +
====Import====
 
<pre>
 
<pre>
bash> ./setup.sh
+
bash> ./vdr-install-script-<VERSION>.run -- --add="<URL>/<MODUL>"
 +
bash> ./setup.sh --add="<URL>/<MODUL>"
 
</pre>
 
</pre>
  
Über folgenden Menüpunkt:
+
Achso, wie auch bei den Scripts... alles ''ungetestet''.
  
<pre>
+
* Ein Modul setzt Kernel 2.6.* vorraus...
<-> - Configuration
+
* Einige sind nicht über den ''Beta'' Status hinaus gekommen... (kann ich nicht beurteilen, am besten selbst testen)
    | - Load an Alternate Configuration File --->
+
* Bei anderen fehlen Links...
    | - Save Configuration to an Alternate File --->
+
* usw...
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
</pre>
+
  
Im folge Dialog '''/media/floppy/.config''' (ca 80Kb), einspielen über:
+
====Erweitern====
 +
Scripts für andere Distributionen erweitern, version auslesen.
  
 
<pre>
 
<pre>
<-> - Configuration
+
shell> sh setup.sh --ostype
    | - Load an Alternate Configuration File --->
+
==> real_os_type="Redhat Linux Desktop"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
==>  real_os_version="10.0"
 
</pre>
 
</pre>
  
Andere Möglichkeit, packen der kompletten Scripts:
+
Module erweitern.
  
 
<pre>
 
<pre>
bash> ./setup.sh --buildrunpackage
+
CallDepend() {
      Label (default "vdr-install-script-<VERSION>.run"):
+
"Arch Linux")
 +
if ! pacman -Q libcap libjpeg freetype2 fontconfig gettext ; then
 +
    pacman -S libcap libjpeg freetype2 fontconfig gettext
 +
fi
 +
;;
 +
"Crux Linux")
 +
if ! prt-get isinst libcap libjpeg freetype fontconfig gettext ; then
 +
    prt-get depinst libcap libjpeg freetype fontconfig gettext
 +
fi
 +
;;
 +
"Debian Linux") apt-get install dialog libcap-dev libjpeg62-dev libfreetype6{,-dev} fontconfig{,-config} libfontconfig1{,-dev} ;;
 +
"Gentoo Linux") emerge sys-libs/libcap media-libs/jpeg media-libs/freetype media-libs/fontconfig sys-devel/gettext -n ;;
 +
"SuSE Linux")
 +
case $real_os_version in
 +
    7.3|8.0|8.1|8.2|9.0|9.1)
 +
if ! rpm -q libcap libjpeg ; then
 +
    yast -i libcap libjpeg
 +
fi
 +
;;
 +
    *)
 +
if ! rpm -q libcap-devel libjpeg-devel freetype2{,-devel} fontconfig{,-devel} gettext{,-devel} ; then
 +
    yast -i libcap-devel libjpeg-devel freetype2{,-devel} fontconfig{,-devel} gettext{,-devel}
 +
fi
 +
;;
 +
esac
 +
;;
 +
+ "Redhat Linux Desktop")
 +
+ if ! <TEST(S)> ; then
 +
+     <INSTALLATIONS-BEFEHL(E)> <PAKETE>
 +
+ fi
 +
+ ;;
 +
    esac
 +
}
 
</pre>
 
</pre>
  
Gesichert wird, was in '''../setup/SAFE''' definiert wurde.
+
Wer die Abhängkeiten selbst auflösen möchte, kann diese ''function'' aushebeln.
  
 
<pre>
 
<pre>
#
+
shell> sh setup.sh --without-depends
# FILE(s) only txt files!
+
#
+
../setup/config/add.conf
+
#
+
# DIRECTORY(ies) maxdepth 1, only txt files!
+
#
+
../setup/config/plugins
+
 
</pre>
 
</pre>
  
Wer möchte kann auch Files "außerhalb" der Scripts sichern, einfach eintragen.
+
==Tipps==
 +
===Mehrere Versionen===
 +
Mehrere Versionen von VDR nebenher installieren, einfach '''--prefix''' ändern.
  
 
<pre>
 
<pre>
#
+
bash> ./setup.sh --prefix=/usr/local/testumgebung
# FILE(s) only txt files!
+
                  ^^^^^^
#
+
                  entpricht sonst /usr/local
/etc/lircrc.conf
+
 
</pre>
 
</pre>
  
===Installations-Protokoll===
+
Dann.
Einiege Dialoge sind nicht mehr ganz aktuell, ab und zu ändert sich doch mal etwas.
+
  
{|
 
|[[Bild:installscript-1.png|thumb|none|''Mainmenu'']]
 
|Startmenu. Der Punkt '''Select software to uninstall --->''' ist obsolete, zum ''deinstallieren'' einfach Packages im '''Software Manager''' makieren, ueber Key '''<N>''' oder '''<M>''' kann gelöscht werden. Postinstallation wird ebenfalls entfernt ('''dselect'''). Für Patches gilt das selbe, '''--reverse''' ueber '''<N>''' oder '''<M>''', man kann somit Patches die auf VDR angewendet wurden, jederzeit Rückgängig machen.
 
|-
 
|[[Bild:installscript-2.png|thumb|none|''Download Manager'']]
 
|Dialog des Download Manager's.
 
|-
 
|[[Bild:installscript-3.png|thumb|none|''DL Manager Sub 1'']]
 
|Eine ''Ebene'' tiefer.
 
|-
 
|[[Bild:installscript-4.png|thumb|none|''DL Manager Sub 2'']]
 
|Hier stellt man sich letztendlich die Sourcen zusammen. '''<nowiki><E></nowiki>''' getestet, existiert, '''<nowiki><*></nowiki>''' getestet, lokal nicht gefunden, '''<nowiki><R> recursiv (all)</nowiki>''' alles was man sieht, wird geladen.
 
|-
 
|[[Bild:installscript-5.png|thumb|none|''Download Status'']]
 
|Status der Download's.
 
|-
 
|[[Bild:installscript-6.png|thumb|none|''Mainmenu'']]
 
|Startmenu => ''Software Manager''
 
|-
 
|[[Bild:installscript-7.png|thumb|none|''Software Manager'']]
 
|Auswahl der Packages.
 
|-
 
|[[Bild:installscript-8.png|thumb|none|''Software Select'']]
 
|Hier erfolgt die Auswahl der Sourcen (Versionsunabhängig), man sollte in etwa wissen was zusammenpasst!
 
|-
 
|[[Bild:installscript-9.png|thumb|none|''Start up'']]
 
|Eintrag für '''<code>[[Dir_etc#.2Fetc.2Finttab|/etc/inittab]]</code>'''
 
|-
 
|[[Bild:installscript-10.png|thumb|none|''Channels Select'']]
 
|Auswahl der ''[[Syntax_der_channels.conf|channels.conf]]''
 
|-
 
|[[Bild:installscript-11.png|thumb|none|''Software Manager'']]
 
|Software Manager => ''[[Patches]]''
 
|-
 
|[[Bild:installscript-12.png|thumb|none|''Patch Select'']]
 
|Im Grunde genommen kann man alle Patches die verfügbar sind anwenden. Einfach in den entsprechenden Ordner '''../packages/vdr/patches''' packen. (vorrausgesetzt '''--dry-run''' passt)
 
|-
 
|[[Bild:installscript-13.png|thumb|none|''Patchlog'']]
 
|So sollte ein ''Patchlog'' ausschauen, ansonnsten ''Patch <NAME> not applied / nicht angewendet...''
 
|-
 
|[[Bild:installscript-14.png|thumb|none|''Mainmenu'']]
 
|Mainmenu => ''Plugins Manager''
 
|-
 
|[[Bild:installscript-15.png|thumb|none|''Plugins Manager'']]
 
|Optionen gibt es 3 '''<nowiki><I></nowiki>''' installieren, '''<nowiki><U></nowiki>''' ersetzen, '''<nowiki><D></nowiki>''' löschen. Manchmal muß VDR für einiege Plugins gepatcht werden, sollte im plugins.log ersichtlich sein, für '''--reverese''' eines Patches, das entsprechende Plugin deinstallieren '''<nowiki><D></nowiki>'''. ('''<nowiki><U></nowiki>''' != '''<nowiki><D></nowiki>''')
 
|-
 
|[[Bild:installscript-16.png|thumb|none|''Plugins Opt'']]
 
|Zeigt zusätzliche Optionen zum übersetzen der Plugins an. (siehe <code>[[installscript-make.conf|'''make.conf''']]</code>)
 
|-
 
|[[Bild:installscript-17.png|thumb|none|''Mainmenu'']]
 
|Mainmenu => ''Compiling''
 
|-
 
|[[Bild:installscript-18.png|thumb|none|''Driver Select'']]
 
|Auswahl der DVB Driver.
 
|-
 
|[[Bild:installscript-19.png|thumb|none|''Postinstallation'']]
 
|Zeigt die auszuführende ''Postinstallation''.
 
|-
 
|[[Bild:installscript-20.png|thumb|none|''Compile Menu'']]
 
|Auswahl der Optionen.
 
|-
 
|[[Bild:installscript-21.png|thumb|none|''Edit'']]
 
|Hier können die Optionen zum übersetzen von VDR geändert werden.
 
|-
 
|[[Bild:installscript-22.png|thumb|none|''Plugins Check'']]
 
|Zeigt an was übersetzt worden ist.
 
|-
 
|[[Bild:installscript-23.png|thumb|none|''Mainmenu'']]
 
|Mainmenu => ''pluginsetup''
 
|-
 
|[[Bild:installscript-24.png|thumb|none|''Plugins Select'']]
 
|Dialog zum aktivieren der Plugins, kann später über das ''[[pluginsetup-plugin|pluginsetup plugin]]'' geändert werden. (''Reihenfolge/on/off'')
 
|-
 
|[[Bild:installscript-25.png|thumb|none|''Installationslog'']]
 
|Logfiles befinden sich Standart in '''/var/log/vdr'''.
 
|}
 
 
===Scripts===
 
<code>[[installscript-runvdr|'''runvdr''']]</code><br>
 
<code>[[installscript-shutdown.sh|'''shutdown.sh''']]</code><br>
 
<code>[[installscript-rwrapper.sh|'''rwrapper.sh''']]</code>
 
 
===Module===
 
Alles unterhalb von '''../add''' kann nachgerüstet werden.
 
 
Module im Ordner '''../untestet''' sind anzupassen!
 
 
* Ein Modul setzt Kernel 2.6.* vorraus (actuator.cmd)
 
* Einiege sind nicht über den Beta Status hinaus gekommen. (am besten selbst testen)
 
* Bei anderen fehlen Links.
 
 
===Stow(ES)===
 
GNU stow hilft die Dateien unter '''/usr/local''' zu organisieren, indem jede Software in ihrem eigenen Verzeichnis-Baum unter '''/usr/local/stow''' installiert wird und dann durch die Benutzung von symbolischen Links die Illusion erzeugt wird, das alle Software an der gleichen Stelle installiert sei.
 
 
Hier mal die wichtigsten Befehle.
 
 
* '''help'''
 
 
<pre>
 
<pre>
bash> /usr/local/stow/stowES help --prog stow=/usr/local/stow/stow
+
bash> /usr/local/testumgebung/bin/runvdr start
 
</pre>
 
</pre>
  
* '''(c)heck(s)tow / überprüfe'''
+
===Update===
<pre>
+
Normal wird beim ausführen von '''*.run''' das gröbste ''überschrieben'' (alles unterhalb von '''../setup'''). Rest bleibt erhalten... (zbs)
bash> /usr/local/stow/stowES cs --prog stow=/usr/local/stow/stow
+
Checking packages in /usr/local/stow (78 matches):
+
I (  772.5) DFB++-0.9.20
+
I (  1,385) DirectFB-0.9.20
+
I (19223.5) ImageMagick-6.0.2
+
I ( 10,085) MPlayer-1.0pre4
+
....
+
</pre>
+
  
* '''(c)heck(i)n / linkout'''
+
+-- [[Bild:Folder.png]] $DISDIR
<pre>
+
    +-- [[Bild:Folder.png]] admin
bash> /usr/local/stow/stowES ci MPlayer-1.0pre4 --prog stow=/usr/local/stow/stow
+
    +-- [[Bild:Folder.png]] plugins
Calling "stow" to check in package MPlayer-1.0pre4 ...done.
+
Calling ldconfig
+
</pre>
+
  
* '''(c)eck(o)ut / linkin'''
+
Sollte es bei Versionswechseln zu Fehlern kommen, kann folgende Übergabe Sinnvoll sein.
<pre>
+
bash> /usr/local/stow/stowES co MPlayer-1.0pre4 --prog stow=/usr/local/stow/stow
+
Calling "stow -D" to check out package MPlayer-1.0pre4 ...done.
+
Calling ldconfig.
+
</pre>
+
  
* '''(r)e(m)ove / löschen'''
+
bash> ./setup.sh --load-default-settings
<pre>
+
bash> ./vdr-install-script-<VERSION>.run -- --load-default-settings
bash> /usr/local/stow/stowES rm MPlayer-1.0pre4 --prog stow=/usr/local/stow/stow
+
Calling "stow -D" to check out package MPlayer-1.0pre4 ...done.
+
Calling "rm -rf" to remove package MPlayer-1.0pre4 ...done.
+
Calling ldconfig.
+
</pre>
+
  
* '''exchange / wechsel'''
+
Damit werden die Standard-Einstellungen ''geladen''.
<pre>
+
bash> /usr/local/stow/stowES exchange MPlayer-1.0pre4 MPlayer-1.0pre5 --prog stow=/usr/local/stow/stow
+
Calling "stow -D" to check out package MPlayer-1.0pre4 ...done.
+
Calling "stow" to check in package MPlayer-1.0pre5 ...done.
+
Calling ldconfig.
+
</pre>
+
  
 +
===Distributions-spezifisch===
 +
====[[Crux]]====
 +
Der Support für [[Crux]], ist zwar noch drinnen, besser das Port-System nutzen => [[Crux_2.5#VDR_installation]] => http://ronny-kornexl.homepage.t-online.de/crux/ports/
  
 +
====[[Gentoo]]====
 +
Da war etwas mit den MPlayer, siehe [[Gentoo VdrMplayer]] ''USE-Variablen''.
  
==Tipps==
+
====[[Debian]]====
===Mehrere Versionen===
+
Bei [[Debian]] am besten hier schauen [[Debian - mit 2.6.9er / 2.6.10er Kernel für VDR aufsetzen]], für das erweitern der '''sources.list'''.
Mehrere Versionen von VDR nebenher installieren, einfach '''--prefix''' und '''--disdir''', ändern.
+
  
<pre>
+
====[[SuSE]]====
bash> ./setup.sh --prefix=/usr/local/src/testumgebung --disdir=/usr/local/src/testumgebung/src/VDRtmp
+
Community Repositories hinzufügen. (in '''0.9.7.4''' obsolete)
                  ^^^^^^                              ^^^^^^
+
                  entpricht sonnst /usr/local          entpricht sonnst /usr/local/src/VDRtmp
+
</pre>
+
  
Dann.
+
shell> yast inst_productsources
 +
shell> yast2 inst_productsources
  
<pre>
+
'''[x] Packman Repository'''<br>
bash> cd /usr/local/src/testumgebung/bin
+
'''[x] VideoLan Repository'''
bash> ./runvdr start
+
</pre>
+
  
 +
Kurz:
  
===Packages statt Sourcen===
+
shell> zypper ar -t YUM ftp://ftp5.gwdg.de/pub/linux/misc/packman/suse/<'''VERSION'''> Packman
  bash> cd ../setup
+
  shell> zypper ar -t YUM http://download.videolan.org/pub/videolan/vlc/SuSE/<'''VERSION'''> VideoLan
  
* [[Debian]]
 
bash> ./add-apt.sh
 
  
* [[Gentoo]]
 
bash> ./add-emerge.sh
 
  
* [[SuSE]]
+
===Internationalisierung {{wikipedia|I18N}}===
bash> ./add-rpm.sh
+
  
Dann.
+
Derzeit ist EN / DE vorhanden, hier ein kleine Anleitung, zum hinzufügen anderer Übersetzungen. (Bsp.: '''fr_FR''')
  
  bash> ./setup.sh --enable-packages
+
  shell> cd setup/locale
 +
shell> make
 +
shell> cp vdr-install-script.pot fr_FR.po
 +
                                  ^^^^^
 +
                                  shell> locale -a | cut -d. -f1
  
Nun kann per '''[[Befehle_zur_APT-Paket-Verwaltung|apt-get]] / [[emerge]] / [[rpm]]''' installiert werden, vorrausgesetzt es sind Packages verfügbar, und diese wurde eingetragen.
+
shell> sed -i 's:charset=CHARSET:charset=ISO-8859-15:' fr_FR.po
  
==Debian 2.6.11 Howto==
+
Jetzt kann in '''fr_FR.po''', die Übersetzung erfolgen.
===Einführung===
+
Debian Installation nach [[Debian mit 2.6.9er / 2.6.10er Kernel für VDR aufsetzen]].
+
  
===/etc/apt/sources.list===
+
  #: ../admin/shutdown-cmds/procs.run:6
<pre>
+
  msgid "proc(s) running"
bash> nano /etc/apt/sources.list
+
  msgstr "<übersetzung>"
  
# unstable tree
+
Zu guter letzt:
deb http://ftp.de.debian.org/debian/ unstable main
+
deb-src http://ftp.de.debian.org/debian/ unstable main
+
deb http://security.debian.org/ stable/updates main
+
deb http://non-us.debian.org/debian-non-US unstable/non-US main
+
# testing / stable
+
deb http://ftp.de.debian.org/debian/ testing main
+
deb-src http://ftp.de.debian.org/debian/ testing main
+
deb http://security.debian.org/ testing/updates main
+
deb http://non-us.debian.org/debian-non-US testing/non-US main
+
deb ftp://ftp.debian.org/debian testing main contrib non-free
+
deb ftp://ftp.debian.org/debian stable main contrib non-free
+
# matroska
+
deb http://www.bunkus.org/debian/unstable/ ./
+
deb-src http://www.bunkus.org/debian/unstable/ ./
+
# marillat
+
deb ftp://ftp.nerim.net/debian-marillat/ testing main
+
</pre>
+
  
===/etc/apt/apt.conf===
+
shell> make
<pre>
+
bash> nano /etc/apt/apt.conf
+
  
APT::Default-Release "testing";
+
==Probleme==
</pre>
+
===unexpected operator, beim ausführen des Skripts===
 +
Bei einem Fehler in der Art:
  
===apt-get update===
+
''[: 28: 0: unexpected operator
<pre>
+
./setup/setup.sh: 41: Syntax error: Bad substitution''
bash> apt-get update
+
bash> apt-get install debhelper kernel-package sudo rcconf cvs \
+
      wget lynx mc dialog bzip2 unzip unrar automake kernel-package hdparm \
+
      samba libtool libncurses5 libncurses5-dev hotplug hotplug-utils
+
</pre>
+
  
===exim + ppp deaktivieren===
+
sollte überprüft werden ob der Link von '/bin/sh' auf '/bin/bash' verweist.
<pre>
+
bash> rcconf
+
</pre>
+
  
===image / source laden===
+
===umlaute in vdr menus===
<pre>
+
Wenn Umlaute, nicht richtig dargestellt werden.
bash> apt-get install kernel-image-2.6.11-1-686-smp kernel-source-2.6.11
+
</pre>
+
  
===source entpacken===
+
Zbs. Kan'''<span style="color:#ff0000;">?</span>'''le anstatt Kan'''<span style="color:#ff0000;">ä</span>'''le im VDR Menu, folgende Variable in der '''[[installscript-vdr.conf|vdr.conf]]''' auskommentieren.
<pre>
+
bash> cd /usr/src
+
bash> tar xjvf kernel-source-2.6.11.tar.bz2
+
bash> ln -s kernel-source-2.6.11 linux
+
</pre>
+
  
===konfigurieren / compilieren===
+
# VDR needs to run in non-UTF8 locale?
<pre>
+
- LC_CTYPE="POSIX
bash> cd /usr/src/linux
+
+ #LC_CTYPE="POSIX
bash> make menuconfig
+
bash> make
+
bash> make modules_install
+
bash> cp vmlinux /boot/vdr-2.6.11-1
+
bash> cp System.map /boot/System.map-vdr-2.6.11-1
+
bash> cp .config /boot/config-vdr-2.6.11-1
+
bash> cd /lib/modules/2.6.11-1-686-smp
+
bash> ln -s /usr/src/kernel-source-2.6.11 build
+
</pre>
+
  
===link löschen===
+
==Wunschliste==
<pre>
+
bash> rm -rf /usr/local/man
+
</pre>
+
  
===script ausführen===
+
==Links==
<pre>
+
# [ftp://ftp.tvdr.de/vdr/Tools VDR Ftp]
bash> cd /usr/local/src
+
# [http://linvdr.org/download/vdr/Tools Download Spiegel]
bash> wget ftp://ftp.cadsoft.de/vdr/Tools/vdr-install-script-current.run
+
# [http://savannah.gnu.org/projects/stow GNU Stow Projekt Homepage]
bash> chmod +x vdr-install-script-current.run
+
# [http://www.inf.tu-dresden.de/~al10/stowES Erweiterung für Stow]
bash> sh vdr-install-script-current.run
+
# [http://linuxwiki.de/Stow Stow Wiki]
bash> cd VDRtmp/setup
+
bash> ./add-apt.sh
+
bash> ./setup.sh --enable-packages
+
</pre>
+
  
==Links==
+
[[Kategorie:Skripte]][[Kategorie:Installscript]][[Kategorie:Installationsanleitungen]]
{|
+
{{i18n|Installscript}}
| [1]
+
| ftp://ftp.cadsoft.de/vdr/Tools
+
| Cadsoft Ftp
+
|-
+
| [2]
+
| http://linvdr.org/download/vdr/Tools
+
| Download Spiegel
+
|-
+
| [3]
+
| http://savannah.gnu.org/projects/stow
+
| GNU Stow Projekt Homepage
+
|-
+
| [4]
+
| http://www.inf.tu-dresden.de/~al10/stowES
+
| Erweiterung für Stow
+
|-
+
| [5]
+
| http://linuxwiki.de/Stow
+
| Stow Wiki
+
|-
+
| [6]
+
| http://vdrportal.de/board/thread.php?threadid=27246
+
| Diskussion im VDRportal
+
|}[[Kategorie:Installscript]]
+

Aktuelle Version vom 9. Dezember 2012, 18:09 Uhr

Inhaltsverzeichnis

[Bearbeiten] Was ist das Installscript?

Das Installscript ist ein Tool, mit dem die üblichen Installationsschritte durch eine Sammlung von Skripten erledigt werden.

0.5.8
0.9.8.7

[Bearbeiten] Webvideo

Mal eine Installation, als Webvideo unter openSuSE 11.1 auf der Konsole, mit geschnitten.

[Bearbeiten] Download

bash> wget ftp://ftp.tvdr.de/vdr/Tools/vdr-install-script-current.run

[Bearbeiten] Anleitung

[Bearbeiten] Vorab

  • Linux-Grundwissen erforderlich.
  • Man sollte schon das eine und auch andere mal einen VDR von Hand kompiliert haben.
  • In Deutsch?

Normal werden die lokalen (locale) Einstellungen uebernommen.

Sprich ist die Konsole in Deutsch (LC_MESSAGES="de_DE.UTF8" oder de_DE.iso885915@euro), sind auch die Scripts in Deutsch, sollte das nicht der Fall sein.

Einfach, vorm ausfuehren der Scripts.

bash> export LANG=de_DE.UTF8

Alternativ.

bash> LANG=de_DE.UTF8 sh setup.sh
bash> LANG=de_DE.UTF8 sh vdr-install-script-current.run

[Bearbeiten] Skripte anpassen

Entpacken.

bash> sh vdr-install-script-current.run --noexec --target /tmp/vdr
bash> cd /tmp/vdr/setup

Folgende Konfigurationsdateien sollte man sich an seine Bedürfnisse anpassen (Beschreibungen befinden sich unter den Links...).

+-- Folder.png $DISDIR
    +-- Folder.png setup
        +-- Folder.png config
            |--+ different.conf
            |--+ setup.conf
            |--+ make.conf
            |--+ modules.conf
            |--+ sources.conf
            |--+ keymacros.conf
        +-- Folder.png examples
            +-- Folder.png plugins
                +-- Folder.png mailbox
                    |--+ accounts.conf
            +-- Folder.png vdr
                |--+ vdr.conf

Die meisten Optionen können unabhängig von der setup.conf auf der Komandozeile übergeben werden:

bash> LANG="de_DE@euro" ./setup.sh --help
bash> LANG="de_DE@euro" sh vdr-install-script-current.run -- --help

[Bearbeiten] CMD(s)

Beschreibungen... Links folgen :-)

+-- Folder.png $DISDIR
    +-- Folder.png admin
        +-- Folder.png command-cmds
        +-- Folder.png plugin-cmds
        +-- Folder.png recording-cmds
        +-- Folder.png shutdown-cmds
        +-- Folder.png start-cmds
            |--+ Folder.png rc
            |--+ Folder.png rc.d
            |--+ [...]

[Bearbeiten] Struktur

Verzeichnis für die Konfiguration, ist $PREFIX/etc (Standard), es sei denn es wurde anders Definiert.

--prefix=DIR

Das ganze schaut in etwa wie folgt aus, es wurde soweit wie möglich versucht System + VDR zu trennen.

+-- Folder.png /usr/local ("$INSTALLPREFIX")
    +-- Folder.png src
        +-- Folder.png VDR -> vdr-$VERSION
        +-- Folder.png DVB -> v4l-dvb-snapshot-$TIMESTAMP
    +-- Folder.png stow
        +-- Folder.png package
            +-- Folder.png bin
            +-- Folder.png lib
            +-- Folder.png doc
    +-- Folder.png cache
        +-- Folder.png cddb
        +-- Folder.png gameboy
        +-- Folder.png infosatepg
        +-- Folder.png mp3
        +-- Folder.png podcatcher
        +-- Folder.png mldonkey
        +-- Folder.png vtx
    +-- Folder.png etc
        +-- Folder.png graphlcd
            |--+ graphlcd.conf
        +-- Folder.png igor
            |--+ igor.conf
        +-- Folder.png lcdproc
            |--+ LCDd.conf
        +-- Folder.png lirc
            |--+ lircd.conf
            |--+ lircrc
        +-- Folder.png nvram-wakeup
            |--+ nvram-wakeup.conf
        +-- Folder.png vdr ("$DISDIR")
            |--+ setup.conf
        +-- Folder.png vdradmin
            |--+ vdradmind.{at,bl,conf,done}

[Bearbeiten] Module

[Bearbeiten] Hinzufügen

Im Mainmenü.

Oder von ../preeplugins/<PLUGIN>.bak nach ../preeplugins/<PLUGIN>.cmd umbenennen.

[Bearbeiten] Import

bash> ./vdr-install-script-<VERSION>.run -- --add="<URL>/<MODUL>"
bash> ./setup.sh --add="<URL>/<MODUL>"

Achso, wie auch bei den Scripts... alles ungetestet.

  • Ein Modul setzt Kernel 2.6.* vorraus...
  • Einige sind nicht über den Beta Status hinaus gekommen... (kann ich nicht beurteilen, am besten selbst testen)
  • Bei anderen fehlen Links...
  • usw...

[Bearbeiten] Erweitern

Scripts für andere Distributionen erweitern, version auslesen.

shell> sh setup.sh --ostype
==>  real_os_type="Redhat Linux Desktop"
==>  real_os_version="10.0"

Module erweitern.

CallDepend() {
	 "Arch Linux")
		if ! pacman -Q libcap libjpeg freetype2 fontconfig gettext ; then
		    pacman -S libcap libjpeg freetype2 fontconfig gettext
		fi
		;;
	 "Crux Linux")
		if ! prt-get isinst libcap libjpeg freetype fontconfig gettext ; then
		    prt-get depinst libcap libjpeg freetype fontconfig gettext
		fi
		;;
	 "Debian Linux") apt-get install dialog libcap-dev libjpeg62-dev libfreetype6{,-dev} fontconfig{,-config} libfontconfig1{,-dev} ;;
	 "Gentoo Linux") emerge sys-libs/libcap media-libs/jpeg media-libs/freetype media-libs/fontconfig sys-devel/gettext -n ;;
	 "SuSE Linux")
		case $real_os_version in
		     7.3|8.0|8.1|8.2|9.0|9.1)
			if ! rpm -q libcap libjpeg ; then
			    yast -i libcap libjpeg
			fi
			;;
		     *)
			if ! rpm -q libcap-devel libjpeg-devel freetype2{,-devel} fontconfig{,-devel} gettext{,-devel} ; then
			    yast -i libcap-devel libjpeg-devel freetype2{,-devel} fontconfig{,-devel} gettext{,-devel}
			fi
			;;
		esac
		;;
+	"Redhat Linux Desktop")
+		if ! <TEST(S)> ; then
+		    <INSTALLATIONS-BEFEHL(E)> <PAKETE>
+		fi
+		;;
    esac
}

Wer die Abhängkeiten selbst auflösen möchte, kann diese function aushebeln.

shell> sh setup.sh --without-depends

[Bearbeiten] Tipps

[Bearbeiten] Mehrere Versionen

Mehrere Versionen von VDR nebenher installieren, einfach --prefix ändern.

bash> ./setup.sh --prefix=/usr/local/testumgebung
                   ^^^^^^
                   entpricht sonst /usr/local

Dann.

bash> /usr/local/testumgebung/bin/runvdr start

[Bearbeiten] Update

Normal wird beim ausführen von *.run das gröbste überschrieben (alles unterhalb von ../setup). Rest bleibt erhalten... (zbs)

+-- Folder.png $DISDIR
    +-- Folder.png admin
    +-- Folder.png plugins

Sollte es bei Versionswechseln zu Fehlern kommen, kann folgende Übergabe Sinnvoll sein.

bash> ./setup.sh --load-default-settings
bash> ./vdr-install-script-<VERSION>.run -- --load-default-settings

Damit werden die Standard-Einstellungen geladen.

[Bearbeiten] Distributions-spezifisch

[Bearbeiten] Crux

Der Support für Crux, ist zwar noch drinnen, besser das Port-System nutzen => Crux_2.5#VDR_installation => http://ronny-kornexl.homepage.t-online.de/crux/ports/

[Bearbeiten] Gentoo

Da war etwas mit den MPlayer, siehe Gentoo VdrMplayer USE-Variablen.

[Bearbeiten] Debian

Bei Debian am besten hier schauen Debian - mit 2.6.9er / 2.6.10er Kernel für VDR aufsetzen, für das erweitern der sources.list.

[Bearbeiten] SuSE

Community Repositories hinzufügen. (in 0.9.7.4 obsolete)

shell> yast inst_productsources
shell> yast2 inst_productsources

[x] Packman Repository
[x] VideoLan Repository

Kurz:

shell> zypper ar -t YUM ftp://ftp5.gwdg.de/pub/linux/misc/packman/suse/<VERSION> Packman
shell> zypper ar -t YUM http://download.videolan.org/pub/videolan/vlc/SuSE/<VERSION> VideoLan


[Bearbeiten] Internationalisierung I18N

Derzeit ist EN / DE vorhanden, hier ein kleine Anleitung, zum hinzufügen anderer Übersetzungen. (Bsp.: fr_FR)

shell> cd setup/locale
shell> make
shell> cp vdr-install-script.pot fr_FR.po
                                 ^^^^^
                                 shell> locale -a | cut -d. -f1
shell> sed -i 's:charset=CHARSET:charset=ISO-8859-15:' fr_FR.po

Jetzt kann in fr_FR.po, die Übersetzung erfolgen.

 #: ../admin/shutdown-cmds/procs.run:6
 msgid "proc(s) running"
 msgstr "<übersetzung>"

Zu guter letzt:

shell> make

[Bearbeiten] Probleme

[Bearbeiten] unexpected operator, beim ausführen des Skripts

Bei einem Fehler in der Art:

[: 28: 0: unexpected operator ./setup/setup.sh: 41: Syntax error: Bad substitution

sollte überprüft werden ob der Link von '/bin/sh' auf '/bin/bash' verweist.

[Bearbeiten] umlaute in vdr menus

Wenn Umlaute, nicht richtig dargestellt werden.

Zbs. Kan?le anstatt Kanäle im VDR Menu, folgende Variable in der vdr.conf auskommentieren.

# VDR needs to run in non-UTF8 locale?
- LC_CTYPE="POSIX
+ #LC_CTYPE="POSIX

[Bearbeiten] Wunschliste

[Bearbeiten] Links

  1. VDR Ftp
  2. Download Spiegel
  3. GNU Stow Projekt Homepage
  4. Erweiterung für Stow
  5. Stow Wiki
In anderen Sprachen