Installscript

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
K (Links)
K (Installations-Protokoll: obsolete (viele dialoge passen nimmer... muß mal neu erstellt werden))
Zeile 139: Zeile 139:
 
             |--+ queuehandler.conf
 
             |--+ queuehandler.conf
  
===Installations-Protokoll===
+
 
Einige 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''').
+
|-
+
|[[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-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 ''[[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 ''[[admin-plugin]]'' geändert werden. (''Reihenfolge/on/off'')
+
|-
+
|[[Bild:installscript-25.png|thumb|none|''Installationslog'']]
+
|Logfiles befinden sich Standard in '''/var/log/vdr'''.
+
|}
+
  
 
===Module===
 
===Module===

Version vom 12. Januar 2006, 17:47 Uhr

Inhaltsverzeichnis

Was ist das Installscript?

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

Voraussetzungen

  • Entwicklungsumgebung...
bash> sh vdr-install-script-current.run -- --checkreq

Anleitung

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@euro"), sind auch die Scripts in Deutsch, sollte das nicht der Fall sein.

Einfach, vorm ausfuehren der Scripts.

bash> export LANG=de_DE@euro

Alternativ.

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

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
            |--+ setup.conf
            |--+ make.conf
            |--+ modules.conf
            |--+ sources.conf
            |--+ marks2pts.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

CMD(s)

Beschreibungen... Links folgen :-)

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

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
        +-- Folder.png DVB
    +-- 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 mldonkey
        +-- Folder.png tvmovie2vdr
            +-- Folder.png epgimages
            +-- Folder.png downloadfiles
            +-- Folder.png downloadupdatefiles
        +-- 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 mplayer
            |--+ codecs.conf
        +-- Folder.png mplayersh
            |--+ mplayer.sh.conf
            |--+ lircrc.conf
        +-- Folder.png nvram-wakeup
            |--+ nvram-wakeup.conf
        +-- Folder.png sharemarks
            |--+ marks2pts.conf
        +-- Folder.png tvmovie2vdr
            |--+ channels.pl
            |--+ channels_wanted.pl
            |--+ config.pl
        +-- Folder.png vdr ("$DISDIR")
            |--+ setup.conf
        +-- Folder.png vdradmin
            |--+ vdradmind.{at,bl,conf,done}
        +-- Folder.png vdrrip
            |--+ queuehandler.conf


Module

Alles unterhalb von ../setup/add kann nachgerüstet werden, sprich kopieren nach ../setup/pree{plugins,soft}.

Letztendlich nicht zwingend (plugins), es langt wenn sich die Sourcen in ../packages/plugins befinden.

Installiert man ein Plugin, wird zur Laufzeit ein Link erstellt, sollte im log ersichtlich sein.

Beim erneuten ausführen der Scripts, werden die Links entfernt.

------------------------------------------------------------------------
- decruft-0.0.4 Fri Sep 16 16:23:14 2005
------------------------------------------------------------------------
+++ cmd : create symbolic link `decruft' to `decruft-0.0.4'
+++ arg : modul decruft.cmd not found in (./preeplugins)...
+++ msg : modul decruft.cmd found in (./add)...
+++ msg : create link, only at running time...
+++ cmd : create symbolic link `../setup/preeplugins/decruft.cmd' to `../add/untested/decruft.cmd'
+++ cmd : CallInstall
          ....

Andere Möglichkeit.

bash> ./vdr-install-script-<VERSION>.run -- --plgadd
bash> ./setup.sh --plgadd

Sollte so ausschauen...

.....
instantimer.cmd  screenshot.cmd    yascreenshot.cmd
ipod.cmd         serial.cmd        zaphistory.cmd
joystick.cmd     serialremote.cmd
--------------------------
Choice <plugin> <plugin> :

Plugin(s) eintragen, die Module werden dann von ../setup/add/untested in den entprechenden Ordner kopiert ../preeplugins.

Wie der Name schon sagt UNTESTED, das ganze sollte man sich vorher in Ruhe anschauen.

  • Ein Modul setzt Kernel 2.6.* vorraus...
  • 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
bash> /usr/local/stow/stowES help --prog stow=/usr/local/stow/stow
  • (c)heck(s)tow / überprüfe
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
....
  • (c)heck(i)n / linkout
bash> /usr/local/stow/stowES ci MPlayer-1.0pre4 --prog stow=/usr/local/stow/stow
Calling "stow" to check in package MPlayer-1.0pre4 ...done.
Calling ldconfig
  • (c)eck(o)ut / linkin
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.
  • (r)e(m)ove / löschen
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.
  • exchange / wechsel
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.


Tipps

Mehrere Versionen

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

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

Dann.

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

Packetmanager

bash> cd ../setup
bash> ./add-pack.sh

Dann.

bash> ./setup.sh --enable-packages

Nun kann per pacman (Arch) / prt-get (Crux) / apt-get (Debian) / emerge (Gentoo) / yast (SuSE) installiert werden, vorrausgesetzt es sind Packages verfügbar, und diese wurden in die add-pack.sh eingetragen.

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.

Probleme

Slackware (wildcards)

Nach einem slapt-get --upgrade funktionieren keine wildcards mehr, somit auch nicht mehr das Script selbst.

Quelle: http://vdrportal.de/board/thread.php?threadid=38472

admin-plugin (fehlende Menü Punkte)

Sollten im Plugin Menü Punkte fehlen, mal die Zeilen zählen.

bash> wc -l < /usr/local/etc/vdr/admin/admin.conf
343

Und mit dem Limit in der admin.c des Plugins vergleichen, falls kleiner, wie folgt ändern. (neu übersetzen)

- #define MAX_ENTRIES 256
+ #define MAX_ENTRIES 1024

Oder die aktuellen Sourcen nutzen: http://gentoo.fh-luh.de/files/vdr-admin

Links

[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
In anderen Sprachen