mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
Merge pull request #1703 from chewitt/backports
various backports from master
This commit is contained in:
commit
f4adec920d
@ -2,8 +2,7 @@
|
||||
LIBREELEC_VERSION="devel"
|
||||
|
||||
# OS_VERSION: OS Version
|
||||
OS_VERSION="8.0"
|
||||
OS_VERSION="8.2"
|
||||
|
||||
# ADDON_VERSION: Addon version
|
||||
ADDON_VERSION="8.1"
|
||||
|
||||
ADDON_VERSION="8.2"
|
||||
|
@ -136,7 +136,7 @@
|
||||
# Xorg Graphic drivers to use (all / i915,i965,r200,r300,r600,nvidia)
|
||||
# Space separated list is supported,
|
||||
# e.g. GRAPHIC_DRIVERS="i915 i965 r300 r600 radeonsi nvidia"
|
||||
GRAPHIC_DRIVERS="r300 r600 radeonsi i915 i965 nvidia nvidia-legacy"
|
||||
GRAPHIC_DRIVERS="r300 r600 radeonsi i915 i965 nvidia nvidia-legacy wmware"
|
||||
|
||||
# build and install remote support (yes / no)
|
||||
REMOTE_SUPPORT="yes"
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.libimobiledevice.org"
|
||||
PKG_URL="http://www.libimobiledevice.org/downloads/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||
PKG_DEPENDS_TARGET="toolchain libusbmuxd libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain libusbmuxd openssl"
|
||||
PKG_SECTION="libs"
|
||||
PKG_SHORTDESC="libimobiledevice is a cross-platform software library that talks the protocols to support iPhone®, iPod Touch®, iPad® and Apple TV® devices"
|
||||
PKG_LONGDESC="libimobiledevice is a cross-platform software library that talks the protocols to support iPhone®, iPod Touch®, iPad® and Apple TV® devices"
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.irssi.org/"
|
||||
PKG_URL="https://github.com/irssi-import/irssi/releases/download/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain glib netbsd-curses libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain glib netbsd-curses openssl"
|
||||
PKG_SECTION="tools"
|
||||
PKG_SHORTDESC="IRC client"
|
||||
PKG_LONGDESC="Irssi is a terminal based IRC client for UNIX systems"
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://lftp.yar.ru/"
|
||||
PKG_URL="http://lftp.yar.ru/ftp/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain readline libressl zlib"
|
||||
PKG_DEPENDS_TARGET="toolchain readline openssl zlib"
|
||||
PKG_SECTION="tools"
|
||||
PKG_SHORTDESC="ftp client"
|
||||
PKG_LONGDESC="LFTP is a sophisticated ftp/http client, and a file transfer program supporting a number of network protocols"
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://projects.vdr-developer.org/projects/plg-streamdev"
|
||||
PKG_URL="https://projects.vdr-developer.org/git/vdr-plugin-streamdev.git/snapshot/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||
PKG_DEPENDS_TARGET="toolchain vdr libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain vdr openssl"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="TV"
|
||||
PKG_LONGDESC="TV"
|
||||
|
@ -24,7 +24,7 @@ PKG_ADDON_PROJECTS="RPi RPi2"
|
||||
PKG_LICENSE="OSS"
|
||||
PKG_SITE="https://github.com/patrikolausson/dispmanx_vnc"
|
||||
PKG_URL="https://github.com/patrikolausson/dispmanx_vnc/archive/$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain libvncserver bcm2835-bootloader bcm2835-driver libconfig libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain libvncserver bcm2835-bootloader bcm2835-driver libconfig openssl"
|
||||
PKG_SECTION="service/system"
|
||||
PKG_SHORTDESC="Raspberry Pi VNC: a Virtual Network Computing server for Raspberry Pi"
|
||||
PKG_LONGDESC="Raspberry Pi VNC ($PKG_VERSION) is a Virtual Network Computing (VNC) server for Raspberry Pi using dispmanx"
|
||||
|
@ -23,7 +23,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPLv2"
|
||||
PKG_SITE="http://troglobit.com/inadyn.html"
|
||||
PKG_URL="https://github.com/troglobit/inadyn/archive/v$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain libconfuse libite libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain libconfuse libite openssl"
|
||||
PKG_SECTION="service/system"
|
||||
PKG_SHORTDESC="Inadyn: a small and simple Dynamic Domain Name System client"
|
||||
PKG_LONGDESC="Inadyn ($PKG_VERSION) is a small and simple Dynamic Domain Name System (DDNS) client with HTTPS support. It is commonly available in many GNU/Linux distributions, used in off-the-shelf routers and Internet gateways to automate the task of keeping your DNS record up to date with any IP address changes from your ISP. It can also be used in installations with redundant (backup) connections to the Internet."
|
||||
|
@ -25,7 +25,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.proftpd.org/"
|
||||
PKG_URL="https://github.com/proftpd/proftpd/archive/v$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain libcap libressl netbsd-curses pcre whois"
|
||||
PKG_DEPENDS_TARGET="toolchain libcap openssl netbsd-curses pcre whois"
|
||||
PKG_SECTION="service"
|
||||
PKG_SHORTDESC="ProFTPD: a FTP server for linux"
|
||||
PKG_LONGDESC="ProFTPD ($PKG_VERSION): is a secure and configurable FTP server with SSL/TLS support"
|
||||
|
@ -23,7 +23,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPLv2"
|
||||
PKG_SITE="http://www.tinc-vpn.org/"
|
||||
PKG_URL="${PKG_SITE}/packages/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain libressl lzo zlib"
|
||||
PKG_DEPENDS_TARGET="toolchain openssl lzo zlib"
|
||||
PKG_SECTION="service/system"
|
||||
PKG_SHORTDESC="tinc: a Virtual Private Network daemon"
|
||||
PKG_LONGDESC="tinc ($PKG_VERSION) is a Virtual Private Network (VPN) daemon that uses tunnelling and encryption to create a secure private network between hosts on the Internet. Because the VPN appears to the IP level network code as a normal network device, there is no need to adapt any existing software. This allows VPN sites to share information with each other over the Internet without exposing any information to others."
|
||||
|
@ -1,17 +0,0 @@
|
||||
8.0.102
|
||||
- update tvheadend to 4.0.9-12
|
||||
- fixes picons download from Tvh server
|
||||
|
||||
8.0.101
|
||||
- update tvheadend to 4.0.9-5
|
||||
|
||||
8.0.100
|
||||
- update for LibreELEC 8.0
|
||||
|
||||
7.0.101
|
||||
- update tvheadend to 4.0.9-4
|
||||
- startup logic fix
|
||||
- added proper icon and description
|
||||
|
||||
7.0.100
|
||||
- initial LibreELEC version
|
Binary file not shown.
Before Width: | Height: | Size: 19 KiB |
@ -1,79 +0,0 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC 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.
|
||||
#
|
||||
# OpenELEC 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 OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="tvheadend"
|
||||
PKG_VERSION="e5400e2"
|
||||
PKG_VERSION_NUMBER="4.0.9"
|
||||
PKG_REV="102"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.tvheadend.org"
|
||||
PKG_URL="https://github.com/tvheadend/tvheadend/archive/$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain curl libdvbcsa libiconv libressl Python:host"
|
||||
PKG_SECTION="service.multimedia"
|
||||
PKG_SHORTDESC="Tvheadend: a TV streaming server for Linux"
|
||||
PKG_LONGDESC="Tvheadend ($PKG_VERSION_NUMBER): is a TV streaming server for Linux supporting DVB-S/S2, DVB-C, DVB-T/T2, IPTV, SAT>IP and ATSC"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
PKG_IS_ADDON="yes"
|
||||
PKG_ADDON_NAME="Tvheadend 4.0"
|
||||
PKG_ADDON_TYPE="xbmc.service"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--prefix=/usr \
|
||||
--arch=$TARGET_ARCH \
|
||||
--cpu=$TARGET_CPU \
|
||||
--cc=$CC \
|
||||
--enable-hdhomerun_client \
|
||||
--enable-hdhomerun_static \
|
||||
--disable-avahi \
|
||||
--disable-libav \
|
||||
--enable-inotify \
|
||||
--enable-epoll \
|
||||
--disable-uriparser \
|
||||
--enable-tvhcsa \
|
||||
--enable-bundle \
|
||||
--enable-dvbcsa \
|
||||
--disable-dbus_1 \
|
||||
--python=$TOOLCHAIN/bin/python"
|
||||
|
||||
post_unpack() {
|
||||
sed -e 's/VER="0.0.0~unknown"/VER="'$PKG_VERSION_NUMBER' ~ LibreELEC Tvh-addon v'$PKG_ADDON_REPOVERSION'.'$PKG_REV'"/g' -i $PKG_BUILD/support/version
|
||||
}
|
||||
|
||||
pre_configure_target() {
|
||||
# fails to build in subdirs
|
||||
cd $PKG_BUILD
|
||||
rm -rf .$TARGET_NAME
|
||||
|
||||
export CROSS_COMPILE=$TARGET_PREFIX
|
||||
export CFLAGS="$CFLAGS -I$SYSROOT_PREFIX/usr/include/iconv -L$SYSROOT_PREFIX/usr/lib/iconv"
|
||||
}
|
||||
|
||||
post_make_target() {
|
||||
$CC -O -fbuiltin -fomit-frame-pointer -fPIC -shared -o capmt_ca.so src/extra/capmt_ca.c -ldl
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # nothing to do here
|
||||
}
|
||||
|
||||
addon() {
|
||||
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin
|
||||
cp -P $PKG_BUILD/build.linux/tvheadend $ADDON_BUILD/$PKG_ADDON_ID/bin
|
||||
cp -P $PKG_BUILD/capmt_ca.so $ADDON_BUILD/$PKG_ADDON_ID/bin
|
||||
}
|
@ -1,69 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC 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.
|
||||
#
|
||||
# OpenELEC 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 OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
if [ $# -lt 1 ]
|
||||
then
|
||||
. /etc/profile
|
||||
|
||||
ADDON_HOME="$HOME/.kodi/userdata/addon_data/service.multimedia.tvheadend"
|
||||
ADDON_SETTINGS="$ADDON_HOME/settings.xml"
|
||||
XMLTV_TYPE=`grep XMLTV_TYPE $ADDON_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
||||
XMLTV_LOCATION_FILE=`grep XMLTV_LOCATION_FILE $ADDON_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
||||
XMLTV_LOCATION_WEB=`grep XMLTV_LOCATION_WEB $ADDON_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
||||
XMLTV_LOCATION_SCRIPT=`grep XMLTV_LOCATION_SCRIPT $ADDON_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
||||
|
||||
if [ "$XMLTV_TYPE" = "FILE" ]; then
|
||||
cat "$XMLTV_LOCATION_FILE"
|
||||
exit 0
|
||||
elif [ "$XMLTV_TYPE" = "SCRIPT" ]; then
|
||||
if [ -e "$XMLTV_LOCATION_SCRIPT" ] ; then
|
||||
exec "$XMLTV_LOCATION_SCRIPT"
|
||||
fi
|
||||
elif [ "$XMLTV_TYPE" = "WEB" ]; then
|
||||
wget -qO - "$XMLTV_LOCATION_WEB"
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
|
||||
dflag=
|
||||
vflag=
|
||||
cflag=
|
||||
|
||||
for a in "$@"
|
||||
do
|
||||
[ "$a" = "-d" -o "$a" = "--description" ] && dflag=1
|
||||
[ "$a" = "-v" -o "$a" = "--version" ] && vflag=1
|
||||
[ "$a" = "-c" -o "$a" = "--capabilities" ] && cflag=1
|
||||
done
|
||||
|
||||
if [ -n "$dflag" ]
|
||||
then
|
||||
echo "tv_grab_file is a simple grabber that can be configured through the addon settings from Kodi"
|
||||
fi
|
||||
|
||||
if [ -n "$vflag" ]
|
||||
then
|
||||
echo "1.0"
|
||||
fi
|
||||
|
||||
if [ -n "$cflag" ]
|
||||
then
|
||||
echo "baseline"
|
||||
fi
|
@ -1,93 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC 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.
|
||||
#
|
||||
# OpenELEC 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 OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
. /etc/profile
|
||||
|
||||
oe_setup_addon service.multimedia.tvheadend
|
||||
|
||||
ADDON_SETTINGS="$ADDON_HOME/settings.xml"
|
||||
XMLTV_FILE="$ADDON_DIR/bin/tv_grab_file"
|
||||
XMLTV_SETTINGS_DIR="$ADDON_HOME/xmltv"
|
||||
XMLTV_SETTINGS_FILE="$XMLTV_SETTINGS_DIR/config"
|
||||
DVR_SETTINGS_DIR="$ADDON_HOME/dvr"
|
||||
DVR_SETTINGS_FILE="$DVR_SETTINGS_DIR/config"
|
||||
DVR_DIR="$HOME/recordings"
|
||||
TIMESHIFT_SETTINGS_DIR="$ADDON_HOME/timeshift"
|
||||
TIMESHIFT_SETTINGS_FILE="$TIMESHIFT_SETTINGS_DIR/config"
|
||||
TIMESHIFT_DIR="$ADDON_HOME/cache/timeshift"
|
||||
|
||||
chmod a+x $ADDON_DIR/bin/*
|
||||
|
||||
if [ "$WORKAROUND_SLEEP" == "true" ] ; then
|
||||
sleep $WORKAROUND_SLEEP_TIME
|
||||
fi
|
||||
|
||||
if [ ! -f "$XMLTV_SETTINGS_FILE" ]; then
|
||||
mkdir -p $XMLTV_SETTINGS_DIR
|
||||
if [ -f $ADDON_DIR/xmltv-config ]; then
|
||||
cp $ADDON_DIR/xmltv-config $XMLTV_SETTINGS_FILE
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -f "$DVR_SETTINGS_FILE" ]; then
|
||||
mkdir -p $DVR_DIR
|
||||
mkdir -p $DVR_SETTINGS_DIR
|
||||
if [ -f $ADDON_DIR/dvr-config ]; then
|
||||
cp $ADDON_DIR/dvr-config $DVR_SETTINGS_FILE
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -f "$TIMESHIFT_SETTINGS_FILE" ]; then
|
||||
mkdir -p $TIMESHIFT_DIR
|
||||
mkdir -p $TIMESHIFT_SETTINGS_DIR
|
||||
if [ -f $ADDON_DIR/timeshift-config ]; then
|
||||
cp $ADDON_DIR/timeshift-config $TIMESHIFT_SETTINGS_FILE
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$DEBUG" = "yes" ]; then
|
||||
TVHEADEND_ARG="-B -C -s -u root -g video -c $ADDON_HOME"
|
||||
else
|
||||
TVHEADEND_ARG="-B -C -u root -g video -c $ADDON_HOME"
|
||||
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 Tvheadend "### 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
|
||||
|
||||
if [ "$PRELOAD_CAPMT_CA" == "true" ] ; then
|
||||
logger -t Tvheadend "### Preloading capmt_ca.so library ###"
|
||||
LD_PRELOAD="$ADDON_DIR/bin/capmt_ca.so $LD_PRELOAD" exec $ADDON_DIR/bin/tvheadend $TVHEADEND_ARG &>$ADDON_LOG_FILE
|
||||
else
|
||||
exec $ADDON_DIR/bin/tvheadend $TVHEADEND_ARG &>$ADDON_LOG_FILE
|
||||
fi
|
@ -1,17 +0,0 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC 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.
|
||||
#
|
||||
# OpenELEC 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 OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
@ -1,15 +0,0 @@
|
||||
{
|
||||
"storage": "/storage/recordings",
|
||||
"retention-days": 31,
|
||||
"pre-extra-time": 0,
|
||||
"post-extra-time": 0,
|
||||
"day-dir": 0,
|
||||
"channel-dir": 0,
|
||||
"channel-in-title": 0,
|
||||
"date-in-title": 0,
|
||||
"time-in-title": 0,
|
||||
"whitespace-in-title": 0,
|
||||
"title-dir": 0,
|
||||
"episode-in-title": 0,
|
||||
"tag-files": 1
|
||||
}
|
@ -1,20 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<strings>
|
||||
|
||||
<!-- HTS TVHEADEND -->
|
||||
<string id="1000">XMLTV</string>
|
||||
<string id="1001">DVB</string>
|
||||
<string id="1011">XMLTV configuration</string>
|
||||
<string id="1011">XMLTV source type</string>
|
||||
<string id="1012">XMLTV File location</string>
|
||||
<string id="1013">XMLTV Web location</string>
|
||||
<string id="1014">XMLTV Script location</string>
|
||||
<string id="1020">DVB Configuration</string>
|
||||
<string id="1021">Unload DVB mudules before suspend</string>
|
||||
<string id="1022">Wait for frontend initialization</string>
|
||||
<string id="1023">Number of adapters to wait for</string>
|
||||
<string id="1024">Preload capmt_ca.so library</string>
|
||||
<string id="1025">Delay the start of Tvheadend</string>
|
||||
<string id="1026">time (s)</string>
|
||||
|
||||
</strings>
|
@ -1,23 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<settings>
|
||||
|
||||
<!-- HTS TVHEADEND -->
|
||||
<category label="1000">
|
||||
<setting label="1010" type="lsep"/>
|
||||
<setting type="sep" />
|
||||
<setting id="XMLTV_TYPE" type="labelenum" label="1011" values="NONE|FILE|SCRIPT|WEB" sort="yes" default="NONE"/>
|
||||
<setting id="XMLTV_LOCATION_FILE" type="file" label="1012" default="" enable="eq(-1,0)"/>
|
||||
<setting id="XMLTV_LOCATION_WEB" type="text" label="1013" default="http://" enable="eq(-2,3)"/>
|
||||
<setting id="XMLTV_LOCATION_SCRIPT" type="file" label="1014" default="" enable="eq(-3,2)"/>
|
||||
</category>
|
||||
<category label="1001">
|
||||
<setting label="1020" type="lsep"/>
|
||||
<setting type="sep" />
|
||||
<setting id="WAIT_FOR_FEINIT" type="bool" label="1022" default="false" />
|
||||
<setting id="NUM_ADAPTERS" type="slider" range="1,16" option="int" label="1023" default="1" enable="eq(-1,true)" />
|
||||
<setting id="REMOVE_MODULES" type="text" label="1021" values="" default=""/>
|
||||
<setting id="PRELOAD_CAPMT_CA" type="bool" label="1024" default="false" />
|
||||
<setting id="WORKAROUND_SLEEP" type="bool" label="1025" default="false" />
|
||||
<setting id="WORKAROUND_SLEEP_TIME" type="slider" range="1,30" option="int" label="1026" default="1" enable="eq(-1,true)" />
|
||||
</category>
|
||||
</settings>
|
@ -1,10 +0,0 @@
|
||||
<settings>
|
||||
<setting id="WAIT_FOR_FEINIT" value="false" />
|
||||
<setting id="NUM_ADAPTERS" value="1" />
|
||||
<setting id="XMLTV_LOCATION_FILE" value="" />
|
||||
<setting id="XMLTV_LOCATION_WEB" value="http://" />
|
||||
<setting id="XMLTV_TYPE" value="NONE" />
|
||||
<setting id="PRELOAD_CAPMT_CA" value="false" />
|
||||
<setting id="WORKAROUND_SLEEP" value="false" />
|
||||
<setting id="WORKAROUND_SLEEP_TIME" value="1" />
|
||||
</settings>
|
@ -1,44 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC 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.
|
||||
#
|
||||
# OpenELEC 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 OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
. /etc/profile
|
||||
|
||||
oe_setup_addon service.multimedia.tvheadend
|
||||
|
||||
SERVICE="service.multimedia.tvheadend"
|
||||
|
||||
case "$1" in
|
||||
pre)
|
||||
if systemctl is-active "$SERVICE" &>/dev/null ; then
|
||||
systemctl stop "$SERVICE"
|
||||
for module in $REMOVE_MODULES ; do
|
||||
rmmod $module
|
||||
done
|
||||
fi
|
||||
;;
|
||||
post)
|
||||
if systemctl is-enabled "$SERVICE" &>/dev/null ; then
|
||||
for module in $REMOVE_MODULES ; do
|
||||
modprobe $module
|
||||
done
|
||||
systemctl start "$SERVICE"
|
||||
fi
|
||||
;;
|
||||
esac
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=TVHeadend Service
|
||||
After=network-online.service
|
||||
Requires=network-online.service
|
||||
|
||||
[Service]
|
||||
ExecStart=/bin/sh -c "exec sh /storage/.kodi/addons/service.multimedia.tvheadend/bin/tvheadend.start"
|
||||
TimeoutStopSec=2
|
||||
Restart=always
|
||||
RestartSec=2
|
||||
StartLimitInterval=0
|
||||
|
||||
[Install]
|
||||
WantedBy=kodi.target
|
@ -1,9 +0,0 @@
|
||||
{
|
||||
"enabled": 0,
|
||||
"ondemand": 0,
|
||||
"path": "/storage/.kodi/userdata/addon_data/service.multimedia.tvheadend/cache/timeshift",
|
||||
"unlimited_period": 0,
|
||||
"max_period": 3600,
|
||||
"unlimited_size": 0,
|
||||
"max_size": 1024
|
||||
}
|
@ -1,14 +0,0 @@
|
||||
{
|
||||
"grabbers": [
|
||||
{
|
||||
"path": "/storage/.kodi/addons/service.multimedia.tvheadend/bin/tv_grab_file",
|
||||
"description": "tv_grag_file is a simple grabber that just read the ~/.xmltv/tv_grab_file.xmltv file",
|
||||
"version": "0.1\n",
|
||||
"mtime": 1318774706,
|
||||
"capabilities": 1
|
||||
}
|
||||
],
|
||||
"grab-interval": 12,
|
||||
"grab-enabled": 1,
|
||||
"current-grabber": "/storage/.kodi/addons/service.multimedia.tvheadend/bin/tv_grab_file"
|
||||
}
|
@ -25,7 +25,7 @@ PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.tvheadend.org"
|
||||
PKG_URL="https://github.com/tvheadend/tvheadend/archive/$PKG_VERSION.tar.gz"
|
||||
PKG_SOURCE_DIR="tvheadend-${PKG_VERSION}*"
|
||||
PKG_DEPENDS_TARGET="toolchain curl dvb-tools libdvbcsa libiconv libressl pngquant:host Python:host yasm"
|
||||
PKG_DEPENDS_TARGET="toolchain curl dvb-tools libdvbcsa libiconv openssl pngquant:host Python:host yasm"
|
||||
PKG_SECTION="service"
|
||||
PKG_SHORTDESC="Tvheadend: a TV streaming server for Linux"
|
||||
PKG_LONGDESC="Tvheadend ($PKG_VERSION_NUMBER): is a TV streaming server for Linux supporting DVB-S/S2, DVB-C, DVB-T/T2, IPTV, SAT>IP, ATSC and ISDB-T"
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://pulseaudio.org/"
|
||||
PKG_URL="http://www.freedesktop.org/software/pulseaudio/releases/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain libtool json-c alsa-lib libsndfile soxr dbus systemd libressl libcap"
|
||||
PKG_DEPENDS_TARGET="toolchain libtool json-c alsa-lib libsndfile soxr dbus systemd openssl libcap"
|
||||
PKG_SECTION="audio"
|
||||
PKG_SHORTDESC="pulseaudio: Yet another sound server for Unix"
|
||||
PKG_LONGDESC="PulseAudio is a sound server for Linux and other Unix-like operating systems. It is intended to be an improved drop-in replacement for the Enlightened Sound Daemon (esound or esd). In addition to the features esound provides, PulseAudio has an extensible plugin architecture, support for more than one sink per source, better low-latency behavior, the ability to be embedded into other software, a completely asynchronous C API, a simple command line interface for reconfiguring the daemon while running, flexible and implicit sample type conversion and resampling, and a "Zero-Copy" architecture."
|
||||
|
@ -23,7 +23,7 @@ PKG_LICENSE="LGPL"
|
||||
PKG_SITE="http://www.mysql.com"
|
||||
PKG_URL="http://ftp.gwdg.de/pub/misc/$PKG_NAME/Downloads/MySQL-5.7/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_HOST="zlib:host"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib netbsd-curses libressl boost mysql:host"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib netbsd-curses openssl boost mysql:host"
|
||||
PKG_SECTION="database"
|
||||
PKG_SHORTDESC="mysql: A database server"
|
||||
PKG_LONGDESC="MySQL is a SQL (Structured Query Language) database server. SQL is the most popular database language in the world. MySQL is a client server implementation that consists of a server daemon mysqld and many different client programs/libraries."
|
||||
@ -32,7 +32,6 @@ PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
post_unpack() {
|
||||
sed -i 's|OPENSSL_MAJOR_VERSION STREQUAL "1"|OPENSSL_MAJOR_VERSION STREQUAL "2"|' $PKG_BUILD/cmake/ssl.cmake
|
||||
sed -i 's|GET_TARGET_PROPERTY(LIBMYSQL_OS_OUTPUT_NAME libmysql OUTPUT_NAME)|SET(LIBMYSQL_OS_OUTPUT_NAME "mysqlclient")|' $PKG_BUILD/scripts/CMakeLists.txt
|
||||
sed -i "s|COMMAND comp_err|COMMAND $TOOLCHAIN/bin/comp_err|" $PKG_BUILD/extra/CMakeLists.txt
|
||||
sed -i "s|COMMAND comp_sql|COMMAND $TOOLCHAIN/bin/comp_sql|" $PKG_BUILD/scripts/CMakeLists.txt
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="BSD"
|
||||
PKG_SITE="http://www.cmake.org/"
|
||||
PKG_URL="http://www.cmake.org/files/v3.6/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_HOST="ccache:host libressl:host"
|
||||
PKG_DEPENDS_HOST="ccache:host openssl:host"
|
||||
PKG_SECTION="toolchain/devel"
|
||||
PKG_SHORTDESC="cmake: A cross-platform, open-source make system"
|
||||
PKG_LONGDESC="CMake is used to control the software compilation process using simple platform and compiler independent configuration files. CMake generates native makefiles and workspaces that can be used in the compiler environment of your choice. CMake is quite sophisticated: it is possible to support complex environments requiring system configuration, preprocessor generation, code generation, and template instantiation."
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="OSS"
|
||||
PKG_SITE="http://www.mesa3d.org/"
|
||||
PKG_URL="ftp://freedesktop.org/pub/mesa/${PKG_VERSION%-*}/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain Python:host expat glproto dri2proto presentproto libdrm libXext libXdamage libXfixes libXxf86vm libxcb libX11 systemd dri3proto libxshmfence libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain Python:host expat glproto dri2proto presentproto libdrm libXext libXdamage libXfixes libXxf86vm libxcb libX11 systemd dri3proto libxshmfence openssl"
|
||||
PKG_SECTION="graphics"
|
||||
PKG_SHORTDESC="mesa: 3-D graphics library with OpenGL API"
|
||||
PKG_LONGDESC="Mesa is a 3-D graphics library with an API which is very similar to that of OpenGL*. To the extent that Mesa utilizes the OpenGL command syntax or state machine, it is being used with authorization from Silicon Graphics, Inc. However, the author makes no claim that Mesa is in any way a compatible replacement for OpenGL or associated with Silicon Graphics, Inc. Those who want a licensed implementation of OpenGL should contact a licensed vendor. While Mesa is not a licensed OpenGL implementation, it is currently being tested with the OpenGL conformance tests. For the current conformance status see the CONFORM file included in the Mesa distribution."
|
||||
|
@ -23,7 +23,7 @@ PKG_LICENSE="OSS"
|
||||
PKG_SITE="http://www.python.org/"
|
||||
PKG_URL="http://www.python.org/ftp/python/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_HOST="zlib:host bzip2:host sqlite:host"
|
||||
PKG_DEPENDS_TARGET="toolchain sqlite expat zlib bzip2 libressl libffi Python:host"
|
||||
PKG_DEPENDS_TARGET="toolchain sqlite expat zlib bzip2 openssl libffi Python:host"
|
||||
PKG_SECTION="lang"
|
||||
PKG_SHORTDESC="python: The Python programming language"
|
||||
PKG_LONGDESC="Python is an interpreted object-oriented programming language, and is often compared with Tcl, Perl, Java or Scheme."
|
||||
|
@ -5,7 +5,7 @@
|
||||
{USB_DEVICE(0x2357, 0x0101),.driver_info = RTL8812}, /* TP-Link - T4U */
|
||||
{USB_DEVICE(0x2357, 0x0103),.driver_info = RTL8812}, /* TP-Link - T4UH */
|
||||
+ /*=== Patched ID ===*/
|
||||
+ {USB_DEVICE(0x050D, 0x010d),.driver_info = RTL8812}, /* TP-Link - T4U v2 */
|
||||
+ {USB_DEVICE(0x2357, 0x010d),.driver_info = RTL8812}, /* TP-Link - T4U v2 */
|
||||
+ {USB_DEVICE(0x050D, 0x1109),.driver_info = RTL8812}, /* Belkin F9L1109 - SerComm */
|
||||
+ {USB_DEVICE(0x20F4, 0x805B),.driver_info = RTL8812}, /* TRENDnet - Cameo */
|
||||
+ {USB_DEVICE(0x148F, 0x9097),.driver_info = RTL8812}, /* Amped Wireless ACA1 */
|
||||
|
@ -29,13 +29,13 @@ PKG_SHORTDESC="linux26: The Linux kernel 2.6 precompiled kernel binary image and
|
||||
PKG_LONGDESC="This package contains a precompiled kernel image and the modules."
|
||||
case "$LINUX" in
|
||||
amlogic-3.10)
|
||||
PKG_VERSION="7c63993"
|
||||
PKG_VERSION="544ea88"
|
||||
PKG_URL="https://github.com/LibreELEC/linux-amlogic/archive/$PKG_VERSION.tar.gz"
|
||||
PKG_SOURCE_DIR="$PKG_NAME-amlogic-$PKG_VERSION*"
|
||||
PKG_PATCH_DIRS="amlogic-3.10"
|
||||
;;
|
||||
amlogic-3.14)
|
||||
PKG_VERSION="6c88aa0"
|
||||
PKG_VERSION="f6f2e4c"
|
||||
PKG_URL="https://github.com/LibreELEC/linux-amlogic/archive/$PKG_VERSION.tar.gz"
|
||||
PKG_SOURCE_DIR="$PKG_NAME-amlogic-$PKG_VERSION*"
|
||||
PKG_PATCH_DIRS="amlogic-3.14"
|
||||
|
@ -221,14 +221,13 @@ PKG_CMAKE_OPTS_TARGET="-DNATIVEPREFIX=$TOOLCHAIN \
|
||||
-DENABLE_CCACHE=ON \
|
||||
-DENABLE_LIRC=ON \
|
||||
-DENABLE_EVENTCLIENTS=ON \
|
||||
-DENABLE_LDGOLD=OFF \
|
||||
-DENABLE_LDGOLD=ON \
|
||||
$KODI_ARCH \
|
||||
$KODI_OPENGL \
|
||||
$KODI_OPENGLES \
|
||||
$KODI_OPENMAX \
|
||||
$KODI_VDPAU \
|
||||
$KODI_VAAPI \
|
||||
$KODI_JOYSTICK \
|
||||
$KODI_CEC \
|
||||
$KODI_XORG \
|
||||
$KODI_SAMBA \
|
||||
@ -248,7 +247,6 @@ PKG_CMAKE_OPTS_TARGET="-DNATIVEPREFIX=$TOOLCHAIN \
|
||||
pre_configure_target() {
|
||||
# kodi should never be built with lto
|
||||
strip_lto
|
||||
strip_gold
|
||||
|
||||
export LIBS="$LIBS -lz -lterminfo"
|
||||
}
|
||||
|
@ -0,0 +1,231 @@
|
||||
From 84eccc9a16867d1e06ca2b65da1cc41f050ca06b Mon Sep 17 00:00:00 2001
|
||||
From: chewitt <github@chrishewitt.net>
|
||||
Date: Tue, 16 May 2017 12:51:32 +0100
|
||||
Subject: [PATCH] smbclient: cleanup smbclient configuration
|
||||
|
||||
---
|
||||
.../resource.language.en_gb/resources/strings.po | 38 +++++++++++++++++++-
|
||||
system/settings/settings.xml | 20 +++++++++--
|
||||
xbmc/filesystem/SMBFile.cpp | 40 ++++++++++++++--------
|
||||
xbmc/network/NetworkServices.cpp | 3 +-
|
||||
xbmc/settings/Settings.cpp | 2 ++
|
||||
xbmc/settings/Settings.h | 1 +
|
||||
6 files changed, 84 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/addons/resource.language.en_gb/resources/strings.po b/addons/resource.language.en_gb/resources/strings.po
|
||||
index e0060d1fae55..eb47be8cc723 100644
|
||||
--- a/addons/resource.language.en_gb/resources/strings.po
|
||||
+++ b/addons/resource.language.en_gb/resources/strings.po
|
||||
@@ -19063,7 +19063,43 @@ msgctxt "#36620"
|
||||
msgid "Enable high quality downscaling of pictures (uses more memory and has moderate performance impact)."
|
||||
msgstr ""
|
||||
|
||||
-#empty strings from id 36621 to 36899
|
||||
+#. Label of a setting, allow the maximum smbclient protocol to be configured
|
||||
+#: system/settings/settings.xml
|
||||
+msgctxt "#36621"
|
||||
+msgid "Maximum protocol version"
|
||||
+msgstr ""
|
||||
+
|
||||
+#. Description of setting with label #36621 "Maximum protocol version"
|
||||
+#: system/settings/settings.xml
|
||||
+msgctxt "#36622"
|
||||
+msgid "Set the maximum SMB protocol version that can be negotiated (default SMBv3). Reduce to SMBv2 or SMBv1 for compatibility with older NAS and Windows shares if required."
|
||||
+msgstr ""
|
||||
+
|
||||
+#. Values for setting with label #36621 "Maximum protocol version"
|
||||
+#: system/settings/settings.xml
|
||||
+msgctxt "#36623"
|
||||
+msgid "SMBv1"
|
||||
+msgstr ""
|
||||
+
|
||||
+#. Values for setting with label #36621 "Maximum protocol version"
|
||||
+#: system/settings/settings.xml
|
||||
+msgctxt "#36624"
|
||||
+msgid "SMBv2"
|
||||
+msgstr ""
|
||||
+
|
||||
+#. Values for setting with label #36621 "Maximum protocol version"
|
||||
+#: system/settings/settings.xml
|
||||
+msgctxt "#36625"
|
||||
+msgid "SMBv3"
|
||||
+msgstr ""
|
||||
+
|
||||
+#. Label of a group, that allows configuration of the system SMB client
|
||||
+#: system/settings/settings.xml
|
||||
+msgctxt "#36626"
|
||||
+msgid "Client"
|
||||
+msgstr ""
|
||||
+
|
||||
+#empty strings from id 36627 to 36899
|
||||
|
||||
#: xbmc/media/MediaType.cpp
|
||||
msgctxt "#36900"
|
||||
diff --git a/system/settings/settings.xml b/system/settings/settings.xml
|
||||
index 301e7276e5b7..de6f6055afb8 100644
|
||||
--- a/system/settings/settings.xml
|
||||
+++ b/system/settings/settings.xml
|
||||
@@ -1944,15 +1944,29 @@
|
||||
<category id="smb" label="1200" help="36346">
|
||||
<requirement>HAS_FILESYSTEM_SMB</requirement>
|
||||
<group id="1" label="16000">
|
||||
+ <setting id="smb.workgroup" type="string" label="1202" help="36348">
|
||||
+ <level>2</level>
|
||||
+ <default>WORKGROUP</default>
|
||||
+ <control type="edit" format="string" />
|
||||
+ </setting>
|
||||
+ </group>
|
||||
+ <group id="2" label="36626">
|
||||
<setting id="smb.winsserver" type="string" label="1207" help="36347">
|
||||
<level>2</level>
|
||||
<default>0.0.0.0</default>
|
||||
<control type="edit" format="ip" />
|
||||
</setting>
|
||||
- <setting id="smb.workgroup" type="string" label="1202" help="36348">
|
||||
+ <setting id="smb.maxprotocol" type="integer" label="36621" help="36622">
|
||||
<level>2</level>
|
||||
- <default>WORKGROUP</default>
|
||||
- <control type="edit" format="string" />
|
||||
+ <default>3</default>
|
||||
+ <constraints>
|
||||
+ <options>
|
||||
+ <option label="36623">1</option>
|
||||
+ <option label="36624">2</option>
|
||||
+ <option label="36625">3</option>
|
||||
+ </options>
|
||||
+ </constraints>
|
||||
+ <control type="list" format="integer" />
|
||||
</setting>
|
||||
</group>
|
||||
</category>
|
||||
diff --git a/xbmc/filesystem/SMBFile.cpp b/xbmc/filesystem/SMBFile.cpp
|
||||
index e53d5552cf10..a51d1d383cb0 100644
|
||||
--- a/xbmc/filesystem/SMBFile.cpp
|
||||
+++ b/xbmc/filesystem/SMBFile.cpp
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "PasswordManager.h"
|
||||
#include "SMBDirectory.h"
|
||||
#include <libsmbclient.h>
|
||||
+#include "filesystem/SpecialProtocol.h"
|
||||
#include "settings/AdvancedSettings.h"
|
||||
#include "settings/Settings.h"
|
||||
#include "threads/SingleLock.h"
|
||||
@@ -91,34 +92,36 @@ void CSMB::Deinit()
|
||||
void CSMB::Init()
|
||||
{
|
||||
CSingleLock lock(*this);
|
||||
+
|
||||
if (!m_context)
|
||||
{
|
||||
+ // force libsmbclient to use our own smb.conf by overriding HOME
|
||||
+ std::string truehome(getenv("HOME"));
|
||||
+ setenv("HOME", CSpecialProtocol::TranslatePath("special://home").c_str(), 1);
|
||||
+
|
||||
// Create ~/.smb/smb.conf. This file is used by libsmbclient.
|
||||
// http://us1.samba.org/samba/docs/man/manpages-3/libsmbclient.7.html
|
||||
// http://us1.samba.org/samba/docs/man/manpages-3/smb.conf.5.html
|
||||
- char smb_conf[MAX_PATH];
|
||||
+ std::string smb_conf;
|
||||
std::string home(getenv("HOME"));
|
||||
URIUtils::RemoveSlashAtEnd(home);
|
||||
- snprintf(smb_conf, sizeof(smb_conf), "%s/.smb", home.c_str());
|
||||
- if (mkdir(smb_conf, 0755) == 0)
|
||||
+ smb_conf = home + "/.smb";
|
||||
+ int result = mkdir(smb_conf.c_str(), 0755);
|
||||
+ if (result == 0 || (errno == EEXIST && IsFirstInit))
|
||||
{
|
||||
- snprintf(smb_conf, sizeof(smb_conf), "%s/.smb/smb.conf", getenv("HOME"));
|
||||
- FILE* f = fopen(smb_conf, "w");
|
||||
+ smb_conf += "/smb.conf";
|
||||
+ FILE* f = fopen(smb_conf.c_str(), "w");
|
||||
if (f != NULL)
|
||||
{
|
||||
fprintf(f, "[global]\n");
|
||||
|
||||
- // make sure we're not acting like a server
|
||||
- fprintf(f, "\tpreferred master = no\n");
|
||||
- fprintf(f, "\tlocal master = no\n");
|
||||
- fprintf(f, "\tdomain master = no\n");
|
||||
+ fprintf(f, "\tlock directory = %s/.smb/\n", home.c_str());
|
||||
|
||||
- // use the weaker LANMAN password hash in order to be compatible with older servers
|
||||
- fprintf(f, "\tclient lanman auth = yes\n");
|
||||
- fprintf(f, "\tlanman auth = yes\n");
|
||||
-
|
||||
- fprintf(f, "\tsocket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536\n");
|
||||
- fprintf(f, "\tlock directory = %s/.smb/\n", getenv("HOME"));
|
||||
+ // set maximum smbclient protocol version
|
||||
+ if (CSettings::GetInstance().GetInt(CSettings::SETTING_SMB_MAXPROTOCOL) == 1)
|
||||
+ fprintf(f, "\tclient max protocol = NT1\n");
|
||||
+ else
|
||||
+ fprintf(f, "\tclient max protocol = SMB%d\n", CSettings::GetInstance().GetInt(CSettings::SETTING_SMB_MAXPROTOCOL));
|
||||
|
||||
// set wins server if there's one. name resolve order defaults to 'lmhosts host wins bcast'.
|
||||
// if no WINS server has been specified the wins method will be ignored.
|
||||
@@ -135,6 +138,9 @@ void CSMB::Init()
|
||||
if (g_advancedSettings.m_sambadoscodepage.length() > 0)
|
||||
fprintf(f, "\tdos charset = %s\n", g_advancedSettings.m_sambadoscodepage.c_str());
|
||||
|
||||
+ // include users configuration if available
|
||||
+ fprintf(f, "\tinclude = %s/.smb/user.conf\n", home.c_str());
|
||||
+
|
||||
fclose(f);
|
||||
}
|
||||
}
|
||||
@@ -151,6 +157,10 @@ void CSMB::Init()
|
||||
|
||||
// setup our context
|
||||
m_context = smbc_new_context();
|
||||
+
|
||||
+ // restore HOME
|
||||
+ setenv("HOME", truehome.c_str(), 1);
|
||||
+
|
||||
#ifdef DEPRECATED_SMBC_INTERFACE
|
||||
smbc_setDebug(m_context, g_advancedSettings.CanLogComponent(LOGSAMBA) ? 10 : 0);
|
||||
smbc_setFunctionAuthData(m_context, xb_smbc_auth);
|
||||
diff --git a/xbmc/network/NetworkServices.cpp b/xbmc/network/NetworkServices.cpp
|
||||
index 6c5842625202..393dabc3067d 100644
|
||||
--- a/xbmc/network/NetworkServices.cpp
|
||||
+++ b/xbmc/network/NetworkServices.cpp
|
||||
@@ -438,7 +438,8 @@ void CNetworkServices::OnSettingChanged(const CSetting *setting)
|
||||
else
|
||||
#endif // HAS_WEB_SERVER
|
||||
if (settingId == CSettings::SETTING_SMB_WINSSERVER ||
|
||||
- settingId == CSettings::SETTING_SMB_WORKGROUP)
|
||||
+ settingId == CSettings::SETTING_SMB_WORKGROUP ||
|
||||
+ settingId == CSettings::SETTING_SMB_MAXPROTOCOL)
|
||||
{
|
||||
// okey we really don't need to restart, only deinit samba, but that could be damn hard if something is playing
|
||||
//! @todo - General way of handling setting changes that require restart
|
||||
diff --git a/xbmc/settings/Settings.cpp b/xbmc/settings/Settings.cpp
|
||||
index 9b3372b13b15..f76c152b4d37 100644
|
||||
--- a/xbmc/settings/Settings.cpp
|
||||
+++ b/xbmc/settings/Settings.cpp
|
||||
@@ -333,6 +333,7 @@ const std::string CSettings::SETTING_SERVICES_AIRPLAYPASSWORD = "services.airpla
|
||||
const std::string CSettings::SETTING_SERVICES_AIRPLAYVIDEOSUPPORT = "services.airplayvideosupport";
|
||||
const std::string CSettings::SETTING_SMB_WINSSERVER = "smb.winsserver";
|
||||
const std::string CSettings::SETTING_SMB_WORKGROUP = "smb.workgroup";
|
||||
+const std::string CSettings::SETTING_SMB_MAXPROTOCOL = "smb.maxprotocol";
|
||||
const std::string CSettings::SETTING_VIDEOSCREEN_MONITOR = "videoscreen.monitor";
|
||||
const std::string CSettings::SETTING_VIDEOSCREEN_SCREEN = "videoscreen.screen";
|
||||
const std::string CSettings::SETTING_VIDEOSCREEN_RESOLUTION = "videoscreen.resolution";
|
||||
@@ -1159,6 +1160,7 @@ void CSettings::InitializeISettingCallbacks()
|
||||
settingSet.insert(CSettings::SETTING_SERVICES_ESCONTINUOUSDELAY);
|
||||
settingSet.insert(CSettings::SETTING_SMB_WINSSERVER);
|
||||
settingSet.insert(CSettings::SETTING_SMB_WORKGROUP);
|
||||
+ settingSet.insert(CSettings::SETTING_SMB_MAXPROTOCOL);
|
||||
m_settingsManager->RegisterCallback(&CNetworkServices::GetInstance(), settingSet);
|
||||
|
||||
settingSet.clear();
|
||||
diff --git a/xbmc/settings/Settings.h b/xbmc/settings/Settings.h
|
||||
index 2921b7244fe7..ab6770997ce5 100644
|
||||
--- a/xbmc/settings/Settings.h
|
||||
+++ b/xbmc/settings/Settings.h
|
||||
@@ -290,6 +290,7 @@ class CSettings : public CSettingCreator, public CSettingControlCreator
|
||||
static const std::string SETTING_SERVICES_AIRPLAYVIDEOSUPPORT;
|
||||
static const std::string SETTING_SMB_WINSSERVER;
|
||||
static const std::string SETTING_SMB_WORKGROUP;
|
||||
+ static const std::string SETTING_SMB_MAXPROTOCOL;
|
||||
static const std::string SETTING_VIDEOSCREEN_MONITOR;
|
||||
static const std::string SETTING_VIDEOSCREEN_SCREEN;
|
||||
static const std::string SETTING_VIDEOSCREEN_RESOLUTION;
|
@ -24,7 +24,7 @@ PKG_LICENSE="LGPLv2.1+"
|
||||
PKG_SITE="https://ffmpeg.org"
|
||||
PKG_URL="https://github.com/xbmc/FFmpeg/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_SOURCE_DIR="FFmpeg-${PKG_VERSION}*"
|
||||
PKG_DEPENDS_TARGET="toolchain yasm:host zlib bzip2 libressl speex"
|
||||
PKG_DEPENDS_TARGET="toolchain yasm:host zlib bzip2 openssl speex"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="FFmpeg is a complete, cross-platform solution to record, convert and stream audio and video."
|
||||
PKG_LONGDESC="FFmpeg is a complete, cross-platform solution to record, convert and stream audio and video."
|
||||
@ -123,7 +123,7 @@ configure_target() {
|
||||
--enable-shared \
|
||||
--enable-gpl \
|
||||
--disable-version3 \
|
||||
--disable-nonfree \
|
||||
--enable-nonfree \
|
||||
--enable-logging \
|
||||
--disable-doc \
|
||||
$FFMPEG_DEBUG \
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff --git a/configure b/configure
|
||||
index 3960b73..2d9ec93 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -4545,7 +4545,6 @@ die_license_disabled nonfree libaacplus
|
||||
die_license_disabled nonfree libfaac
|
||||
die_license_disabled nonfree nvenc
|
||||
enabled gpl && die_license_disabled_gpl nonfree libfdk_aac
|
||||
-enabled gpl && die_license_disabled_gpl nonfree openssl
|
||||
|
||||
die_license_disabled version3 libopencore_amrnb
|
||||
die_license_disabled version3 libopencore_amrwb
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://rtmpdump.mplayerhq.hu/"
|
||||
PKG_URL="http://repo.or.cz/rtmpdump.git/snapshot/$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib openssl"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="rtmpdump: a toolkit for RTMP streams."
|
||||
PKG_LONGDESC="rtmpdump is a toolkit for RTMP streams. All forms of RTMP are supported, including rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://."
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="OpenSource"
|
||||
PKG_SITE="http://www.libssh.org/"
|
||||
PKG_URL="https://git.libssh.org/projects/libssh.git/snapshot/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib openssl"
|
||||
PKG_SECTION="network"
|
||||
PKG_SHORTDESC="libssh: A working SSH implementation by means of a library"
|
||||
PKG_LONGDESC="The ssh library was designed to be used by programmers needing a working SSH implementation by the mean of a library. The complete control of the client is made by the programmer. With libssh, you can remotely execute programs, transfer files, use a secure and transparent tunnel for your remote programs. With its Secure FTP implementation, you can play with remote files easily, without third-party programs others than libcrypto (from openssl)."
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="OSS"
|
||||
PKG_SITE="http://www.openssh.com/"
|
||||
PKG_URL="http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib openssl"
|
||||
PKG_SECTION="network"
|
||||
PKG_SHORTDESC="openssh: An open re-implementation of the SSH package"
|
||||
PKG_LONGDESC="This is a Linux port of OpenBSD's excellent OpenSSH. OpenSSH is based on the last free version of Tatu Ylonen's SSH with all patent-encumbered algorithms removed, all known security bugs fixed, new features reintroduced, and many other clean-ups. SSH (Secure Shell) is a program to log into another computer over a network, to execute commands in a remote machine, and to move files from one machine to another. It provides strong authentication and secure communications over insecure channels. It is intended as a replacement for rlogin, rsh, rcp, and rdist."
|
||||
|
@ -23,7 +23,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://openvpn.net"
|
||||
PKG_URL="http://swupdate.openvpn.org/community/releases/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain lzo libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain lzo openssl"
|
||||
PKG_SECTION="network"
|
||||
PKG_SHORTDESC="openvpn: a full featured SSL VPN software solution that integrates OpenVPN server capabilities."
|
||||
PKG_LONGDESC="OpenVPN Access Server is a full featured SSL VPN software solution that integrates OpenVPN server capabilities, enterprise management capabilities, simplified OpenVPN Connect UI, and OpenVPN Client software packages that accommodate Windows, MAC, and Linux OS environments. OpenVPN Access Server supports a wide range of configurations, including secure and granular remote access to internal network and/ or private cloud network resources and applications with fine-grained access control."
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://hostap.epitest.fi/wpa_supplicant/"
|
||||
PKG_URL="http://hostap.epitest.fi/releases/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain dbus libnl libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain dbus libnl openssl"
|
||||
PKG_SECTION="network"
|
||||
PKG_SHORTDESC="wpa_supplicant: An IEEE 802.11i supplicant implementation"
|
||||
PKG_LONGDESC="The wpa_supplicant is a free software implementation of an IEEE 802.11i supplicant. In addition to being a full-featured WPA2 supplicant, it also has support for WPA and older wireless LAN security protocols."
|
||||
|
@ -1,69 +0,0 @@
|
||||
$OpenBSD: patch-src_crypto_tls_openssl_c,v 1.3 2015/09/29 11:57:54 dcoppa Exp $
|
||||
|
||||
Compatibility fixes for LibreSSL
|
||||
|
||||
--- a/src/crypto/tls_openssl.c.orig Sun Sep 27 21:02:05 2015
|
||||
+++ b/src/crypto/tls_openssl.c Mon Sep 28 13:43:46 2015
|
||||
@@ -2229,7 +2229,7 @@ static int tls_parse_pkcs12(struct tls_data *data, SSL
|
||||
}
|
||||
|
||||
if (certs) {
|
||||
-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
|
||||
+#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
SSL_clear_chain_certs(ssl);
|
||||
while ((cert = sk_X509_pop(certs)) != NULL) {
|
||||
X509_NAME_oneline(X509_get_subject_name(cert), buf,
|
||||
@@ -2247,7 +2247,7 @@ static int tls_parse_pkcs12(struct tls_data *data, SSL
|
||||
/* Try to continue anyway */
|
||||
}
|
||||
sk_X509_free(certs);
|
||||
-#ifndef OPENSSL_IS_BORINGSSL
|
||||
+#if !defined(OPENSSL_IS_BORINGSSL) && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
res = SSL_build_cert_chain(ssl,
|
||||
SSL_BUILD_CHAIN_FLAG_CHECK |
|
||||
SSL_BUILD_CHAIN_FLAG_IGNORE_ERROR);
|
||||
@@ -2812,7 +2812,7 @@ int tls_connection_get_random(void *ssl_ctx, struct tl
|
||||
if (conn == NULL || keys == NULL)
|
||||
return -1;
|
||||
ssl = conn->ssl;
|
||||
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
if (ssl == NULL || ssl->s3 == NULL || ssl->session == NULL)
|
||||
return -1;
|
||||
|
||||
@@ -2841,7 +2841,7 @@ int tls_connection_get_random(void *ssl_ctx, struct tl
|
||||
#ifndef CONFIG_FIPS
|
||||
static int openssl_get_keyblock_size(SSL *ssl)
|
||||
{
|
||||
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
const EVP_CIPHER *c;
|
||||
const EVP_MD *h;
|
||||
int md_size;
|
||||
@@ -2911,7 +2911,7 @@ static int openssl_tls_prf(struct tls_connection *conn
|
||||
"mode");
|
||||
return -1;
|
||||
#else /* CONFIG_FIPS */
|
||||
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
SSL *ssl;
|
||||
u8 *rnd;
|
||||
int ret = -1;
|
||||
@@ -3394,7 +3394,7 @@ int tls_connection_set_cipher_list(void *tls_ctx, stru
|
||||
|
||||
wpa_printf(MSG_DEBUG, "OpenSSL: cipher suites: %s", buf + 1);
|
||||
|
||||
-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
|
||||
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
#if defined(EAP_FAST) || defined(EAP_FAST_DYNAMIC) || defined(EAP_SERVER_FAST)
|
||||
if (os_strstr(buf, ":ADH-")) {
|
||||
/*
|
||||
@@ -3977,7 +3977,7 @@ static int tls_sess_sec_cb(SSL *s, void *secret, int *
|
||||
struct tls_connection *conn = arg;
|
||||
int ret;
|
||||
|
||||
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
if (conn == NULL || conn->session_ticket_cb == NULL)
|
||||
return 0;
|
||||
|
@ -1,41 +0,0 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC 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.
|
||||
#
|
||||
# OpenELEC 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 OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="libressl"
|
||||
PKG_VERSION="2.4.4"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="BSD"
|
||||
PKG_SITE="http://www.libressl.org/"
|
||||
PKG_URL="http://ftp.openbsd.org/pub/OpenBSD/LibreSSL/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_HOST="ccache:host"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_SECTION="security"
|
||||
PKG_SHORTDESC="libressl: a FREE version of the SSL/TLS protocol forked from OpenSSL"
|
||||
PKG_LONGDESC="LibreSSL is a FREE version of the SSL/TLS protocol forked from OpenSSL"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_USE_CMAKE="no"
|
||||
PKG_AUTORECONF="yes"
|
||||
|
||||
post_makeinstall_target() {
|
||||
# backwards compatibility
|
||||
mkdir -p $INSTALL/etc/pki/tls
|
||||
ln -sf /etc/ssl/cert.pem $INSTALL/etc/pki/tls/cacert.pem
|
||||
mkdir -p $INSTALL/etc/pki/tls/certs
|
||||
ln -sf /etc/ssl/cert.pem $INSTALL/etc/pki/tls/certs/ca-bundle.crt
|
||||
}
|
@ -1,62 +0,0 @@
|
||||
From 779c075d93f339ee4043ea026586a463376b301c Mon Sep 17 00:00:00 2001
|
||||
From: Jonas Karlman <jonas@kwiboo.se>
|
||||
Date: Wed, 20 Apr 2016 22:26:49 +0200
|
||||
Subject: [PATCH] trusted first
|
||||
|
||||
---
|
||||
apps/openssl/apps.c | 2 ++
|
||||
crypto/x509/x509_vfy.c | 14 ++++++++++++++
|
||||
include/openssl/x509_vfy.h | 2 ++
|
||||
3 files changed, 18 insertions(+)
|
||||
|
||||
diff --git a/apps/openssl/apps.c b/apps/openssl/apps.c
|
||||
index 6e40965..cbdd080 100644
|
||||
--- a/apps/openssl/apps.c
|
||||
+++ b/apps/openssl/apps.c
|
||||
@@ -1943,6 +1943,8 @@ args_verify(char ***pargs, int *pargc, int *badarg, BIO *err,
|
||||
flags |= X509_V_FLAG_NOTIFY_POLICY;
|
||||
else if (!strcmp(arg, "-check_ss_sig"))
|
||||
flags |= X509_V_FLAG_CHECK_SS_SIGNATURE;
|
||||
+ else if (!strcmp(arg, "-trusted_first"))
|
||||
+ flags |= X509_V_FLAG_TRUSTED_FIRST;
|
||||
else
|
||||
return 0;
|
||||
|
||||
diff --git a/crypto/x509/x509_vfy.c b/crypto/x509/x509_vfy.c
|
||||
index f9fd3a0..6e51edb 100644
|
||||
--- a/crypto/x509/x509_vfy.c
|
||||
+++ b/crypto/x509/x509_vfy.c
|
||||
@@ -209,6 +209,20 @@ X509_verify_cert(X509_STORE_CTX *ctx)
|
||||
if (ctx->check_issued(ctx, x, x))
|
||||
break;
|
||||
|
||||
+ /* If asked see if we can find issuer in trusted store first */
|
||||
+ if (ctx->param->flags & X509_V_FLAG_TRUSTED_FIRST) {
|
||||
+ ok = ctx->get_issuer(&xtmp, ctx, x);
|
||||
+ if (ok < 0)
|
||||
+ goto end;
|
||||
+ /* If successful for now free up cert so it
|
||||
+ * will be picked up again later.
|
||||
+ */
|
||||
+ if (ok > 0) {
|
||||
+ X509_free(xtmp);
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
/* If we were passed a cert chain, use it first */
|
||||
if (ctx->untrusted != NULL) {
|
||||
xtmp = find_issuer(ctx, sktmp, x);
|
||||
diff --git a/include/openssl/x509_vfy.h b/include/openssl/x509_vfy.h
|
||||
index e4050b2..ddf77e7 100644
|
||||
--- a/include/openssl/x509_vfy.h
|
||||
+++ b/include/openssl/x509_vfy.h
|
||||
@@ -383,6 +383,8 @@ void X509_STORE_CTX_set_depth(X509_STORE_CTX *ctx, int depth);
|
||||
#define X509_V_FLAG_USE_DELTAS 0x2000
|
||||
/* Check selfsigned CA signature */
|
||||
#define X509_V_FLAG_CHECK_SS_SIGNATURE 0x4000
|
||||
+/* Use trusted store first */
|
||||
+#define X509_V_FLAG_TRUSTED_FIRST 0x8000
|
||||
/* Do not check certificate or CRL validity against current time. */
|
||||
#define X509_V_FLAG_NO_CHECK_TIME 0x200000
|
||||
|
4043
packages/security/openssl/cert/cacert.pem
Normal file
4043
packages/security/openssl/cert/cacert.pem
Normal file
File diff suppressed because it is too large
Load Diff
119
packages/security/openssl/package.mk
Normal file
119
packages/security/openssl/package.mk
Normal file
@ -0,0 +1,119 @@
|
||||
###############################################################################
|
||||
# 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 <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="openssl"
|
||||
PKG_VERSION="1.0.2l"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="BSD"
|
||||
PKG_SITE="https://www.openssl.org"
|
||||
PKG_URL="https://www.openssl.org/source/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_HOST="ccache:host"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_SECTION="security"
|
||||
PKG_SHORTDESC="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security"
|
||||
PKG_LONGDESC="The Open Source toolkit for Secure Sockets Layer and Transport Layer Security"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
PKG_CONFIGURE_OPTS_SHARED="--openssldir=/etc/ssl \
|
||||
--libdir=lib \
|
||||
shared \
|
||||
threads \
|
||||
no-ec2m \
|
||||
no-gmp \
|
||||
no-jpake \
|
||||
no-krb5 \
|
||||
no-libunbound \
|
||||
no-md2 \
|
||||
no-rc5 \
|
||||
no-rfc3779
|
||||
no-sctp \
|
||||
no-ssl-trace \
|
||||
no-ssl2 \
|
||||
no-ssl3 \
|
||||
no-store \
|
||||
no-unit-test \
|
||||
no-weak-ssl-ciphers \
|
||||
no-zlib \
|
||||
no-zlib-dynamic \
|
||||
no-static-engine"
|
||||
|
||||
pre_configure_host() {
|
||||
mkdir -p $PKG_BUILD/.$HOST_NAME
|
||||
cp -a $PKG_BUILD/* $PKG_BUILD/.$HOST_NAME/
|
||||
}
|
||||
|
||||
configure_host() {
|
||||
cd $PKG_BUILD/.$HOST_NAME
|
||||
./Configure --prefix=/ $PKG_CONFIGURE_OPTS_SHARED linux-x86_64 $CFLAGS $LDFLAGS
|
||||
}
|
||||
|
||||
makeinstall_host() {
|
||||
make INSTALL_PREFIX=$TOOLCHAIN install_sw
|
||||
}
|
||||
|
||||
pre_configure_target() {
|
||||
mkdir -p $PKG_BUILD/.$TARGET_NAME
|
||||
cp -a $PKG_BUILD/* $PKG_BUILD/.$TARGET_NAME/
|
||||
|
||||
case $TARGET_ARCH in
|
||||
x86_64)
|
||||
OPENSSL_TARGET=linux-x86_64
|
||||
PLATFORM_FLAGS=enable-ec_nistp_64_gcc_128
|
||||
;;
|
||||
arm)
|
||||
OPENSSL_TARGET=linux-armv4
|
||||
;;
|
||||
aarch64)
|
||||
OPENSSL_TARGET=linux-aarch64
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
configure_target() {
|
||||
cd $PKG_BUILD/.$TARGET_NAME
|
||||
./Configure --prefix=/usr $PKG_CONFIGURE_OPTS_SHARED $PLATFORM_FLAGS $OPENSSL_TARGET $CFLAGS $LDFLAGS
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
make INSTALL_PREFIX=$INSTALL install_sw
|
||||
make INSTALL_PREFIX=$SYSROOT_PREFIX install_sw
|
||||
chmod 755 $INSTALL/usr/lib/*.so*
|
||||
chmod 755 $INSTALL/usr/lib/engines/*.so
|
||||
}
|
||||
|
||||
post_makeinstall_target() {
|
||||
rm -rf $INSTALL/etc/ssl/misc
|
||||
rm -rf $INSTALL/usr/bin/c_rehash
|
||||
|
||||
debug_strip $INSTALL/usr/bin/openssl
|
||||
|
||||
# cert from https://curl.haxx.se/docs/caextract.html
|
||||
mkdir -p $INSTALL/etc/ssl
|
||||
cp $PKG_DIR/cert/cacert.pem $INSTALL/etc/ssl/cert.pem
|
||||
|
||||
# backwards comatibility
|
||||
mkdir -p $INSTALL/etc/pki/tls
|
||||
ln -sf /etc/ssl/cert.pem $INSTALL/etc/pki/tls/cacert.pem
|
||||
mkdir -p $INSTALL/etc/pki/tls/certs
|
||||
ln -sf /etc/ssl/cert.pem $INSTALL/etc/pki/tls/certs/ca-bundle.crt
|
||||
mkdir -p $INSTALL/usr/lib/ssl
|
||||
ln -sf /etc/ssl/cert.pem $INSTALL/usr/lib/ssl/cert.pem
|
||||
}
|
33
packages/security/openssl/patches/openssl-0001-ca-dir.patch
Normal file
33
packages/security/openssl/patches/openssl-0001-ca-dir.patch
Normal file
@ -0,0 +1,33 @@
|
||||
--- openssl-1.0.2j/apps/CA.pl.in 2006-04-28 02:30:49.000000000 +0200
|
||||
+++ openssl-1.0.2j/apps/CA.pl.in 2010-04-01 00:35:02.600553509 +0200
|
||||
@@ -53,7 +53,7 @@
|
||||
$X509="$openssl x509";
|
||||
$PKCS12="$openssl pkcs12";
|
||||
|
||||
-$CATOP="./demoCA";
|
||||
+$CATOP="/etc/ssl";
|
||||
$CAKEY="cakey.pem";
|
||||
$CAREQ="careq.pem";
|
||||
$CACERT="cacert.pem";
|
||||
--- openssl-1.0.2j/apps/CA.sh 2009-10-15 19:27:47.000000000 +0200
|
||||
+++ openssl-1.0.2j/apps/CA.sh 2010-04-01 00:35:02.600553509 +0200
|
||||
@@ -68,7 +68,7 @@
|
||||
X509="$OPENSSL x509"
|
||||
PKCS12="openssl pkcs12"
|
||||
|
||||
-if [ -z "$CATOP" ] ; then CATOP=./demoCA ; fi
|
||||
+if [ -z "$CATOP" ] ; then CATOP=/etc/ssl ; fi
|
||||
CAKEY=./cakey.pem
|
||||
CAREQ=./careq.pem
|
||||
CACERT=./cacert.pem
|
||||
--- openssl-1.0.2j/apps/openssl.cnf 2009-04-04 20:09:43.000000000 +0200
|
||||
+++ openssl-1.0.2j/apps/openssl.cnf 2010-04-01 00:35:02.607220681 +0200
|
||||
@@ -39,7 +39,7 @@
|
||||
####################################################################
|
||||
[ CA_default ]
|
||||
|
||||
-dir = ./demoCA # Where everything is kept
|
||||
+dir = /etc/ssl # Where everything is kept
|
||||
certs = $dir/certs # Where the issued certs are kept
|
||||
crl_dir = $dir/crl # Where the issued crl are kept
|
||||
database = $dir/index.txt # database index file.
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="APSL"
|
||||
PKG_SITE="http://src.gnu-darwin.org/DarwinSourceArchive/expanded/diskdev_cmds/"
|
||||
PKG_URL="http://www.opensource.apple.com/tarballs/diskdev_cmds/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain libressl"
|
||||
PKG_DEPENDS_TARGET="toolchain openssl"
|
||||
PKG_SECTION="system"
|
||||
PKG_SHORTDESC="diskdev_cmds: hfs filesystem utilities"
|
||||
PKG_LONGDESC="The fsck and mkfs utliities for hfs and hfsplus filesystems."
|
||||
|
@ -43,6 +43,10 @@ if [ "$MEDIACENTER" = "kodi" ]; then
|
||||
pycrypto"
|
||||
# other packages
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET LibreELEC-settings \
|
||||
xmlstarlet \
|
||||
peripheral.joystick"
|
||||
xmlstarlet"
|
||||
|
||||
if [ "$JOYSTICK_SUPPORT" = "yes" ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET peripheral.joystick"
|
||||
fi
|
||||
|
||||
fi
|
||||
|
@ -30,7 +30,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="MIT"
|
||||
PKG_SITE="http://curl.haxx.se"
|
||||
PKG_URL="http://curl.haxx.se/download/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib libressl rtmpdump"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib openssl rtmpdump"
|
||||
PKG_SECTION="web"
|
||||
PKG_SHORTDESC="curl: Client and library for (HTTP, HTTPS, FTP, ...) transfers"
|
||||
PKG_LONGDESC="Curl is a client to get documents/files from or send documents to a server, using any of the supported protocols (HTTP, HTTPS, FTP, FTPS, GOPHER, DICT, TELNET, LDAP or FILE). The command is designed to work without user interaction or any kind of interactivity."
|
||||
|
@ -22,7 +22,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="OSS"
|
||||
PKG_SITE="http://www.X.org"
|
||||
PKG_URL="http://xorg.freedesktop.org/archive/individual/xserver/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||
PKG_DEPENDS_TARGET="toolchain util-macros font-util fontsproto randrproto recordproto renderproto dri2proto dri3proto fixesproto damageproto videoproto inputproto xf86dgaproto xf86vidmodeproto xf86driproto xf86miscproto presentproto libpciaccess libX11 libXfont2 libXinerama libxshmfence libxkbfile libdrm libressl freetype pixman fontsproto systemd xorg-launch-helper"
|
||||
PKG_DEPENDS_TARGET="toolchain util-macros font-util fontsproto randrproto recordproto renderproto dri2proto dri3proto fixesproto damageproto videoproto inputproto xf86dgaproto xf86vidmodeproto xf86driproto xf86miscproto presentproto libpciaccess libX11 libXfont2 libXinerama libxshmfence libxkbfile libdrm openssl freetype pixman fontsproto systemd xorg-launch-helper"
|
||||
PKG_NEED_UNPACK="$(get_pkg_directory xf86-video-nvidia) $(get_pkg_directory xf86-video-nvidia-legacy)"
|
||||
PKG_SECTION="x11/xserver"
|
||||
PKG_SHORTDESC="xorg-server: The Xorg X server"
|
||||
|
@ -0,0 +1,2 @@
|
||||
# Allow upgrades from Virtual to Generic
|
||||
[ "$1" = "Virtual.x86_64" ] && exit 0 || exit 1
|
@ -3256,7 +3256,8 @@ CONFIG_DRM_I915_USERPTR=y
|
||||
# CONFIG_DRM_I915_WERROR is not set
|
||||
# CONFIG_DRM_I915_DEBUG is not set
|
||||
# CONFIG_DRM_VGEM is not set
|
||||
# CONFIG_DRM_VMWGFX is not set
|
||||
CONFIG_DRM_VMWGFX=y
|
||||
CONFIG_DRM_VMWGFX_FBCON=y
|
||||
# CONFIG_DRM_GMA500 is not set
|
||||
# CONFIG_DRM_UDL is not set
|
||||
# CONFIG_DRM_AST is not set
|
||||
@ -3673,7 +3674,7 @@ CONFIG_HID_GENERIC=y
|
||||
CONFIG_HID_A4TECH=y
|
||||
# CONFIG_HID_ACRUX is not set
|
||||
CONFIG_HID_APPLE=y
|
||||
# CONFIG_HID_APPLEIR is not set
|
||||
CONFIG_HID_APPLEIR=y
|
||||
CONFIG_HID_AUREAL=y
|
||||
CONFIG_HID_BELKIN=y
|
||||
# CONFIG_HID_BETOP_FF is not set
|
||||
|
@ -1,57 +0,0 @@
|
||||
From 716d6bc9f73bd366d4b64b473055af79810d67fc Mon Sep 17 00:00:00 2001
|
||||
From: Forest <web11.forest@tibit.com>
|
||||
Date: Thu, 12 Mar 2015 23:43:12 -0700
|
||||
Subject: [PATCH] hid: enable all buttons on the TiVo Slide Pro remote
|
||||
|
||||
The linux kernel has supported the TiVo Slide remote control for some time,
|
||||
but does not recognize the USB ID of the newer Slide Pro. This patch adds
|
||||
the missing data structures so the newer remote will be recognized by the
|
||||
driver, thereby allowing the TiVo, LiveTV, and Thumbs Up/Down buttons to be
|
||||
mapped with a hwdb file.
|
||||
|
||||
Signed-off-by: Forest <web11.forest@tibit.com>
|
||||
---
|
||||
drivers/hid/hid-core.c | 1 +
|
||||
drivers/hid/hid-ids.h | 1 +
|
||||
drivers/hid/hid-tivo.c | 1 +
|
||||
3 files changed, 3 insertions(+)
|
||||
|
||||
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
|
||||
index 1d0f2b6..722a925 100644
|
||||
--- a/drivers/hid/hid-core.c
|
||||
+++ b/drivers/hid/hid-core.c
|
||||
@@ -1980,6 +1980,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb65a) },
|
||||
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_TIVO, USB_DEVICE_ID_TIVO_SLIDE_BT) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_TIVO, USB_DEVICE_ID_TIVO_SLIDE) },
|
||||
+ { HID_USB_DEVICE(USB_VENDOR_ID_TIVO, USB_DEVICE_ID_TIVO_SLIDE_PRO) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_TOPSEED, USB_DEVICE_ID_TOPSEED_CYBERLINK) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_TOPSEED2, USB_DEVICE_ID_TOPSEED2_RF_COMBO) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_TWINHAN, USB_DEVICE_ID_TWINHAN_IR_REMOTE) },
|
||||
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
|
||||
index 2dd6485..c739d3b 100644
|
||||
--- a/drivers/hid/hid-ids.h
|
||||
+++ b/drivers/hid/hid-ids.h
|
||||
@@ -900,6 +900,7 @@
|
||||
#define USB_VENDOR_ID_TIVO 0x150a
|
||||
#define USB_DEVICE_ID_TIVO_SLIDE_BT 0x1200
|
||||
#define USB_DEVICE_ID_TIVO_SLIDE 0x1201
|
||||
+#define USB_DEVICE_ID_TIVO_SLIDE_PRO 0x1203
|
||||
|
||||
#define USB_VENDOR_ID_TOPSEED 0x0766
|
||||
#define USB_DEVICE_ID_TOPSEED_CYBERLINK 0x0204
|
||||
diff --git a/drivers/hid/hid-tivo.c b/drivers/hid/hid-tivo.c
|
||||
index d790d8d..d986969 100644
|
||||
--- a/drivers/hid/hid-tivo.c
|
||||
+++ b/drivers/hid/hid-tivo.c
|
||||
@@ -64,6 +64,7 @@ static const struct hid_device_id tivo_devices[] = {
|
||||
/* TiVo Slide Bluetooth remote, pairs with a Broadcom dongle */
|
||||
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_TIVO, USB_DEVICE_ID_TIVO_SLIDE_BT) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_TIVO, USB_DEVICE_ID_TIVO_SLIDE) },
|
||||
+ { HID_USB_DEVICE(USB_VENDOR_ID_TIVO, USB_DEVICE_ID_TIVO_SLIDE_PRO) },
|
||||
{ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(hid, tivo_devices);
|
||||
--
|
||||
1.9.1
|
||||
|
@ -189,7 +189,7 @@ $SCRIPTS/install network
|
||||
[ "$REMOTE_SUPPORT" = "yes" ] && $SCRIPTS/install remote
|
||||
|
||||
# Virtual image creation support
|
||||
[ "$PROJECT" = Virtual ] && $SCRIPTS/install virtual
|
||||
[ "$PROJECT" = "Generic" ] && $SCRIPTS/install virtual
|
||||
|
||||
# Installer support
|
||||
[ "$INSTALLER_SUPPORT" = "yes" ] && $SCRIPTS/install installer
|
||||
|
@ -144,18 +144,6 @@ LABEL run
|
||||
APPEND boot=UUID=$UUID_SYSTEM disk=UUID=$UUID_STORAGE portable quiet
|
||||
EOF
|
||||
|
||||
if [ "$PROJECT" = Virtual ]; then
|
||||
cat << EOF > "$LE_TMP"/syslinux.cfg
|
||||
DEFAULT virtual
|
||||
TIMEOUT 50
|
||||
PROMPT 0
|
||||
|
||||
LABEL virtual
|
||||
KERNEL /$KERNEL_NAME
|
||||
APPEND boot=UUID=$UUID_SYSTEM disk=UUID=$UUID_STORAGE quiet tty vga=current
|
||||
EOF
|
||||
fi
|
||||
|
||||
mcopy "$LE_TMP/syslinux.cfg" ::
|
||||
|
||||
# install extlinux
|
||||
@ -302,7 +290,7 @@ fi # bootloader
|
||||
fsck -n $LE_TMP/part1.fat >"$SAVE_ERROR" 2>&1 || show_error
|
||||
|
||||
# create virtual images
|
||||
if [ "$PROJECT" = Virtual ]; then
|
||||
if [ "$PROJECT" = "Generic" ]; then
|
||||
echo "image: creating open virtual appliance..."
|
||||
qemu-img convert -O vmdk -o subformat=streamOptimized "$DISK" "$DISK.vmdk"
|
||||
sed -e "s,@DISTRO@,$DISTRO,g" -e "s,@DISK@,$(basename $DISK),g" -e "s,@DISK_SIZE@,$(ls -l $DISK.vmdk | awk '{print $5}'),g" $PROJECT_DIR/$PROJECT/config/ovf.template > $DISK.ovf
|
||||
|
Loading…
x
Reference in New Issue
Block a user