Debian - mit Debian Squeeze aufsetzen
Einleitung
Diese Anleitung soll aufzeigen wie man Debian Squeeze für den VDR (mit oder ohne VDPAU) installiert, inklusive aktuellem DVB-Treiber und den Bibliotheken, die für Plugins gebraucht werden. Die Informationen stammen aus verschiedenen Quellen (u.a. VDR Portal) und wurden von Thorsten Gehrig (Thorsten AT Gehrig DOT de) zusammengestellt.
Diese Anleitung legt keinen Wert auf Optimierung des benötigten Festplattenspeichers (Lieber eine Library zu viel, als eine zu wenig). Derzeit wird ca. 2,3 GB Festplattenplatz für das System benötigt.
Die Kapitel & Konfigurationen die für VDPAU notwendig sind, sind mit "VDPAU:" gekennzeichnet.
Diese Anleitung setzt voraus das man sich
- ein wenig mit Debian auskennt
- ein wenig mit VDR auskennt
Achtung: in dieser Anleitung werden zwar viele Plugins installiert - die (notwendige!) Konfiguration der Plugins ist aber nicht Bestandteil dieser Dokumentation. Dazu ambesten die Wiki-Seiten der entsprechenden Plugins aufrufen....
Debian Testing installieren (squeeze)
Aktuelles Netinst-ISO (i386) von Debian herunterladen und installieren. Als Dateisystem schlage ich XFS vor (da sind keine langen/störenden Festplattenchecks "fs2chk" notwendig)
Installieren jeder menge Libraries
aptitude install dpkg-dev gcc g++ libc6-dev make patch debhelper bzip2 kernel-package sudo aptitude install mc kernel-package samba cvs wget lynx libtool automake1.9 aptitude install libncurses5 libncurses5-dev rcconf aptitude install libc-client2007e-dev libc-client2007e # (wird für mailbox-client gebraucht) aptitude install netpbm #(wird fuer das Image-Plugin gebraucht) aptitude install libvorbis-dev libvorbis0a libvorbisfile3 libvorbisenc2 aptitude install libogg0 dialog aptitude install libdvdnav-dev libdvdnav4 aptitude install alsa alsa-source libasound2 libasound2-dev aptitude install libjpeg62 libjpeg62-dev aptitude install subversion chkconfig aptitude install libfreetype6-dev dpatch libxft-dev aptitude install libfribidi-dev libjpeg-dev libcap-dev libncursesw5-dev aptitude install libmadlib-dev libmad0 libmad-ocaml-dev aptitude install libswscale-dev libavcodec-dev libgd2-noxpm libgd2-noxpm-dev aptitude install dvdauthor expat dvd+rw-tools eject aptitude install zlibc zlib-bin aptitude install libsndfile1-dev libid3tag0-dev aptitude install libpcre3-dev aptitude install libmagick++-dev aptitude install libmysql++-dev aptitude install sysv-rc-conf aptitude install libupnp4-dev libsqlite3-dev aptitude install locate hgsvn cdbs aptitude install dpkg-dev devscripts expect wget gettext dpatch aptitude install libavformat-dev libimlib2-dev aptitude install libmpeg2-4-dev libtag1-dev libcddb2-dev libcdio-dev libcurl4-openssl-dev aptitude install libfirestring-dev libbitstring-ocaml-dev libspf-dev aptitude install libvcdinfo-dev libpostproc-dev libmpcdec-dev libaa1-dev liba52-0.7.4-dev \ libdts-dev libfaad-dev libmodplug-dev libvdpau-dev libboost1.42-dev aptitude install libxv-dev libxvmc-dev libaa1-dev libcaca-dev libmodplug-dev libesd0-dev \ libgnomevfs2-dev libartsc0-dev liblircclient-dev libflac-dev libpulse-dev libsdl1.2-dev \ libsmbclient-dev libspeex-dev libmng-dev w3m transfig gs sgmltools-lite
Kernel header
aptitude install linux-support-2.6.32-5 linux-headers-2.6.32-5-686 #Kernel Sourcen auspacken cd /usr/src ln -s linux-headers-2.6.32-5-686/ linux
ACPI Powerbutton konfigurieren
ACPI-Unterstützung: (u.a. zum kontrollierten Herunterfahren durch drücken der POWER-Taste) apt-get install acpid Konfiguration in /etc/acpi/powerbtn-acpi-support.sh: einfügen von "svdrpsend.pl HITK POWER" vi /etc/acpi/powerbtn-acpi-support.sh
Locale und ZeitzoneSetzen
echo 'export LC_ALL="de_DE.ISO-8859-15@euro"' >/etc/profile.d/locale.sh #Evtl. noch locale neu generieren dpkg-reconfigure locales #de_DE@euro ISO-8559-15 auswählen --- oder de_DE.UTF-8 dpkg-reconfigure tzdata #Zeitzone Euroe/Berlin auswählen
DVB-Firmware herunterladen
offizielle Dateien. Achtung: der letzte Befehl (cp -av linux-firmware-HEAD-bce93b43/* /lib/firmware/) muss immer angepasst werden - je nachdem wie die Datei heißt
cd /tmp [ -e fw ] && rm -rf fw mkdir fw cd fw wget -O fwfiles.tgz "http://git.kernel.org/?p=linux/kernel/git/dwmw2/linux-firmware.git;a=snapshot;h=HEAD" tar -xf fwfiles.tgz cp -av linux-firmware-HEAD-bce93b43/* /lib/firmware/
und gepatchte Firmware (nur für Technotrend FF-Karten)
cd /lib/firmware/ wget http://207.44.152.197/dvb-ttpci-01-patched261d.fw.bz2 bunzip2 dvb-ttpci-01-patched261d.fw.bz2 cp dvb-ttpci-01-patched261d.fw dvb-ttpci-01.fw
Lirc
Funktioniert noch nicht ganz so wie hier beschrieben... bitte korrigieren!
http://forums.debian.net/viewtopic.php?t=36134
apt-get install lirc lirc-modules-source module-assistant # standard => anderer => dpkg-reconfigure lirc-modules-source m-a update,prepare m-a update,prepare rm /usr/src/lirc*deb m-a clean lirc m-a a-i lirc #evtl. depmod depmod
Anpassen von /etc/lirc/hardware.conf
- LOAD_MODULES=true
- DRIVER="lirc_mceusb2"
- DEVICE="/dev/lirc0"
Starten mit /etc/init.d/lirc start Testen mit "irw"
Fehlt noch: /etc/lircd/lircd.conf erstellen
VDR installieren
cd /usr/local/src wget ftp://ftp.tvdr.de/vdr/Developer/vdr-1.7.16.tar.bz2 tar xjf vdr-1.7.16.tar.bz2 -C /usr/local/src ln -s vdr-1.7.16 VDR
Make.config anpassen
Hier müsste auch noch was rein??
cd /usr/local/src/VDR/ cp Make.config.template Make.config vi Make.config
Burn-Plugin
cd /usr/local/src mkdir plugins cd plugins wget http://projects.vdr-developer.org/attachments/download/437/vdr-burn-0.2.0-beta5.tgz -O vdr-burn-0.2.0-beta5.tgz tar xfvz vdr-burn-0.2.0-beta5.tgz -C /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/VDR/PLUGINS/src/ ln -s burn-0.2.0-beta5 burn
Premiere EPG-Plugin
cd /usr/local/src/plugins wget http://www.muempf.de/down/vdr-premiereepg-0.2.0.tar.gz tar xfvz vdr-premiereepg-0.2.0.tar.gz -C /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/VDR/PLUGINS/src ln -s premiereepg-0.2.0/ premiereepg
Mailbox Plugin
cd /usr/local/src/plugins wget http://alex.vdr-developer.org/download/vdr-mailbox-0.6.0.tgz tar xfvz vdr-mailbox-0.6.0.tgz -C /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/VDR/PLUGINS/src ln -s mailbox-0.6.0/ mailbox cd mailbox mcedit Makefile
Makefile anpassen:
IMAPINCDIR ?= /usr/include/c-client IMAPLFLAGS ?= -lc-client
Patchen des Plugins für VDR 1.7.16
mkdir /usr/local/src/patches cd /usr/local/src/patches wget http://toms-cafe.de/vdr/download/mailbox-0.5.0-vdr-1.7.13.diff -O mailbox-0.5.0-vdr-1.7.13.diff cd /usr/local/src/VDR/PLUGINS/src/mailbox patch -p1 </usr/local/src/patches/mailbox-0.5.0-vdr-1.7.13.diff
EPGSearch-Plugin
cd /usr/local/src/plugins wget http://winni.vdr-developer.org/epgsearch/downloads/beta/vdr-epgsearch-0.9.25.beta20.tgz tar xfvz vdr-epgsearch-0.9.25.beta20.tgz -C /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/VDR/PLUGINS/src ln -s epgsearch-0.9.25.beta20/ epgsearch
Femon-Plugin
cd /usr/local/src/plugins wget http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/vdr-femon-1.7.9.tgz tar xfvz vdr-femon-1.7.9.tgz -C /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/VDR/PLUGINS/src ln -s femon-1.7.9/ femon
arghdirector-Plugin
cd /usr/local/src/plugins wget http://www.arghgra.de/vdr-arghdirector-0.2.7-test1.tar.gz tar xfvz vdr-arghdirector-0.2.7-test1.tar.gz -C /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/VDR/PLUGINS/src ln -s arghdirector-0.2.7-test1 arghdirector
xxvautotimer-Plugin
cd /usr/local/src/plugins wget http://www.vdrtools.de/download/vdr-xxvautotimer-0.1.2.tgz tar xfvz vdr-xxvautotimer-0.1.2.tgz -C /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/VDR/PLUGINS/src ln -s xxvautotimer-0.1.2/ xxvautotimer mkdir /usr/local/src/patches cd /usr/local/src/patches wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-plugins/vdr-xxvautotimer/files/vdr-xxvautotimer-0.1.2_compile-warn.diff?revision=1.1 -O vdr-xxvautotimer-0.1.2_compile-warn.diff wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-plugins/vdr-xxvautotimer/files/vdr-xxvautotimer-0.1.2-makefile-fix.diff?revision=1.1 -O vdr-xxvautotimer-0.1.2-makefile-fix.diff wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-plugins/vdr-xxvautotimer/files/vdr-xxvautotimer-0.1.2_gcc-4.3.x.diff?revision=1.1 -O vdr-xxvautotimer-0.1.2_gcc-4.3.x.diff wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-plugins/vdr-xxvautotimer/files/vdr-xxvautotimer-0.1.2_gcc-4.4.diff?revision=1.1 -O vdr-xxvautotimer-0.1.2_gcc-4.4.diff cd /usr/local/src/VDR/PLUGINS/src/xxvautotimer patch -p1 < /usr/local/src/patches/vdr-xxvautotimer-0.1.2-makefile-fix.diff patch -p1 < /usr/local/src/patches/vdr-xxvautotimer-0.1.2_compile-warn.diff patch -p1 < /usr/local/src/patches/vdr-xxvautotimer-0.1.2_gcc-4.3.x.diff patch -p1 < /usr/local/src/patches/vdr-xxvautotimer-0.1.2_gcc-4.4.diff #Ersetzen von VDRVERSION auf APIVERSION im Makefile mcedit Makefile
Streamdev-Plugin
cd /usr/local/src/plugins wget http://streamdev.vdr-developer.org/releases/vdr-streamdev-0.5.0.tgz tar xfvz vdr-streamdev-0.5.0.tgz -C /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/VDR/PLUGINS/src ln -s streamdev-0.5.0/ streamdev
Markad
cd /usr/local/src git clone git://projects.vdr-developer.org/vdr-plugin-markad.git cd /usr/local/src/VDR/PLUGINS/src cp -r /usr/local/src/vdr-plugin-markad/ . cd vdr-plugin-markad make make install
Runvdr-extreme
cd /usr/local/src/plugins wget http://www.udo-richter.de/vdr/files/runvdr-extreme-0.4.2.tgz tar xfvz runvdr-extreme-0.4.2.tgz -C /usr/local/src cd /usr/local/src/runvdr-extreme-0.4.2/ cp runvdr.conf.example /etc/runvdr.conf cp init.d.runvdr.Debian /etc/init.d/runvdr cp runvdr /usr/local/bin/
Anpassen von /etc/runvdr Bitte Doku hinzufügen
mcedit /etc/runvdr.conf
- VDRPRG="/usr/local/src/VDR/vdr"
- VIDEODIR="/video0"
- CONFIGDIR="/etc/vdr"
- LOCALEDIR="/usr/local/src/VDR/locale"
- LIBDIR="/usr/local/src/VDR/PLUGINS/lib"
- USER="root"
- EPGFILE="/video0/epg.data"
- LIRC=1
- VFAT=1
- LANGUAGE="de_DE.ISO-8859-15@euro"
- VDR_CHARSET_OVERRIDE="ISO-8859-9"
Plugin-Konfigurationen: Für FF-Karte !!!
AddPlugin dvbsddevice
Für VDPAU
AddPlugin xineliboutput --local=none -r 37890 -d 0 -f --video=vdpau --audio=auto --primary
und die restlichen Plugins
AddPlugin mp3 AddPlugin mplayer AddPlugin burn AddPlugin arghdirector AddPlugin conflictcheckonly AddPlugin epgsearch AddPlugin skinenigmang AddPlugin premiereepg AddPlugin femon AddPlugin mailbox - /usr/bin/mailcmd.sh AddPlugin markad AddPlugin streamdev-client
Für VDPAU
XSERVER="/usr/bin/X -nolisten tcp -config /etc/X11/xorg.conf :0" # X startup commands, called within the X server function XSTARTUP() { while true ; do sleep 5; logger vdr-sxfe; vdr-sxfe --config /etc/vdr/plugins/xineliboutput/config_xineliboutput -f \ --video vdpau:0 --post=tvtime:method=ues_vo_driver --syslog --nokbd --reconnect xvdr+tcp://localhost \ >/var/log/xinelib.log 2>&1 ; done & SXFEPID=$! } # X shutdown commands, called within the X server function XSHUTDOWN() { kill $SXFEPID }
Jumpandplay-Patch runterladen
cd /usr/local/src/patches wget http://toms-cafe.de/vdr/download/vdr-jumpplay-1.0-1.7.6.diff
Liemikuutio-Patch runterladen
cd /usr/local/src/patches wget http://www.saunalahti.fi/~rahrenbe/vdr/patches/vdr-1.7.16-liemikuutio-1.30.patch.gz gunzip vdr-1.7.16-liemikuutio-1.30.patch.gz
LNBSharing-Patch runterladen
cd /usr/local/src/patches wget http://www.vdr-portal.de/board/attachment.php?attachmentid=27080 -O vdr-lnb-sharing-0.1.0-1.7.16.patch.bz2 bunzip2 vdr-lnb-sharing-0.1.0-1.7.16.patch.bz2
XXV Installieren
cd /usr/local/src svn co http://svn.berlios.de/svnroot/repos/xxv/vdr2jpeg/trunk vdr2jpeg/ cd vdr2jpeg make make install #Derzeit müssen noch jede Menge libs nachinstalliert werden: aptitude install libtemplate-perl libconfig-tiny-perl libproc-processtable-perl libevent-perl aptitude install libio-socket-inet6-perl libdate-manip-perl libfont-ttf-perl liblinux-inotify2-perl aptitude install libnet-xmpp-perl libxml-rss-libxml-perl libxml-rss-perl libgd-gd2-noxpm-perl aptitude install libnet-dns-perl libmp3-info-perl libencode-detect-perl libnet-amazon-perl aptitude install libgd-graph-perl libgd-graph3d-perl libgd-text-perl libgetopt-argvfile-perl aptitude install libproc-process-perl txt2html cd /opt/ svn co http://svn.berlios.de/svnroot/repos/xxv/XXV/trunk XXV/ cd XXV ./install-debian.sh # Kein Passwort für Root-Benutzer eintragen - alle Abfragen ohne Eingabe bestätigen
in /etc/init.d/xxvd den user auf root ändern
In /etc/init.d/xxvd und /etc/init.d/runvdr sicherstellen das folgende Zeile vorhanden ist
### BEGIN INIT INFO # Provides: xxvd # Required-Start: runvdr # Required-Stop: # Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Description: telnet/http config server, for the DVB Settop box vdr program ### END INIT INFO
Installieren der Skins
cd /opt/ svn co http://svn.berlios.de/svnroot/repos/xxv/XXV-Skins/trunk XXV-Skins/ #Danach die gewünschten Skins nach /opt/XXV kopieren cp -r /opt/XXV-Skins/* /opt/XXV
Anpassen der Startreihenfolge:
update-rc.d -f runvdr start 30 2 3 5 . stop 30 0 2 6 . update-rc.d -f xxvd start 50 2 3 5 . stop 50 0 2 6 .
DVB-Treiber aktualisieren
cd /usr/src hg clone http://linuxtv.org/hg/v4l-dvb cd v4l-dvb make make install
VDPAU: Xine-Lib aus GIT installieren
cd /usr/local/src git clone git://projects.vdr-developer.org/xine-lib.git cd xine-lib/ ./autogen.sh ./configure --prefix=/usr/local make make install ldconfig -v
VDPAU: Xineliboutput-Plugin
- Reihenfolge noch ändern.
Zuerst muss der VDR compiliert sein...
cd /usr/local/src/VDR/PLUGINS/src git clone git://projects.vdr-developer.org/xineliboutput.git cd xineliboutput make make install
VDPAU: vdr-xine Plugin installieren
cd /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/plugins wget http://home.vrweb.de/~rnissl/vdr-xine-0.9.3.tgz tar xivf vdr-xine-0.9.3.tgz -C /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/VDR/PLUGINS/src/ ln -s xine-0.9.3 xine cd xine/data mkdir /etc/vdr mkdir /etc/vdr/plugins mkdir /etc/vdr/plugins/xine cp * /etc/vdr/plugins/xine
xine.c anpassen wie hier beschrieben: http://wbreu.htpc-forum.de/vdrplugins/vdrxineplugin/1vdrxinepluginmitderxinelib12nutzen/index.php
VDPAU: Nvidia-Grafikkartentreiber installieren
Zuerst Nvidia-Modul entfernen (wenn geladen)
rmmod -fv nouveau
Dazu in /etc/modprobe.d/blacklist.conf hinzufügen
vi /etc/modprobe.d/blacklist.conf blacklist nouveau
Muss das sein?? aptitude install xfce4
cd /usr/local/src/plugins wget ftp://download.nvidia.com/XFree86/Linux-x86/260.19.29/NVIDIA-Linux-x86-260.19.29.run chmod +x NVIDIA-Linux-x86-260.19.29.run ./NVIDIA-Linux-x86-260.19.29.run
Patches installieren
Folgende Patches installieren - wenn man sie möchte:
cd /usr/local/src/VDR #LNB Sharing-Patch patch -p1 </usr/local/src/patches/vdr-lnb-sharing-0.1.0-1.7.16.patch #Localchannel-Provide-Patch - falls man keine DVB-Karten hat oder den primären Tuner abschalten will patch -p1 </usr/local/src/VDR/PLUGINS/src/streamdev/patches/vdr-1.4.x-localchannelprovide.diff #Jump & Play Patch patch -p1 </usr/local/src/patches/vdr-jumpplay-1.0-1.7.6.diff #Liemikuttio-Patch (sorgt für numerierung wenn mehr als 9 Menüpunkte vorhanden sind) patch -p1 < /usr/local/src/patches/vdr-1.7.16-liemikuutio-1.30.patch #config.c.rej und config.h.rej nachflegen
VDR compilieren
cd /usr/local/src/VDR make clean make make clean-plugins make plugins cd /usr/local/src/VDR/PLUGINS/src/xineliboutput make install cd /usr/local/src/VDR/PLUGINS/lib strip *.*
Und Xine-Teile kopieren
cp /usr/local/src/VDR/PLUGINS/src/xine/xineplayer /usr/local/lib/ cd /usr/local/src/VDR/PLUGINS/src/xineliboutput make install
Verzeichnisse anlegen
mkdir /video0 mkdir /etc/vdr mkdir /etc/vdr/plugins
und jede menge Konfigurationsdateien anpassen (z.B. channels.conf, mp3sources.conf, usw. usf.)
Grafikkonfiguration anpassen damit auch ohne TV/Monitor der VDR startet
Zuerst eine edid.bin erstellen und nach /etc/X11 kopieren
cd /tmp #Log erstellen /usr/bin/X -nolisten tcp -verbose 6 -config /etc/X11/xorg.conf :0 #Aus Log edid.conf extrahieren nvidia-xconfig --extract-edids-from-file=/var/log/Xorg.0.log --extract-edids-output-file=edid.bin cp /tmp/edid.bin /etc/X11
und dann Xorg.conf anpassen
mcedit /etc/X11/xorg.conf #in der Section "Device" einfügen: Option "CustomEdid" "DFP-0:/etc/X11/edid.bin" Option "ConnectedMonitor" "DFP-0" Option "UseDisplayDevice" "DFP-0"
Startvorgang beschleunigen
Um den GRUB-Bootloader nicht immer 5 Sekunden warten zu lassen kann man in /etc/default/grub den Wert "GRUB_TIMEOUT=0" setzen Anschließend "grub-mkconfig" ausführen
Audio einrichten
Hierfür erst einmal auf die Anleitung für Ubuntu anschauen.
PearlHD-Skin-Fonts
Fonts runterladencd /usr/local/src/plugins wget http://andreas.vdr-developer.org/fonts/download/vdrsymbols-ttf-20100612.tgz tar -xvf vdrsymbols-ttf-20100612.tgz -C /usr/share/fonts/truetype
Text to Skin
cd /usr/local/src/VDR/PLUGINS/src git clone git://projects.vdr-developer.org/vdr-plugin-text2skin.git ln -s vdr-plugin-text2skin/ text2skin cd ../../ make plugins make plugins install
yaepghd (geht derzeit nicht! falsche quelle?
cd /usr/local/src/VDR/PLUGINS/src git clone git://projects.vdr-developer.org/vdr-plugin-yaepghd.git yaepghd cd ../../../ make plugins make plugins install
Pearl HD-Skin
cd /usr/local/src/plugins git clone git://projects.vdr-developer.org/skin-pearlhd.git cd skin-pearlhd
Die Make.config Datei anpassen. (siehe #Optionen)
make make install
Antra-Skin
cd /usr/local/src/plugins wget http://justlinux.de/vdr/testing/anthra_1920_OSo-20101118.tgz tar -xzvf anthra_1920_OSo-20101118.tgz -C /etc/vdr/plugins/text2skin
IPTV-Patch
cd /usr/local/src/plugins wget http://www.saunalahti.fi/~rahrenbe/vdr/iptv/files/vdr-iptv-0.4.2.tgz tar -xzvf vdr-iptv-0.4.2.tgz -C /usr/local/src/VDR/PLUGINS/src cd /usr/local/src/VDR/PLUGINS/src/ ln -s iptv-0.4.2/ iptv
VLC Installieren
#aptitude install vlc cd /usr/local/src wget http://download.videolan.org/pub/vlc/1.1.7/vlc-1.1.7.tar.bz2 #auspacken tar -xvf vlc-1.1.7.tar.bz2 cd vlc-1.1.7 apt-get build-dep vlc ./configure --enable-run-as-root make make install
Test mit mms://rheinmaintv-livestream.de/rmtv-livestream cvlc --plugin-path "/usr/local/lib/vlc/" mms://rheinmaintv-livestream.de/rmtv-livestream