-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathcreate_ipk.sh
executable file
·204 lines (178 loc) · 12 KB
/
create_ipk.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
#!/bin/bash
# script taken from openwebif project
set -e
D=$(pushd $(dirname $0) &> /dev/null; pwd; popd &> /dev/null)
S=${D}/ipkg.src$$
P=${D}/ipkg.tmp.$$
B=${D}/ipkg.build.$$
DP=${D}/ipkg.deps
P26="http://www.python.org/ftp/python/2.6/Python-2.6.tgz"
P27="http://www.python.org/ftp/python/2.7.5/Python-2.7.5.tgz"
pushd ${D} &> /dev/null
PVER=$(cat plugin/__init__.py|grep __version__|sed s/__version__\ =\ //|sed s/\"//g|tr -d '[[:space:]]')
GITVER=$(git log -1 --format="%ci" | awk -F" " '{ print $1 }' | tr -d "-")
VER=$PVER-$GITVER
PKG=${D}/enigma2-plugin-extensions-subssupport_${VER}_all
PLUGINPATH=/usr/lib/enigma2/python/Plugins/Extensions/SubsSupport
popd &> /dev/null
rm -rf ${D}/ipkg.src*
rm -rf ${D}/ipkg.tmp*
rm -rf ${D}/ipkg.build*
mkdir -p ${P}/CONTROL
mkdir -p ${B}
mkdir -p ${DP}
mkdir -p ${S}
git archive --format=tar HEAD | (cd ${S} && tar xf -)
if [ -d ${DP}/Python-2.6 ] && [ -d ${DP}/Python-2.7 ]; then
echo "python packages are already downloaded"
else
echo "downloading neccesary python packages..."
wget -O ${DP}/Python-2.6.tgz $P26
wget -O ${DP}/Python-2.7.5.tgz $P27
tar -C ${DP} -xzf ${DP}/Python-2.6.tgz
tar -C ${DP} -xzf ${DP}/Python-2.7.5.tgz
mv ${DP}/Python-2.7.5 ${DP}/Python-2.7
fi
cat > ${P}/CONTROL/control << EOF
Package: enigma2-plugin-extensions-subssupport
Version: ${VER}
Architecture: all
Section: extra
Priority: optional
Maintainer: [email protected]
Recommends: python-xmlrpc, unrar, python-compression, python-codecs, python-zlib, python-difflib, python-requests
Homepage: https://code.google.com/p/mediaplayer2-for-sh4/
Description: Enigma2 subtitles support library $VER
EOF
cat > ${P}/CONTROL/postrm << EOF
#!/bin/sh
rm -rf /usr/lib/enigma2/python/Plugins/Extensions/SubsSupport 2> /dev/null
exit 0
EOF
cat > ${P}/CONTROL/postinst << EOF
#!/bin/sh
if [ -d /usr/lib/python2.6 ]
then
echo "found python2.6"
[ ! -e /usr/lib/python2.6/encodings/utf_8.py ] && cp /tmp/subssupport/python2.6/utf_8.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/utf_16.py ] && cp /tmp/subssupport/python2.6/utf_16.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/cp1250.py ] && cp /tmp/subssupport/python2.6/cp1250.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/cp1251.py ] && cp /tmp/subssupport/python2.6/cp1251.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/cp1252.py ] && cp /tmp/subssupport/python2.6/cp1252.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/cp1253.py ] && cp /tmp/subssupport/python2.6/cp1253.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/cp1254.py ] && cp /tmp/subssupport/python2.6/cp1254.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/cp1255.py ] && cp /tmp/subssupport/python2.6/cp1255.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/cp1256.py ] && cp /tmp/subssupport/python2.6/cp1256.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/iso8859_2.py ] && cp /tmp/subssupport/python2.6/iso8859_2.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/iso8859_6.py ] && cp /tmp/subssupport/python2.6/iso8859_6.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/iso8859_7.py ] && cp /tmp/subssupport/python2.6/iso8859_7.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/iso8859_8.py ] && cp /tmp/subssupport/python2.6/iso8859_8.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/iso8859_9.py ] && cp /tmp/subssupport/python2.6/iso8859_9.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/iso8859_15.py ] && cp /tmp/subssupport/python2.6/iso8859_15.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/koi8_r.py ] && cp /tmp/subssupport/python2.6/koi8_r.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/mac_cyrillic.py ] && cp /tmp/subssupport/python2.6/mac_cyrillic.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/mac_greek.py ] && cp /tmp/subssupport/python2.6/mac_greek.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/mac_latin2.py ] && cp /tmp/subssupport/python2.6/mac_latin2.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/mac_roman.py ] && cp /tmp/subssupport/python2.6/mac_roman.py /usr/lib/python2.6/encodings/
[ ! -e /usr/lib/python2.6/encodings/mac_turkish.py ] && cp /tmp/subssupport/python2.6/mac_turkish.py /usr/lib/python2.6/encodings/
fi
if [ -d /usr/lib/python2.7 ]
then
echo "found python2.7"
[ ! -e /usr/lib/python2.7/encodings/utf_8.py ] && cp /tmp/subssupport/python2.7/utf_8.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/utf_16.py ] && cp /tmp/subssupport/python2.7/utf_16.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/cp1250.py ] && cp /tmp/subssupport/python2.7/cp1250.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/cp1251.py ] && cp /tmp/subssupport/python2.7/cp1251.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/cp1252.py ] && cp /tmp/subssupport/python2.7/cp1252.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/cp1253.py ] && cp /tmp/subssupport/python2.7/cp1253.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/cp1254.py ] && cp /tmp/subssupport/python2.7/cp1254.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/cp1255.py ] && cp /tmp/subssupport/python2.7/cp1255.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/cp1256.py ] && cp /tmp/subssupport/python2.7/cp1256.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/iso8859_2.py ] && cp /tmp/subssupport/python2.7/iso8859_2.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/iso8859_6.py ] && cp /tmp/subssupport/python2.7/iso8859_6.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/iso8859_7.py ] && cp /tmp/subssupport/python2.7/iso8859_7.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/iso8859_8.py ] && cp /tmp/subssupport/python2.7/iso8859_8.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/iso8859_9.py ] && cp /tmp/subssupport/python2.7/iso8859_9.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/iso8859_15.py ] && cp /tmp/subssupport/python2.7/iso8859_15.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/koi8_r.py ] && cp /tmp/subssupport/python2.7/koi8_r.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/mac_cyrillic.py ] && cp /tmp/subssupport/python2.7/mac_cyrillic.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/mac_greek.py ] && cp /tmp/subssupport/python2.7/mac_greek.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/mac_latin2.py ] && cp /tmp/subssupport/python2.7/mac_latin2.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/mac_roman.py ] && cp /tmp/subssupport/python2.7/mac_roman.py /usr/lib/python2.7/encodings/
[ ! -e /usr/lib/python2.7/encodings/mac_turkish.py ] && cp /tmp/subssupport/python2.7/mac_turkish.py /usr/lib/python2.7/encodings/
fi
rm -rf /tmp/subssupport
exit 0
EOF
chmod 755 ${P}/CONTROL/postinst
chmod 755 ${P}/CONTROL/postrm
mkdir -p ${P}${PLUGINPATH}
cp -rp ${S}/plugin/* ${P}${PLUGINPATH}
mkdir -p ${P}/var/lib/subssupport
cd ./locale/
languages=($(ls *.po | sed 's/\.po//'))
cd ..
for lang in "${languages[@]}" ; do \
printf "generating mo file for [%s]\n" $lang
mkdir -p ${P}${PLUGINPATH}/locale/${lang}/LC_MESSAGES; \
msgfmt ${D}/locale/${lang}.po -o ${P}${PLUGINPATH}/locale/${lang}/LC_MESSAGES/SubsSupport.mo; \
cp -rp ${D}/locale/${lang}.po ${P}${PLUGINPATH}/locale/${lang}/LC_MESSAGES/;
done
python -O -m compileall ${P} > /dev/null
#find ${P} -name "*.po" -exec rm {} \;
find ${P} -name "Makefile.am" -exec rm {} \;
mkdir -p ${P}/tmp/subssupport
mkdir -p ${P}/tmp/subssupport/python2.6/
mkdir -p ${P}/tmp/subssupport/python2.7/
cp -p ${DP}/Python-2.6/Lib/encodings/utf_8.py ${P}/tmp/subssupport/python2.6/utf_8.py
cp -p ${DP}/Python-2.6/Lib/encodings/utf_16.py ${P}/tmp/subssupport/python2.6/utf_16.py
cp -p ${DP}/Python-2.6/Lib/encodings/cp1250.py ${P}/tmp/subssupport/python2.6/cp1250.py
cp -p ${DP}/Python-2.6/Lib/encodings/cp1251.py ${P}/tmp/subssupport/python2.6/cp1251.py
cp -p ${DP}/Python-2.6/Lib/encodings/cp1252.py ${P}/tmp/subssupport/python2.6/cp1252.py
cp -p ${DP}/Python-2.6/Lib/encodings/cp1253.py ${P}/tmp/subssupport/python2.6/cp1253.py
cp -p ${DP}/Python-2.6/Lib/encodings/cp1254.py ${P}/tmp/subssupport/python2.6/cp1254.py
cp -p ${DP}/Python-2.6/Lib/encodings/cp1255.py ${P}/tmp/subssupport/python2.6/cp1255.py
cp -p ${DP}/Python-2.6/Lib/encodings/cp1256.py ${P}/tmp/subssupport/python2.6/cp1256.py
cp -p ${DP}/Python-2.6/Lib/encodings/iso8859_2.py ${P}/tmp/subssupport/python2.6/iso8859_2.py
cp -p ${DP}/Python-2.6/Lib/encodings/iso8859_6.py ${P}/tmp/subssupport/python2.6/iso8859_6.py
cp -p ${DP}/Python-2.6/Lib/encodings/iso8859_7.py ${P}/tmp/subssupport/python2.6/iso8859_7.py
cp -p ${DP}/Python-2.6/Lib/encodings/iso8859_8.py ${P}/tmp/subssupport/python2.6/iso8859_8.py
cp -p ${DP}/Python-2.6/Lib/encodings/iso8859_9.py ${P}/tmp/subssupport/python2.6/iso8859_9.py
cp -p ${DP}/Python-2.6/Lib/encodings/iso8859_15.py ${P}/tmp/subssupport/python2.6/iso8859_15.py
cp -p ${DP}/Python-2.6/Lib/encodings/koi8_r.py ${P}/tmp/subssupport/python2.6/koi8_r.py
cp -p ${DP}/Python-2.6/Lib/encodings/mac_latin2.py ${P}/tmp/subssupport/python2.6/mac_latin2.py
cp -p ${DP}/Python-2.6/Lib/encodings/mac_cyrillic.py ${P}/tmp/subssupport/python2.6/mac_cyrillic.py
cp -p ${DP}/Python-2.6/Lib/encodings/mac_greek.py ${P}/tmp/subssupport/python2.6/mac_greek.py
cp -p ${DP}/Python-2.6/Lib/encodings/mac_roman.py ${P}/tmp/subssupport/python2.6/mac_roman.py
cp -p ${DP}/Python-2.6/Lib/encodings/mac_turkish.py ${P}/tmp/subssupport/python2.6/mac_turkish.py
cp -p ${DP}/Python-2.7/Lib/encodings/utf_8.py ${P}/tmp/subssupport/python2.7/utf_8.py
cp -p ${DP}/Python-2.7/Lib/encodings/utf_16.py ${P}/tmp/subssupport/python2.7/utf_16.py
cp -p ${DP}/Python-2.7/Lib/encodings/cp1250.py ${P}/tmp/subssupport/python2.7/cp1250.py
cp -p ${DP}/Python-2.7/Lib/encodings/cp1251.py ${P}/tmp/subssupport/python2.7/cp1251.py
cp -p ${DP}/Python-2.7/Lib/encodings/cp1252.py ${P}/tmp/subssupport/python2.7/cp1252.py
cp -p ${DP}/Python-2.7/Lib/encodings/cp1253.py ${P}/tmp/subssupport/python2.7/cp1253.py
cp -p ${DP}/Python-2.7/Lib/encodings/cp1254.py ${P}/tmp/subssupport/python2.7/cp1254.py
cp -p ${DP}/Python-2.7/Lib/encodings/cp1255.py ${P}/tmp/subssupport/python2.7/cp1255.py
cp -p ${DP}/Python-2.7/Lib/encodings/cp1256.py ${P}/tmp/subssupport/python2.7/cp1256.py
cp -p ${DP}/Python-2.7/Lib/encodings/iso8859_2.py ${P}/tmp/subssupport/python2.7/iso8859_2.py
cp -p ${DP}/Python-2.7/Lib/encodings/iso8859_6.py ${P}/tmp/subssupport/python2.7/iso8859_6.py
cp -p ${DP}/Python-2.7/Lib/encodings/iso8859_7.py ${P}/tmp/subssupport/python2.7/iso8859_7.py
cp -p ${DP}/Python-2.7/Lib/encodings/iso8859_8.py ${P}/tmp/subssupport/python2.7/iso8859_8.py
cp -p ${DP}/Python-2.7/Lib/encodings/iso8859_9.py ${P}/tmp/subssupport/python2.7/iso8859_9.py
cp -p ${DP}/Python-2.7/Lib/encodings/iso8859_15.py ${P}/tmp/subssupport/python2.7/iso8859_15.py
cp -p ${DP}/Python-2.7/Lib/encodings/koi8_r.py ${P}/tmp/subssupport/python2.7/koi8_r.py
cp -p ${DP}/Python-2.7/Lib/encodings/mac_latin2.py ${P}/tmp/subssupport/python2.7/mac_latin2.py
cp -p ${DP}/Python-2.7/Lib/encodings/mac_cyrillic.py ${P}/tmp/subssupport/python2.7/mac_cyrillic.py
cp -p ${DP}/Python-2.7/Lib/encodings/mac_greek.py ${P}/tmp/subssupport/python2.7/mac_greek.py
cp -p ${DP}/Python-2.7/Lib/encodings/mac_roman.py ${P}/tmp/subssupport/python2.7/mac_roman.py
cp -p ${DP}/Python-2.7/Lib/encodings/mac_turkish.py ${P}/tmp/subssupport/python2.7/mac_turkish.py
tar -C ${P} -cz --format=gnu --exclude=CONTROL -f ${B}/data.tar.gz .
tar -C ${P}/CONTROL -cz --format=gnu -f ${B}/control.tar.gz .
echo "2.0" > ${B}/debian-binary
cd ${B}
ls -la
ar -r ${PKG}.ipk ./debian-binary ./control.tar.gz ./data.tar.gz
ar -r ${PKG}.deb ./debian-binary ./control.tar.gz ./data.tar.gz
rm -rf ${P}
rm -rf ${B}
rm -rf ${S}