From eb3be822c87309cb4394498a2fb6a0162f13d98b Mon Sep 17 00:00:00 2001 From: CvH Date: Mon, 4 Apr 2016 19:07:14 +0200 Subject: [PATCH] addons: add OSCam --- .../addons/addon-depends/pcsc-lite/package.mk | 39 +++++++++++ packages/addons/service/oscam/changelog.txt | 2 + packages/addons/service/oscam/icon/icon.png | Bin 0 -> 19483 bytes packages/addons/service/oscam/package.mk | 66 ++++++++++++++++++ .../oscam/patches/oscam-01-revision.patch | 13 ++++ .../patches/oscam-02-link-with-ludev.patch | 28 ++++++++ .../oscam/patches/oscam-03-pcsc-pthread.patch | 12 ++++ .../service/oscam/source/bin/oscam.start | 63 +++++++++++++++++ .../addons/service/oscam/source/default.py | 17 +++++ .../service/oscam/source/oscam-default.conf | 27 +++++++ .../resources/language/English/strings.xml | 10 +++ .../oscam/source/resources/settings.xml | 14 ++++ .../service/oscam/source/settings-default.xml | 7 ++ .../service/oscam/source/sleep.d/oscam.power | 40 +++++++++++ .../system.d/service.softcam.oscam.service | 14 ++++ 15 files changed, 352 insertions(+) create mode 100644 packages/addons/addon-depends/pcsc-lite/package.mk create mode 100644 packages/addons/service/oscam/changelog.txt create mode 100644 packages/addons/service/oscam/icon/icon.png create mode 100644 packages/addons/service/oscam/package.mk create mode 100644 packages/addons/service/oscam/patches/oscam-01-revision.patch create mode 100644 packages/addons/service/oscam/patches/oscam-02-link-with-ludev.patch create mode 100644 packages/addons/service/oscam/patches/oscam-03-pcsc-pthread.patch create mode 100755 packages/addons/service/oscam/source/bin/oscam.start create mode 100644 packages/addons/service/oscam/source/default.py create mode 100644 packages/addons/service/oscam/source/oscam-default.conf create mode 100644 packages/addons/service/oscam/source/resources/language/English/strings.xml create mode 100644 packages/addons/service/oscam/source/resources/settings.xml create mode 100644 packages/addons/service/oscam/source/settings-default.xml create mode 100644 packages/addons/service/oscam/source/sleep.d/oscam.power create mode 100644 packages/addons/service/oscam/source/system.d/service.softcam.oscam.service diff --git a/packages/addons/addon-depends/pcsc-lite/package.mk b/packages/addons/addon-depends/pcsc-lite/package.mk new file mode 100644 index 0000000000..2c6ab65bf6 --- /dev/null +++ b/packages/addons/addon-depends/pcsc-lite/package.mk @@ -0,0 +1,39 @@ +################################################################################ +# This file is part of LibreELEC - https://LibreELEC.tv +# Copyright (C) 2016 Team LibreELEC +# +# LibreELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# LibreELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LibreELEC. If not, see . +################################################################################ + +PKG_NAME="pcsc-lite" +PKG_VERSION="1.8.16" +PKG_REV="0" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://pcsclite.alioth.debian.org/pcsclite.html" +PKG_URL="https://alioth.debian.org/frs/download.php/file/4164/${PKG_NAME}-${PKG_VERSION}.tar.bz2" +PKG_DEPENDS_TARGET="toolchain libusb" +PKG_PRIORITY="optional" +PKG_SECTION="service/system" +PKG_SHORTDESC="Middleware to access a smart card using SCard API (PC/SC)" +PKG_LONGDESC="Middleware to access a smart card using SCard API (PC/SC)" + +PKG_IS_ADDON="no" +PKG_AUTORECONF="yes" + +PKG_CONFIGURE_OPTS_TARGET="--disable-shared \ + --enable-static \ + --disable-libudev \ + --enable-libusb \ + --enable-usbdropdir=/storage/.kodi/addons/service.system.pcscd-addon/drivers" diff --git a/packages/addons/service/oscam/changelog.txt b/packages/addons/service/oscam/changelog.txt new file mode 100644 index 0000000000..2907dab344 --- /dev/null +++ b/packages/addons/service/oscam/changelog.txt @@ -0,0 +1,2 @@ +7.0.100 +- initial LibreELEC version \ No newline at end of file diff --git a/packages/addons/service/oscam/icon/icon.png b/packages/addons/service/oscam/icon/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3055c46ebd41d0c3456501c970dc211bc521e829 GIT binary patch literal 19483 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 literal 0 HcmV?d00001 diff --git a/packages/addons/service/oscam/package.mk b/packages/addons/service/oscam/package.mk new file mode 100644 index 0000000000..1a0227f421 --- /dev/null +++ b/packages/addons/service/oscam/package.mk @@ -0,0 +1,66 @@ +################################################################################ +# This file is part of LibreELEC - https://LibreELEC.tv +# Copyright (C) 2016 Team LibreELEC +# +# LibreELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# LibreELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LibreELEC. If not, see . +################################################################################ + +PKG_NAME="oscam" +PKG_VERSION="09609e1" +PKG_VERSION_NUMBER="11225" +PKG_REV="100" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://www.streamboard.tv/oscam/wiki" +PKG_URL="http://repo.or.cz/oscam.git/snapshot/$PKG_VERSION.tar.gz" +PKG_DEPENDS_TARGET="toolchain pcsc-lite" +PKG_PRIORITY="optional" +PKG_SECTION="service.softcam" +PKG_SHORTDESC="OSCam is Open Source Conditional Access Modul." +PKG_LONGDESC="OSCam is a softcam, software to be used to decrypt digital television channels, as an alternative for a conditional access module." + +PKG_IS_ADDON="yes" +PKG_ADDON_NAME="OSCam" +PKG_ADDON_TYPE="xbmc.service" +PKG_AUTORECONF="no" +PKG_ADDON_REPOVERSION="7.0" + +pre_unpack() { +export OSCAM_ADDON_VERSION="$PKG_VERSION_NUMBER" +} + +configure_target() { + cmake -DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DLIBUSBDIR=$SYSROOT_PREFIX/usr \ + -DWITH_SSL=0 \ + -DHAVE_LIBCRYPTO=0 \ + -DHAVE_DVBAPI=1 -DWITH_STAPI=0 \ + -DWEBIF=1 \ + -DWITH_DEBUG=0 \ + -DOPTIONAL_INCLUDE_DIR=$SYSROOT_PREFIX/usr/include \ + -DSTATIC_LIBUSB=1 \ + -DCLOCKFIX=0 \ + .. +} + +makeinstall_target() { + : # nop +} + +addon() { + mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin + cp -P $PKG_BUILD/.$TARGET_NAME/oscam $ADDON_BUILD/$PKG_ADDON_ID/bin + cp -P $PKG_BUILD/.$TARGET_NAME/utils/list_smargo $ADDON_BUILD/$PKG_ADDON_ID/bin +} diff --git a/packages/addons/service/oscam/patches/oscam-01-revision.patch b/packages/addons/service/oscam/patches/oscam-01-revision.patch new file mode 100644 index 0000000000..201666456e --- /dev/null +++ b/packages/addons/service/oscam/patches/oscam-01-revision.patch @@ -0,0 +1,13 @@ +diff --git a/config.sh b/config.sh +index 7653731..a6b2ea8 100755 +--- a/config.sh ++++ b/config.sh +@@ -687,7 +687,7 @@ do + break + ;; + '-r'|'--oscam-revision') +- (svnversion -n . 2>/dev/null || printf 0) | sed 's/.*://; s/[^0-9]*$//; s/^$/0/' ++ echo "$OSCAM_ADDON_VERSION" + break + ;; + '-O'|'--detect-osx-sdk-version') diff --git a/packages/addons/service/oscam/patches/oscam-02-link-with-ludev.patch b/packages/addons/service/oscam/patches/oscam-02-link-with-ludev.patch new file mode 100644 index 0000000000..ff16f494da --- /dev/null +++ b/packages/addons/service/oscam/patches/oscam-02-link-with-ludev.patch @@ -0,0 +1,28 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3ebd781..2966e65 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -474,7 +474,7 @@ add_library (${csoscam} STATIC ${csoscam_srcs} ${csoscam_hdrs}) + + set (exe_name "oscam") + add_executable (${exe_name} ${exe_srcs} ${exe_hdrs}) +-target_link_libraries (${exe_name} ${csoscam} ${csmodules} ${csreaders} csctapi cscrypt minilzo) ++target_link_libraries (${exe_name} ${csoscam} ${csmodules} ${csreaders} csctapi cscrypt minilzo udev) + if(HAVE_LIBRT AND HAVE_LIBUSB) + if (LIBUSBDIR) + set (libusb_link "imp_libusb") +diff --git a/utils/CMakeLists.txt b/utils/CMakeLists.txt +index 6790913..a603d3e 100644 +--- a/utils/CMakeLists.txt ++++ b/utils/CMakeLists.txt +@@ -12,7 +12,7 @@ file (GLOB all_srcs ${exe_srcs}) + + set (util_name "list_smargo") + add_executable (${util_name} ${exe_srcs} ${exe_hdrs}) +-target_link_libraries (${util_name} ${libusb_link} ${rt_link} ${setupapi_link} ${ole32_link} ${shell32_link} ${pthread_link} ${dl_link}) ++target_link_libraries (${util_name} ${libusb_link} ${rt_link} ${setupapi_link} ${ole32_link} ${shell32_link} ${pthread_link} ${dl_link} udev) + #----------------------- printout resume ----------------------------- + + message (STATUS "Utils: operating system: ${OSCamOperatingSystem}") +-- +1.7.2.5 diff --git a/packages/addons/service/oscam/patches/oscam-03-pcsc-pthread.patch b/packages/addons/service/oscam/patches/oscam-03-pcsc-pthread.patch new file mode 100644 index 0000000000..4eeee55111 --- /dev/null +++ b/packages/addons/service/oscam/patches/oscam-03-pcsc-pthread.patch @@ -0,0 +1,12 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index cd52430..b01b9fc 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -530,6 +530,7 @@ if (HAVE_PCSC) + if (NOT OSCamOperatingSystem MATCHES "Mac OS X") + if (NOT OSCamOperatingSystem MATCHES "Windows/Cygwin") + target_link_libraries (${exe_name} pcsclite) ++ target_link_libraries (${exe_name} pthread) + endif (NOT OSCamOperatingSystem MATCHES "Windows/Cygwin") + endif (NOT OSCamOperatingSystem MATCHES "Mac OS X") + endif (HAVE_PCSC) diff --git a/packages/addons/service/oscam/source/bin/oscam.start b/packages/addons/service/oscam/source/bin/oscam.start new file mode 100755 index 0000000000..23ae9d2bee --- /dev/null +++ b/packages/addons/service/oscam/source/bin/oscam.start @@ -0,0 +1,63 @@ +#!/bin/sh + +################################################################################ +# This file is part of LibreELEC - https://LibreELEC.tv +# Copyright (C) 2016 Team LibreELEC +# +# LibreELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# LibreELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LibreELEC. If not, see . +################################################################################ + +. /etc/profile + +oe_setup_addon service.softcam.oscam + +mkdir -p $ADDON_HOME/config +mkdir -p $ADDON_HOME/log + +for config_name in \ + oscam.ac oscam.cert oscam.dvbapi oscam.guess oscam.ird oscam.provid \ + oscam.server oscam.services oscam.srvid oscam.tiers oscam.user +do + [ ! -f $ADDON_HOME/config/$config_name ] && touch $ADDON_HOME/config/$config_name +done + +if [ ! -f "$ADDON_HOME/config/oscam.conf" ]; then + cp $ADDON_DIR/oscam-default.conf $ADDON_HOME/config/oscam.conf +fi + +find $ADDON_DIR/bin -maxdepth 1 -type f ! -perm 0755 -exec chmod 0755 \{\} \; + +if [ "$WORKAROUND_SLEEP" == "true" ] ; then + sleep $WORKAROUND_SLEEP_TIME +fi + +# start userspace DVB driver/addon +for driver_dvb in $(find /storage/.kodi/addons/driver.dvb.*/bin/userspace-driver.sh -type f 2>/dev/null); do + driver_dvb_name=$(echo $driver_dvb | awk 'BEGIN {FS="/"} {printf("%s", $5)}') + logger -t OSCAM "### Loading userspace DVB driver: $driver_dvb_name ###" + # use ". " because of variable export + . $driver_dvb +done + +if [ "$WAIT_FOR_FEINIT" == "true" ] ; then + while [ true ] ; do + if [ -e /dev/dvb/adapter$((NUM_ADAPTERS-1))/frontend0 ] ; then + break + fi + sleep 1 + done +fi + +exec oscam -c $ADDON_HOME/config > /dev/null 2>&1 + diff --git a/packages/addons/service/oscam/source/default.py b/packages/addons/service/oscam/source/default.py new file mode 100644 index 0000000000..c6dfcce9f2 --- /dev/null +++ b/packages/addons/service/oscam/source/default.py @@ -0,0 +1,17 @@ +################################################################################ +# This file is part of LibreELEC - https://LibreELEC.tv +# Copyright (C) 2016 Team LibreELEC +# +# LibreELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# LibreELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LibreELEC. If not, see . +################################################################################ diff --git a/packages/addons/service/oscam/source/oscam-default.conf b/packages/addons/service/oscam/source/oscam-default.conf new file mode 100644 index 0000000000..ac5da7844c --- /dev/null +++ b/packages/addons/service/oscam/source/oscam-default.conf @@ -0,0 +1,27 @@ +# oscam.conf generated automatically by Streamboard OSCAM 1.00-unstable_svn build #0 +# Read more: http://streamboard.gmc.to/svn/oscam/trunk/Distribution/doc/txt/oscam.conf.txt + +[global] +usrfile = /storage/.kodi/userdata/addon_data/service.softcam.oscam/log/oscamuser.log +logfile = /storage/.kodi/userdata/addon_data/service.softcam.oscam/log/oscam.log +cwlogdir = /storage/.kodi/userdata/addon_data/service.softcam.oscam/log/cw +nice = -1 +saveinithistory = 1 + +[monitor] +port = 988 +aulow = 120 +hideclient_to = 15 +monlevel = 1 +appendchaninfo = 0 + +[webif] +httpport = 8888 +httpuser = oscam +httppwd = oscam +httpallowed = 0.0.0.0-255.255.255.255 + +[dvbapi] +enabled = 1 +pmt_mode = 4 +boxtype = pc diff --git a/packages/addons/service/oscam/source/resources/language/English/strings.xml b/packages/addons/service/oscam/source/resources/language/English/strings.xml new file mode 100644 index 0000000000..adb080f372 --- /dev/null +++ b/packages/addons/service/oscam/source/resources/language/English/strings.xml @@ -0,0 +1,10 @@ + + + General + Restart on suspend / resume + DVBAPI + Delay the start of OSCam + time (s) + Wait for frontend initialization + Number of adapters to wait for + diff --git a/packages/addons/service/oscam/source/resources/settings.xml b/packages/addons/service/oscam/source/resources/settings.xml new file mode 100644 index 0000000000..669656f8c9 --- /dev/null +++ b/packages/addons/service/oscam/source/resources/settings.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/packages/addons/service/oscam/source/settings-default.xml b/packages/addons/service/oscam/source/settings-default.xml new file mode 100644 index 0000000000..25b504631d --- /dev/null +++ b/packages/addons/service/oscam/source/settings-default.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/packages/addons/service/oscam/source/sleep.d/oscam.power b/packages/addons/service/oscam/source/sleep.d/oscam.power new file mode 100644 index 0000000000..550f884072 --- /dev/null +++ b/packages/addons/service/oscam/source/sleep.d/oscam.power @@ -0,0 +1,40 @@ +#!/bin/sh + +################################################################################ +# This file is part of LibreELEC - https://LibreELEC.tv +# Copyright (C) 2016 Team LibreELEC +# +# LibreELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# LibreELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LibreELEC. If not, see . +################################################################################ + +. /etc/profile + +oe_setup_addon service.softcam.oscam + +SERVICE="service.softcam.oscam.service" + +if [ "$RESTART_ON_RESUME" == "true" ] ; then + case "$1" in + pre) + if systemctl is-active "$SERVICE" &>/dev/null ; then + systemctl stop "$SERVICE" + fi + ;; + post) + if systemctl is-enabled "$SERVICE" &>/dev/null ; then + systemctl start "$SERVICE" + fi + ;; + esac +fi diff --git a/packages/addons/service/oscam/source/system.d/service.softcam.oscam.service b/packages/addons/service/oscam/source/system.d/service.softcam.oscam.service new file mode 100644 index 0000000000..9791e2d9b5 --- /dev/null +++ b/packages/addons/service/oscam/source/system.d/service.softcam.oscam.service @@ -0,0 +1,14 @@ +[Unit] +Description=OSCam +After=network-online.service +Requires=network-online.service + +[Service] +ExecStart=/bin/sh -c "exec sh /storage/.kodi/addons/service.softcam.oscam/bin/oscam.start" +TimeoutStopSec=1 +Restart=always +RestartSec=2 +StartLimitInterval=0 + +[Install] +WantedBy=kodi.target