blob: d9d422a84556609255f4b76194e8ebfed9484855 (
plain)
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
|
#!/bin/sh
if [ -f "/usr/bin/sudo" ]; then
SUDO="/usr/bin/sudo"
fi
if [ -f "../../ios-depends/build/bin/dpkg-deb" ]; then
DPKGDEB="../../ios-depends/build/bin/dpkg-deb"
else
DPKGDEB="dpkg-deb"
fi
PACKAGE=org.xbmc.xbmc-seatbeltunlock
VERSION=1.0
REVISION=5
ARCHIVE=${PACKAGE}_${VERSION}-${REVISION}_iphoneos-arm.deb
echo Creating $PACKAGE package version $VERSION revision $REVISION
${SUDO} rm -rf $PACKAGE
${SUDO} rm -rf $ARCHIVE
# create debian control file
mkdir -p $PACKAGE/DEBIAN
echo "Package: $PACKAGE" > $PACKAGE/DEBIAN/control
echo "Priority: Extra" >> $PACKAGE/DEBIAN/control
echo "Depends: coreutils, bsdiff, gawk" >> $PACKAGE/DEBIAN/control
echo "Name: XBMC seatbelt unlock for AppleTV 2" >> $PACKAGE/DEBIAN/control
echo "Version: $VERSION-$REVISION" >> $PACKAGE/DEBIAN/control
echo "Architecture: iphoneos-arm" >> $PACKAGE/DEBIAN/control
echo "Description: XBMC tweeks, removes seatbelt" >> $PACKAGE/DEBIAN/control
echo "Homepage: http://xbmc.org/" >> $PACKAGE/DEBIAN/control
echo "Maintainer: Scott Davilla" >> $PACKAGE/DEBIAN/control
echo "Author: TeamXBMC" >> $PACKAGE/DEBIAN/control
echo "Section: Tweaks" >> $PACKAGE/DEBIAN/control
# postinst: find lowtide/appletv, binary patch out seatbelt-profile key,
# rm/mv replace lowtide/appletv. Last step is critical as profiles are
# vnode based and there might be an existing file vnode profile.
echo "#!/bin/sh" > $PACKAGE/DEBIAN/postinst
echo "if [ \"\`uname -r\`\" = \"10.3.1\" ]; then" >> $PACKAGE/DEBIAN/postinst
echo " BINPATH=/Applications/Lowtide.app/Lowtide" >> $PACKAGE/DEBIAN/postinst
echo " echo \"Found ATV2 running ios 4.1/Lowtide\"" >> $PACKAGE/DEBIAN/postinst
echo "else" >> $PACKAGE/DEBIAN/postinst
echo " BINPATH=/Applications/AppleTV.app/AppleTV" >> $PACKAGE/DEBIAN/postinst
echo " echo \"Found ATV2 running ios 4.2+/AppleTV\"" >> $PACKAGE/DEBIAN/postinst
echo "fi" >> $PACKAGE/DEBIAN/postinst
echo "case \`md5sum \$BINPATH | awk '{print \$1}'\` in" >> $PACKAGE/DEBIAN/postinst
echo " 12313417e3afeba6531255af58cb5283 )" >> $PACKAGE/DEBIAN/postinst
echo " echo \"Found 4.1 (8M89):Removing seatbelt profile key from Lowtide\"" >> $PACKAGE/DEBIAN/postinst
echo " bspatch /Applications/Lowtide.app/Lowtide /var/tmp/Lowtide-nosb /var/tmp/12313417e3afeba6531255af58cb5283.patch" >> $PACKAGE/DEBIAN/postinst
echo " rm /var/tmp/12313417e3afeba6531255af58cb5283.patch" >> $PACKAGE/DEBIAN/postinst
echo " chmod 755 /var/tmp/Lowtide-nosb" >> $PACKAGE/DEBIAN/postinst
echo " mv -f /Applications/Lowtide.app/Lowtide /Applications/Lowtide.app/Lowtide_org" >> $PACKAGE/DEBIAN/postinst
echo " mv /var/tmp/Lowtide-nosb /Applications/Lowtide.app/Lowtide" >> $PACKAGE/DEBIAN/postinst
echo " killall Lowtide ;;" >> $PACKAGE/DEBIAN/postinst
echo " 5a28620a15c15d41e1ae836dd1f95f8d )" >> $PACKAGE/DEBIAN/postinst
echo " echo \"Found 4.2.1 (8C154):Removing seatbelt profile key from AppleTV\"" >> $PACKAGE/DEBIAN/postinst
echo " bspatch /Applications/AppleTV.app/AppleTV /var/tmp/AppleTV-nosb /var/tmp/5a28620a15c15d41e1ae836dd1f95f8d.patch" >> $PACKAGE/DEBIAN/postinst
echo " rm /var/tmp/5a28620a15c15d41e1ae836dd1f95f8d.patch" >> $PACKAGE/DEBIAN/postinst
echo " chmod 755 /var/tmp/AppleTV-nosb" >> $PACKAGE/DEBIAN/postinst
echo " mv -f /Applications/AppleTV.app/AppleTV /Applications/AppleTV.app/AppleTV_org" >> $PACKAGE/DEBIAN/postinst
echo " mv /var/tmp/AppleTV-nosb /Applications/AppleTV.app/AppleTV" >> $PACKAGE/DEBIAN/postinst
echo " killall AppleTV ;;" >> $PACKAGE/DEBIAN/postinst
echo " 03e48c66a9cae1ff768eb3fe7981c499 )" >> $PACKAGE/DEBIAN/postinst
echo " echo \"Found 4.3 (8F202):Removing seatbelt profile key from AppleTV\"" >> $PACKAGE/DEBIAN/postinst
echo " bspatch /Applications/AppleTV.app/AppleTV /var/tmp/AppleTV-nosb /var/tmp/03e48c66a9cae1ff768eb3fe7981c499.patch" >> $PACKAGE/DEBIAN/postinst
echo " rm /var/tmp/03e48c66a9cae1ff768eb3fe7981c499.patch" >> $PACKAGE/DEBIAN/postinst
echo " chmod 755 /var/tmp/AppleTV-nosb" >> $PACKAGE/DEBIAN/postinst
echo " mv -f /Applications/AppleTV.app/AppleTV /Applications/AppleTV.app/AppleTV_org" >> $PACKAGE/DEBIAN/postinst
echo " mv /var/tmp/AppleTV-nosb /Applications/AppleTV.app/AppleTV" >> $PACKAGE/DEBIAN/postinst
echo " killall AppleTV ;;" >> $PACKAGE/DEBIAN/postinst
echo " 42d00865f281bb662b6ce447c9815e59 )" >> $PACKAGE/DEBIAN/postinst
echo " echo \"Found 4.3.2 (8F305):Removing seatbelt profile key from AppleTV\"" >> $PACKAGE/DEBIAN/postinst
echo " bspatch /Applications/AppleTV.app/AppleTV /var/tmp/AppleTV-nosb /var/tmp/42d00865f281bb662b6ce447c9815e59.patch" >> $PACKAGE/DEBIAN/postinst
echo " rm /var/tmp/42d00865f281bb662b6ce447c9815e59.patch" >> $PACKAGE/DEBIAN/postinst
echo " chmod 755 /var/tmp/AppleTV-nosb" >> $PACKAGE/DEBIAN/postinst
echo " mv -f /Applications/AppleTV.app/AppleTV /Applications/AppleTV.app/AppleTV_org" >> $PACKAGE/DEBIAN/postinst
echo " mv /var/tmp/AppleTV-nosb /Applications/AppleTV.app/AppleTV" >> $PACKAGE/DEBIAN/postinst
echo " killall AppleTV ;;" >> $PACKAGE/DEBIAN/postinst
echo " f387cee7d7d302ec9e740632f44f1352 )" >> $PACKAGE/DEBIAN/postinst
echo " echo \"Found 6.1 (10B144b):Removing seatbelt profile key from AppleTV\"" >> $PACKAGE/DEBIAN/postinst
echo " bspatch /Applications/AppleTV.app/AppleTV /var/tmp/AppleTV-nosb /var/tmp/f387cee7d7d302ec9e740632f44f1352.patch" >> $PACKAGE/DEBIAN/postinst
echo " rm /var/tmp/f387cee7d7d302ec9e740632f44f1352.patch" >> $PACKAGE/DEBIAN/postinst
echo " chmod 755 /var/tmp/AppleTV-nosb" >> $PACKAGE/DEBIAN/postinst
echo " mv -f /Applications/AppleTV.app/AppleTV /Applications/AppleTV.app/AppleTV_org" >> $PACKAGE/DEBIAN/postinst
echo " mv /var/tmp/AppleTV-nosb /Applications/AppleTV.app/AppleTV" >> $PACKAGE/DEBIAN/postinst
echo " killall AppleTV ;;" >> $PACKAGE/DEBIAN/postinst
echo " * )" >> $PACKAGE/DEBIAN/postinst
echo " echo \"Frontrow app md5sum is unknown, not patching\" ;;" >> $PACKAGE/DEBIAN/postinst
echo "esac" >> $PACKAGE/DEBIAN/postinst
chmod +x $PACKAGE/DEBIAN/postinst
# create the patch directory and copy in patch
mkdir -p $PACKAGE/var/tmp
cp 12313417e3afeba6531255af58cb5283.patch $PACKAGE/var/tmp/
cp 5a28620a15c15d41e1ae836dd1f95f8d.patch $PACKAGE/var/tmp/
cp 03e48c66a9cae1ff768eb3fe7981c499.patch $PACKAGE/var/tmp/
cp 42d00865f281bb662b6ce447c9815e59.patch $PACKAGE/var/tmp/
cp f387cee7d7d302ec9e740632f44f1352.patch $PACKAGE/var/tmp/
# set ownership to root:root
${SUDO} chown -R 0:0 $PACKAGE
echo Packaging $PACKAGE
# Tell tar, pax, etc. on Mac OS X 10.4+ not to archive
# extended attributes (e.g. resource forks) to ._* archive members.
# Also allows archiving and extracting actual ._* files.
export COPYFILE_DISABLE=true
export COPY_EXTENDED_ATTRIBUTES_DISABLE=true
${DPKGDEB} -b $PACKAGE $ARCHIVE
${DPKGDEB} --info $ARCHIVE
${DPKGDEB} --contents $ARCHIVE
# clean up by removing package dir
${SUDO} rm -rf $PACKAGE
|