File download_binary-addons.sh of Package kodi.binary-addons

82
 
1
#!/bin/bash 
2
3
DOWNLOAD_DIR=build/download
4
VERSION_NAME=Nexus
5
REPO_BINARY_ADDONS=repo-binary-addons-$VERSION_NAME
6
mkdir -p $REPO_BINARY_ADDONS-file
7
mkdir -p $DOWNLOAD_DIR
8
mkdir -p tmp
9
10
curl -L "https://github.com/xbmc/repo-binary-addons/archive/$VERSION_NAME.tar.gz" | tar zxf -
11
if [ ! -x $REPO_BINARY_ADDONS ]; then
12
    exit 1
13
fi
14
15
# Removing disabled binary addons
16
if [ -e $REPO_BINARY_ADDONS-disabled.txt ]; then
17
    for addon in $(awk -F'-' '{print $1}' repo-binary-addons-$VERSION_NAME-disabled.txt); do
18
        echo "Removing disabled addon $addon"
19
        rm -rf $REPO_BINARY_ADDONS/$addon
20
    done
21
fi
22
23
#
24
rm -f spec.packages.in spec.files.in
25
rm -f kodi.binary-addons.spec.packages.inc kodi.binary-addons.spec.files.inc
26
27
#JSONCPP_PATCH="pvr.argustv pvr.filmon pvr.hdhomerun pvr.pctv pvr.stalker pvr.sledovanitv.cz"
28
JSONCPP_PATCH=""
29
30
for addon in $(ls -1 $REPO_BINARY_ADDONS); do
31
    echo "Downloading $addon"
32
    ADDON=$(cat $REPO_BINARY_ADDONS/$addon/$addon.txt)
33
    IFS=' ' read -a SPLIT_ADDON <<< "$ADDON"
34
    NAME=${SPLIT_ADDON[0]}
35
    URL=${SPLIT_ADDON[1]}
36
    DL_BRANCH=${SPLIT_ADDON[2]}
37
    BRANCH=$(echo ${SPLIT_ADDON[2]} | sed -e 's#^v##')
38
    curl --progress-bar -L "$URL/archive/$DL_BRANCH.tar.gz" -o $DOWNLOAD_DIR/$NAME-$BRANCH.tar.gz   
39
    
40
    mkdir -p $REPO_BINARY_ADDONS-file/$addon
41
    echo "$NAME file://$DOWNLOAD_DIR/$NAME-$BRANCH.tar.gz $BRANCH" > $REPO_BINARY_ADDONS-file/$addon/$addon.txt
42
43
    if [[ $JSONCPP_PATCH =~ (^|[[:space:]])"$NAME"($|[[:space:]]) ]]; then
44
        echo "Patching $addon"
45
        tar -C tmp -xf $DOWNLOAD_DIR/$NAME-$BRANCH.tar.gz 
46
        patch -d tmp/$NAME-$BRANCH -t < FindJsonCpp.cmake.patch
47
        tar -C tmp -zcf $DOWNLOAD_DIR/$NAME-$BRANCH.tar.gz $NAME-$BRANCH
48
    fi
49
50
    cat << EOF >> kodi.binary-addons.spec.packages.inc
51
%package $addon
52
Summary:        Kodi $addon binary addon
53
Group:          Productivity/Multimedia/Video/Players
54
Requires:       kodi = %{version}
55
56
%description $addon
57
Kodi $addon binary addon
58
59
EOF
60
61
    cat << EOF >> kodi.binary-addons.spec.files.inc
62
%files $addon
63
%defattr(-,root,root)
64
%dir %{_libdir}/kodi/addons
65
%dir %{_libdir}/kodi/addons/$addon
66
%dir %{_kodi_addons_dir}/$addon
67
%{_libdir}/kodi/addons/$addon/*
68
%{_kodi_addons_dir}/$addon/*
69
70
EOF
71
72
done
73
74
tar cf kodi.binary-addons.tar $DOWNLOAD_DIR
75
echo "kodi.binary-addons.tar was created"
76
77
tar cjf repo-binary-addons.$VERSION_NAME.tar.bz2 $REPO_BINARY_ADDONS-file
78
echo "repo-binary-addons.$VERSION_NAME.tar.bz2 was created"
79
80
# cleanup
81
rm -rf tmp $(dirname $DOWNLOAD_DIR) $REPO_BINARY_ADDONS $REPO_BINARY_ADDONS-file
82