Raspbian VDR Streaming Client - Install Scripts

Aus VDR Wiki
Version vom 15. November 2015, 13:11 Uhr von Hulk (Diskussion | Beiträge)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Scripts

Spätestens beim zweiten Mal möchte man nicht alles per Anleitung durchführen.

Die Scripts sind nur Vorschläge und sollten nochmals auf Kompatibilität mit der eigenen Umgebung überprüft werden.


Einrichten eines Users vdr

user.sh

#!/bin/bash
#set -x 
# create a user vdr that is compatible to the user vdr on yaVDR for easier integration via NFS.
sudo adduser --disabled-login --uid 666 --home /var/lib/vdr vdr
sudo adduser vdr video
sudo adduser vdr audio
sudo adduser vdr sudo
sudo mkdir -p /srv/vdr/video
sudo chown -R vdr.vdr /srv/vdr
sudo mkdir -p /var/cache/vdr
sudo chown -R vdr.vdr /var/cache/vdr

Abhängigkeiten und Goodies Installieren

Dependencies.sh

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install htop nfs-common git nano gettext g++ libfreetype6-dev libfontconfig1-dev libcap-dev libjpeg-dev libncurses5-dev libncursesw5-dev libavcodec-dev libavformat-dev libavutil-dev libavresample-dev libavresample1 libcap-dev libcurl4-openssl-dev libtinyxml-dev lirc wakeonlan

Quellen holen

GetSources.sh

#!/bin/bash
#set -x

# prepare some directories
# First the place to download archives
DNLOAD=~/Download
mkdir -p $DNLOAD

# We build it local as normal user
SRC=~/src
mkdir -p $SRC

# get vdr
cd $DNLOAD
wget ftp://ftp.tvdr.de/vdr/vdr-2.2.0.tar.bz2

# get plugins as archives
cd $DNLOAD
wget http://vdr.schmirler.de/svdrpservice/vdr-svdrpservice-1.0.0.tgz
wget http://vdr.schmirler.de/epgsync/vdr-epgsync-1.0.1.tgz
wget http://vdr.schmirler.de/remotetimers/vdr-remotetimers-1.0.2.tgz

wget http://phivdr.dyndns.org/vdr/vdr-suspendoutput/vdr-suspendoutput-2.0.0.tgz

wget http://www.saunalahti.fi/~rahrenbe/vdr/satip/files/vdr-satip-2.2.2.tgz

# unpack archives
cd $SRC
tar -xjf $DNLOAD/vdr-2.2.0.tar.bz2 
ln -sf vdr-2.2.0/ vdr

# directory for plugins
PLUGINSRC=$SRC/vdr/PLUGINS/src
mkdir -p $PLUGINSRC

# prepare svdrpservice
cd $PLUGINSRC
tar -xzf $DNLOAD/vdr-svdrpservice-1.0.0.tgz
ln -sf svdrpservice-1.0.0 svdrpservice

# prepare epgsync
cd $PLUGINSRC
tar -xzf $DNLOAD/vdr-epgsync-1.0.1.tgz
ln -sf epgsync-1.0.1 epgsync

# prepare remote timers
cd $PLUGINSRC
tar -xzf $DNLOAD/vdr-remotetimers-1.0.2.tgz
ln -sf remotetimers-1.0.2 remotetimers

# sat-ip
cd $PLUGINSRC
tar -xzf $DNLOAD/vdr-satip-2.2.2.tgz
ln -sf satip-2.2.2 satip 

# get plugins via git - directly into the right directory
cd $PLUGINSRC
git clone git://projects.vdr-developer.org/vdr-plugin-rpihddevice.git vdr-plugin-rpihddevice --depth=1
git clone git://projects.vdr-developer.org/vdr-plugin-streamdev.git vdr-plugin-streamdev --depth=1

# prepare rpihddevice
cd $SRC/vdr/PLUGINS/src
ln -sf vdr-plugin-rpihddevice rpihddevice

# prepare Streamdev
cd $SRC/vdr/PLUGINS/src
ln -sf vdr-plugin-streamdev/ streamdev

echo "Just a reminder tha we might need some manual steps before building"
echo "Need to modifiy the makefile for satip (SATIP_USE_TINYXML), see wiki"
echo "Also you might want some patches in various places, see wiki"

Quellen patchen

patch für satip: ~/patches/satip-use-tinyxml.patch

--- Makefile.org
+++ Makefile
@@ -4,7 +4,7 @@
 
# Use TinyXML instead of PugiXML
 
-#SATIP_USE_TINYXML = 1
+SATIP_USE_TINYXML = 1
 
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.

patches.sh

#!/bin/bash
set -x

if [ x"$1" == "x" ]; then
DRYRUN=--dry-run
echo "Add parameter doit to switch of the dry-run"
fi

# We build it local as normal user
SRC=~/src

# build plugins
cd $SRC/vdr/

patch $DRYRUN -p1 <PLUGINS/src/remotetimers/patches/vdr-2.0.4-MainMenuHooks-v1_0_2.diff
patch $DRYRUN -p0 <PLUGINS/src/remotetimers/patches/vdr-1.7.28-remote_instant_recordings.patch
patch $DRYRUN -p0 <PLUGINS/src/remotetimers/patches/vdr-1.7.29-skinlcars.patch

cd $SRC/vdr/PLUGINS/src/satip
patch $DRYRUN <~/patches/satip-use-tinyxml.patch

VDR und plugins bauen

build.sh

#!/bin/bash
#set -x 

# automatically use all CPUs
AMOUNT_CPU=-j`grep -c ^processor /proc/cpuinfo`

# We build it local as normal user
SRC=~/src

# build plugins
cd $SRC/vdr/
echo "Be patient, this will take some time"
make REMOTE=LIRC $AMOUNT_CPU && make plugins $AMOUNT_CPU && sudo make install
sudo chown -R vdr.vdr /var/cache/vdr