VDR and plugins are integrated into the build system of CoreELEC to be able to start and use VDR and to be able to easily switch between VDR and KODI.
It's possible to either create a VDR tar.gz only, which contains VDR, all plugins and all dependant libraries.
The second possibility is to create a CoreELEC image which contains VDR and plugins.
This is still work in progress...
Following plugins are successfully build and part of the vdr tar
CoreELEC:/usr/local/bin # ./easyvdrctl.sh --all-status
Plugin | install | ini | AutoRun | Stop | Arguments
--------------------------------------------------------------------------------
ac3mode | yes | valid | no | yes |
cdplayer | yes | valid | no | yes |
cecremote | yes | valid | no | yes |
chanman | yes | valid | no | yes |
channellists | yes | valid | no | yes |
conflictcheckonly | yes | valid | no | yes |
control | yes | valid | yes | yes |
dbus2vdr | yes | valid | no | yes |
ddci2 | yes | valid | no | yes |
devstatus | yes | valid | no | yes |
dummydevice | yes | valid | no | yes |
dvbapi | yes | valid | no | yes |
dvd | yes | valid | no | yes |
dynamite | no | valid | no | yes |
eepg | yes | valid | no | yes |
epg2vdr | yes | valid | no | yes |
epgfixer | yes | valid | no | yes |
epgsearch | yes | valid | no | yes |
epgsearchonly | yes | valid | no | yes |
epgtableid0 | yes | valid | no | yes |
externalplayer | yes | valid | no | yes |
femon | yes | valid | no | yes |
filebrowser | yes | valid | no | yes |
fritzbox | yes | valid | no | yes | -c /storage/.config/vdropt/plugins/fritz/on-call.sh
hello | yes | valid | no | yes |
iptv | yes | valid | no | yes |
live | yes | valid | no | yes |
markad | yes | valid | no | yes |
menuorg | yes | valid | no | yes |
mp3 | yes | valid | no | yes |
osd2web | yes | valid | no | yes |
osddemo | yes | valid | no | yes |
osdteletext | yes | valid | no | yes |
pictures | yes | valid | no | yes |
quickepgsearch | yes | valid | no | yes |
radio | yes | valid | no | yes | -f /storage/.config/vdropt/plugins/radio
remote | yes | valid | no | yes |
remoteosd | yes | valid | no | yes |
restfulapi | yes | valid | no | yes |
robotv | yes | valid | no | yes |
satip | yes | valid | yes | yes |
scraper2vdr | yes | valid | no | yes |
skindesigner | yes | valid | no | yes |
skinelchihd | yes | valid | no | yes |
skinflat | yes | valid | no | yes |
skinflatplus | yes | valid | no | yes |
skinlcarsng | yes | valid | no | yes |
skinnopacity | yes | valid | no | yes |
skinsoppalusikka | yes | valid | no | yes |
softhdodroid | yes | valid | yes | no | -a hw:CARD=AMLAUGESOUND,DEV=0
status | yes | valid | no | yes |
streamdev-client | yes | valid | no | yes |
streamdev-client2 | yes | valid | no | yes |
streamdev-client3 | yes | valid | no | yes |
streamdev-client4 | yes | valid | no | yes |
streamdev-server | yes | valid | no | yes |
svccli | yes | valid | no | yes |
svcsvr | yes | valid | no | yes |
svdrpdemo | yes | valid | no | yes |
svdrpservice | yes | valid | no | yes |
systeminfo | yes | valid | no | yes | --script=/storage/.config/vdropt/plugins/systeminfo/systeminfo.sh
targavfd | yes | valid | no | yes |
tvguideng | yes | valid | no | yes |
tvscraper | yes | valid | no | yes |
vnsiserver | yes | valid | no | yes |
weatherforecast | yes | valid | no | yes |
wirbelscan | yes | valid | no | yes |
wirbelscancontrol | yes | valid | no | yes |
zaphistory | yes | valid | no | yes |
zappilot | yes | valid | no | yes |
apt-get install build-essential coreutils squashfuse git curl xfonts-utils xsltproc default-jre \
libxml-parser-perl libjson-perl libncurses5-dev bc gawk wget zip zstd libparse-yapp-perl \
gperf lzop unzip patchutils cpio
The script build-local.sh supports several targets
$ ./build-local.sh
Usage: [-t] [-i] [-9] [-0] [-d] [-e] [-x] [-y]
-t : Build tar (Matrix). Version containing only VDR and is installable in an existing Kodi installation (Deprecated!)
-i : Build images (Matrix). Images will be created which can be written to an SD card. Contains VDR in /usr/local
-9 : Build images (corelec-19). Images will be created which can be written to an SD card. Contains VDR in /usr/local
-0 : Build images (corelec-20). Images will be created which can be written to an SD card. Contains VDR in /usr/local
-dvb-latest : build dvb-latest device driver addon
-dvb-crazycat : build dvb-crazycat device driver addon
-dvb-all : build dvb-latest and dvb-crazycat device driver addons
-d : Enable vdr-plugin-dynamite. Default is disabled.
-e : Enable vdr-plugin-easyvdr. Default is disabled.
-z : Enable zapcockpit. Default is disabled.
-x : Development only: Build images but don't switch the branch.
-y : Development only: Build tar but don't switch the branch.
git clone https://github.com/Zabrimus/CoreELEC.git
cd CoreELEC
./build-local.sh -t or -i or -9 or -0
If -t
has been ussed, then in folder build-artifacts a new archive coreelec-19-vdr.tar.gz will be created, which contains VDR, Plugins
and all dependant libraries. The installation folder is /opt/vdr
.
if -i
, -9
or -0
has been used, then all images and update tars are created in folder target
.
The build.sh
is used by Github Workflow and caches at least the sources
folder.
cd / && tar -xf coreelec-vdr.tar.gz
scp target/CoreELEC-Amlogic-ng.arm-*.tar root@<ip der box>:/storage/.update
reboot
or
Install the desired image in a micro SD as described in the CoreELEC part of this Readme.
In folder /opt/vdr/bin or /usr/local/bin contains an install script
cd /opt/vdr/bin
./install.sh
Usage: install.sh [-install-config] [-boot kodi|vdr]
-i : Extracts the default configuration into directory /storage/.config/vdropt-sample and copy the sample folder to /storage/.config/vdropt if it does not exists.
-C : Use with care! All configuration entries of vdropt will be copied to vdropt-sample. And then all entries of vdropt-sample will be copied to vdropt.
-b kodi : Kodi will be started after booting
-b vdr : VDR will be started after booting
To be able to switch the OSD languange you have to
- install Kodi addon: locale
- configure Kodi addon locale and choose your desired language
- create/modify file /storage/.profile with (in my case it's german):
export LANG="de_DE.UTF-8"
export LC_ALL="de_DE.UTF-8 - reboot
Skindesigner uses a git repository to install custom skins. To be able to use this feature installing git is necessary.
- Install entware (see https://wiki.coreelec.org/coreelec:entware)
- Install git and git-http
opgk install git git-http
The install script (parameter -i) tries to modify/create as many default configuration as possible. If some configuration files already exists, they will not be overwritten, but the changes needs to be done manually.
The default file will be copied from installation directory, but if the file already exists, a warning will be displayed.
One additional line is necessary
/storage/.opt/vdr/bin/autostart.sh
This script prepares some systemd units and paths.
In Kodis default theme estuary, one additional entry will be added to the power menu to switch to VDR. If another skin is used, the entry needs to be done manually.
<item>
<label>VDR</label>
<onclick>System.Exec("/opt/vdr/bin/switch_to_vdr.sh")</onclick>
</item>
A whole sample can be found in <vdrdir>/config/DialogButtonMenu.xml
A new entry is needed, like e.g.
Start Kodi : echo "START_PRG=kodi" > /opt/tmp/switch_kodi_vdr
/usr/local/lib
or/opt/vdr/lib
contains libraries which are usually not part of CoreELEC/usr/local/vdr
or/opt/vdr/
contains VDR and all plugins/usr/local/vdr-2.6.1/config
or/storage/.config/vdropt/
contains the default configuration filesstorage/.config/vdropt
contains the VDR and plugin configuration files. Will never be overwritten by the install process.storage/.config/vdropt-sample
contains sample configuration files
Reads the file /storage/.config/vdropt/enabled-plugins
which contains a plugin name on each line and starts VDR
with all enabled plugins. The plugin configuration are read from /storage/.config/vdropt/*.conf
.
Uses the plugin vdr-plugin-easyvdr (see https://www.gen2vdr.de/wirbel/easyvdr/index2.html) to start VDR.
The configuration entries can be found in the /storage/.config/vdropt/*_settings.ini
.
Plugins can be started/stopped at runtime via the OSD.
Additionally the command line tool easyvdrctl.sh (which uses easyvdrctl) can be found in the <bindir>.
The VDR start scripts adds the mandatory library /usr/lib/libMali.so to LD_PRELOAD. It is possible to add other libraries if needed
by setting a variable in /storage/.profile
VDR_LD_PRELOAD=/path/to/lib1.so:/path/to/lib2.so
Wer sich dazu entscheidet, nach einer Installation alles wieder löschen zu wollen, muss nur die Vezeichnisse
/opt/vdr/
/storage/.conf/vdropt
/storage/.conf/vdropt-sampe
/storage/.fonts
entfernen und das System ist wieder im Urpsrungszustand.
CoreELEC is a 'Just enough OS' Linux distribution for running the award-winning Kodi software on popular low-cost hardware. CoreELEC is a minor fork of LibreELEC, it's built by the community for the community. CoreELEC website.
Issues & Support
Please report issues via the CoreELEC Forum.
Donations
At this moment we do not accept Donations. We are doing this for fun not for profit.
License
CoreELEC original code is released under GPLv2.
Copyright
As CoreELEC includes code from many upstream projects it includes many copyright owners. CoreELEC makes NO claim of copyright on any upstream code. Patches to upstream code have the same license as the upstream project, unless specified otherwise. For a complete copyright list please checkout the source code to examine license headers. Unless expressly stated otherwise all code submitted to the CoreELEC project (in any form) is licensed under GPLv2. You are absolutely free to retain copyright. To retain copyright simply add a copyright header to each submitted code page. If you submit code that is not your own work it is your responsibility to place a header stating the copyright.