aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorS. Davilla <davilla@4pi.com>2011-03-08 17:07:02 -0500
committerS. Davilla <davilla@4pi.com>2011-03-08 17:07:02 -0500
commit7e38a40b51a0d5118964e1841a2d1eeb8fdcf41c (patch)
tree383b046077c22dc01d33fa329671bc579509205f
parentff2b52b19d9c732f752cf89ab63b760b43ebe281 (diff)
[ios] prep, add atv2/ios deb packaging scripts
-rwxr-xr-xtools/osx/packaging/xbmc-atv2/mkdeb-xbmc-atv2.sh97
-rw-r--r--tools/osx/packaging/xbmc-icon/mirrors.xbmc.org.pngbin0 -> 5927 bytes
-rwxr-xr-xtools/osx/packaging/xbmc-icon/mkdeb-xbmc-iconpack.sh59
-rwxr-xr-xtools/osx/packaging/xbmc-ios/mkdeb-xbmc-ios.sh87
-rw-r--r--tools/osx/packaging/xbmc-seatbeltunlock/12313417e3afeba6531255af58cb5283.patchbin0 -> 423 bytes
-rw-r--r--tools/osx/packaging/xbmc-seatbeltunlock/5a28620a15c15d41e1ae836dd1f95f8d.patchbin0 -> 432 bytes
-rwxr-xr-xtools/osx/packaging/xbmc-seatbeltunlock/mkdeb-xbmc-seatbeltunlock.sh88
-rwxr-xr-xtools/osx/packaging/xbmc-startuptweeks/mkdeb-xbmc-startuptweeks.sh84
8 files changed, 415 insertions, 0 deletions
diff --git a/tools/osx/packaging/xbmc-atv2/mkdeb-xbmc-atv2.sh b/tools/osx/packaging/xbmc-atv2/mkdeb-xbmc-atv2.sh
new file mode 100755
index 0000000000..bc11198700
--- /dev/null
+++ b/tools/osx/packaging/xbmc-atv2/mkdeb-xbmc-atv2.sh
@@ -0,0 +1,97 @@
+#!/bin/sh
+# usage: ./mkdeb-xbmc-atv2.sh release/debug (case insensitive)
+
+SWITCH=`echo $1 | tr [A-Z] [a-z]`
+
+if [ $SWITCH = "debug" ]; then
+ echo "Packaging Debug target for ATV2"
+ XBMC="../../../../build/Debug-iphoneos/XBMC.frappliance"
+elif [ $SWITCH = "release" ]; then
+ echo "Packaging Release target for ATV2"
+ XBMC="../../../../build/Release-iphoneos/XBMC.frappliance"
+else
+ echo "You need to specify the build target"
+ exit 1
+fi
+
+if [ ! -d $XBMC ]; then
+ echo "XBMC.frappliance not found! are you sure you built $1 target?"
+ exit 1
+fi
+if [ -f "/usr/bin/sudo" ]; then
+ SUDO="/usr/bin/sudo"
+fi
+if [ -f "/Users/Shared/xbmc-depends/ios-4.2_arm7/bin/dpkg-deb" ]; then
+ # make sure we pickup our tar, gnutar will fail when dpkg -i
+ bin_path=$(cd /Users/Shared/xbmc-depends/ios-4.2_arm7/bin; pwd)
+ export PATH=${bin_path}:${PATH}
+fi
+
+PACKAGE=org.xbmc.xbmc-atv2
+
+VERSION=10.0
+REVISION=7
+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 "Name: XBMC-ATV2" >> $PACKAGE/DEBIAN/control
+echo "Depends: curl, org.awkwardtv.whitelist, org.xbmc.xbmc-seatbeltunlock" >> $PACKAGE/DEBIAN/control
+echo "Version: $VERSION-$REVISION" >> $PACKAGE/DEBIAN/control
+echo "Architecture: iphoneos-arm" >> $PACKAGE/DEBIAN/control
+echo "Description: XBMC Multimedia Center for AppleTV 2" >> $PACKAGE/DEBIAN/control
+echo "Homepage: http://xbmc.org/" >> $PACKAGE/DEBIAN/control
+echo "Maintainer: Scott Davilla, Edgar Hucek" >> $PACKAGE/DEBIAN/control
+echo "Author: TeamXBMC" >> $PACKAGE/DEBIAN/control
+echo "Section: Multimedia" >> $PACKAGE/DEBIAN/control
+
+# prerm: called on remove and upgrade - get rid of existing bits.
+echo "#!/bin/sh" > $PACKAGE/DEBIAN/prerm
+echo "rm -rf /Applications/XBMC.frappliance" >> $PACKAGE/DEBIAN/prerm
+echo "if [ \"\`uname -r\`\" = \"10.3.1\" ]; then" >> $PACKAGE/DEBIAN/prerm
+echo " rm -rf /Applications/Lowtide.app/Appliances/XBMC.frappliance" >> $PACKAGE/DEBIAN/prerm
+echo "else" >> $PACKAGE/DEBIAN/prerm
+echo " rm -rf /Applications/AppleTV.app/Appliances/XBMC.frappliance" >> $PACKAGE/DEBIAN/prerm
+echo "fi" >> $PACKAGE/DEBIAN/prerm
+chmod +x $PACKAGE/DEBIAN/prerm
+
+# postinst: symlink XBMC.frappliance into correct location and reload Lowtide/AppleTV.
+echo "#!/bin/sh" > $PACKAGE/DEBIAN/postinst
+echo "if [ \"\`uname -r\`\" = \"10.3.1\" ]; then" >> $PACKAGE/DEBIAN/postinst
+echo " ln -sf /Applications/XBMC.frappliance /Applications/Lowtide.app/Appliances/XBMC.frappliance" >> $PACKAGE/DEBIAN/postinst
+echo " killall Lowtide" >> $PACKAGE/DEBIAN/postinst
+echo "else" >> $PACKAGE/DEBIAN/postinst
+echo " ln -sf /Applications/XBMC.frappliance /Applications/AppleTV.app/Appliances/XBMC.frappliance" >> $PACKAGE/DEBIAN/postinst
+echo " killall AppleTV" >> $PACKAGE/DEBIAN/postinst
+echo "fi" >> $PACKAGE/DEBIAN/postinst
+chmod +x $PACKAGE/DEBIAN/postinst
+
+# prep XBMC.frappliance
+mkdir -p $PACKAGE/Applications
+cp -r $XBMC $PACKAGE/Applications/
+find $PACKAGE/Applications/ -name '.svn' -exec rm -rf {} \;
+find $PACKAGE/Applications/ -name '.gitignore' -exec rm -rf {} \;
+find $PACKAGE/Applications/ -name '.DS_Store' -exec rm -rf {} \;
+
+# 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
+#
+dpkg-deb -b $PACKAGE $ARCHIVE
+dpkg-deb --info $ARCHIVE
+dpkg-deb --contents $ARCHIVE
+
+# clean up by removing package dir
+${SUDO} rm -rf $PACKAGE
diff --git a/tools/osx/packaging/xbmc-icon/mirrors.xbmc.org.png b/tools/osx/packaging/xbmc-icon/mirrors.xbmc.org.png
new file mode 100644
index 0000000000..9d860f5c24
--- /dev/null
+++ b/tools/osx/packaging/xbmc-icon/mirrors.xbmc.org.png
Binary files differ
diff --git a/tools/osx/packaging/xbmc-icon/mkdeb-xbmc-iconpack.sh b/tools/osx/packaging/xbmc-icon/mkdeb-xbmc-iconpack.sh
new file mode 100755
index 0000000000..b24ffc47d4
--- /dev/null
+++ b/tools/osx/packaging/xbmc-icon/mkdeb-xbmc-iconpack.sh
@@ -0,0 +1,59 @@
+#!/bin/sh
+
+if [ -f "/usr/bin/sudo" ]; then
+ SUDO="/usr/bin/sudo"
+fi
+
+PACKAGE=org.xbmc.xbmc-iconpack
+
+VERSION=1.0
+REVISION=0
+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 "Name: XBMC-IconPack" >> $PACKAGE/DEBIAN/control
+echo "Version: $VERSION-$REVISION" >> $PACKAGE/DEBIAN/control
+echo "Architecture: iphoneos-arm" >> $PACKAGE/DEBIAN/control
+echo "Description: XBMC Icon Pack" >> $PACKAGE/DEBIAN/control
+echo "Homepage: http://xbmc.org/" >> $PACKAGE/DEBIAN/control
+echo "Maintainer: TeamXBMC" >> $PACKAGE/DEBIAN/control
+echo "Author: TeamXBMC" >> $PACKAGE/DEBIAN/control
+echo "Section: Multimedia" >> $PACKAGE/DEBIAN/control
+echo "Icon: file:///Applications/Cydia.app/Sources/mirrors.xbmc.org.png" >> $PACKAGE/DEBIAN/control
+
+# prerm: called on remove and upgrade - get rid of existing bits.
+echo "#!/bin/sh" > $PACKAGE/DEBIAN/prerm
+echo "rm -f /Applications/Cydia.app/Sources/mirrors.xbmc.org.png">> $PACKAGE/DEBIAN/prerm
+chmod +x $PACKAGE/DEBIAN/prerm
+
+# postinst: nothing for now.
+echo "#!/bin/sh" > $PACKAGE/DEBIAN/postinst
+chmod +x $PACKAGE/DEBIAN/postinst
+
+# create the patch directory and copy in patch
+mkdir -p $PACKAGE/Applications/Cydia.app/Sources
+cp mirrors.xbmc.org.png $PACKAGE/Applications/Cydia.app/Sources/
+
+# 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
+#
+../../ios-depends/build/bin/dpkg-deb -b $PACKAGE $ARCHIVE
+../../ios-depends/build/bin/dpkg-deb --info $ARCHIVE
+../../ios-depends/build/bin/dpkg-deb --contents $ARCHIVE
+
+# clean up by removing package dir
+${SUDO} rm -rf $PACKAGE
diff --git a/tools/osx/packaging/xbmc-ios/mkdeb-xbmc-ios.sh b/tools/osx/packaging/xbmc-ios/mkdeb-xbmc-ios.sh
new file mode 100755
index 0000000000..bbbb81abb2
--- /dev/null
+++ b/tools/osx/packaging/xbmc-ios/mkdeb-xbmc-ios.sh
@@ -0,0 +1,87 @@
+#!/bin/sh
+
+# usage: ./mkdeb-xbmc-ios.sh release/debug (case insensitive)
+
+SWITCH=`echo $1 | tr [A-Z] [a-z]`
+
+if [ $SWITCH = "debug" ]; then
+ echo "Packaging Debug target for iOS"
+ XBMC="../../../../build/Debug-iphoneos/XBMC.app"
+elif [ $SWITCH = "release" ]; then
+ echo "Packaging Release target for iOS"
+ XBMC="../../../../build/Release-iphoneos/XBMC.app"
+else
+ echo "You need to specify the build target"
+ exit 1
+fi
+
+if [ ! -d $XBMC ]; then
+ echo "XBMC.app not found! are you sure you built $1 target?"
+ exit 1
+fi
+if [ -f "/usr/bin/sudo" ]; then
+ SUDO="/usr/bin/sudo"
+fi
+if [ -f "/Users/Shared/xbmc-depends/ios-4.2_arm7/bin/dpkg-deb" ]; then
+ # make sure we pickup our tar, gnutar will fail when dpkg -i
+ bin_path=$(cd /Users/Shared/xbmc-depends/ios-4.2_arm7/bin; pwd)
+ export PATH=${bin_path}:${PATH}
+fi
+
+PACKAGE=org.xbmc.xbmc-ios
+
+VERSION=10.0
+REVISION=7
+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 "Name: XBMC-iOS" >> $PACKAGE/DEBIAN/control
+echo "Depends: firmware (>= 4.1), curl, org.xbmc.xbmc-iconpack" >> $PACKAGE/DEBIAN/control
+echo "Version: $VERSION-$REVISION" >> $PACKAGE/DEBIAN/control
+echo "Architecture: iphoneos-arm" >> $PACKAGE/DEBIAN/control
+echo "Description: XBMC Multimedia Center for 4.x iOS" >> $PACKAGE/DEBIAN/control
+echo "Homepage: http://xbmc.org/" >> $PACKAGE/DEBIAN/control
+echo "Maintainer: Scott Davilla, Edgar Hucek" >> $PACKAGE/DEBIAN/control
+echo "Author: TeamXBMC" >> $PACKAGE/DEBIAN/control
+echo "Section: Multimedia" >> $PACKAGE/DEBIAN/control
+echo "Icon: file:///Applications/Cydia.app/Sources/mirrors.xbmc.org.png" >> $PACKAGE/DEBIAN/control
+
+# prerm: called on remove and upgrade - get rid of existing bits.
+echo "#!/bin/sh" > $PACKAGE/DEBIAN/prerm
+echo "rm -rf /Applications/XBMC.app" >> $PACKAGE/DEBIAN/prerm
+chmod +x $PACKAGE/DEBIAN/prerm
+
+# postinst: nothing for now.
+echo "#!/bin/sh" > $PACKAGE/DEBIAN/postinst
+chmod +x $PACKAGE/DEBIAN/postinst
+
+# prep XBMC.app
+mkdir -p $PACKAGE/Applications
+cp -r $XBMC $PACKAGE/Applications/
+find $PACKAGE/Applications/ -name '.svn' -exec rm -rf {} \;
+find $PACKAGE/Applications/ -name '.gitignore' -exec rm -rf {} \;
+find $PACKAGE/Applications/ -name '.DS_Store' -exec rm -rf {} \;
+
+# 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
+#
+dpkg-deb -b $PACKAGE $ARCHIVE
+dpkg-deb --info $ARCHIVE
+dpkg-deb --contents $ARCHIVE
+
+# clean up by removing package dir
+${SUDO} rm -rf $PACKAGE
diff --git a/tools/osx/packaging/xbmc-seatbeltunlock/12313417e3afeba6531255af58cb5283.patch b/tools/osx/packaging/xbmc-seatbeltunlock/12313417e3afeba6531255af58cb5283.patch
new file mode 100644
index 0000000000..960edae2d2
--- /dev/null
+++ b/tools/osx/packaging/xbmc-seatbeltunlock/12313417e3afeba6531255af58cb5283.patch
Binary files differ
diff --git a/tools/osx/packaging/xbmc-seatbeltunlock/5a28620a15c15d41e1ae836dd1f95f8d.patch b/tools/osx/packaging/xbmc-seatbeltunlock/5a28620a15c15d41e1ae836dd1f95f8d.patch
new file mode 100644
index 0000000000..12ea6fc9b1
--- /dev/null
+++ b/tools/osx/packaging/xbmc-seatbeltunlock/5a28620a15c15d41e1ae836dd1f95f8d.patch
Binary files differ
diff --git a/tools/osx/packaging/xbmc-seatbeltunlock/mkdeb-xbmc-seatbeltunlock.sh b/tools/osx/packaging/xbmc-seatbeltunlock/mkdeb-xbmc-seatbeltunlock.sh
new file mode 100755
index 0000000000..8afcbc4730
--- /dev/null
+++ b/tools/osx/packaging/xbmc-seatbeltunlock/mkdeb-xbmc-seatbeltunlock.sh
@@ -0,0 +1,88 @@
+#!/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=1
+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 :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: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 " * )" >> $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/
+
+# 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
diff --git a/tools/osx/packaging/xbmc-startuptweeks/mkdeb-xbmc-startuptweeks.sh b/tools/osx/packaging/xbmc-startuptweeks/mkdeb-xbmc-startuptweeks.sh
new file mode 100755
index 0000000000..1dd17e3922
--- /dev/null
+++ b/tools/osx/packaging/xbmc-startuptweeks/mkdeb-xbmc-startuptweeks.sh
@@ -0,0 +1,84 @@
+#!/bin/sh
+
+if [ -f "/usr/bin/sudo" ]; then
+ SUDO="/usr/bin/sudo"
+fi
+
+PACKAGE=com.xbmc.xbmc-startuptweeks
+
+VERSION=1.0
+REVISION=0
+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 "Name: XBMC startup tweeks (seatbelt)" >> $PACKAGE/DEBIAN/control
+echo "Version: $VERSION-$REVISION" >> $PACKAGE/DEBIAN/control
+echo "Architecture: iphoneos-arm" >> $PACKAGE/DEBIAN/control
+echo "Description: XBMC startup 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: Multimedia" >> $PACKAGE/DEBIAN/control
+
+# prerm: called on remove and upgrade - get rid of existing bits
+echo "#!/bin/sh" > $PACKAGE/DEBIAN/prerm
+echo "rm -f /usr/libexec/xbmc/startup" >> $PACKAGE/DEBIAN/prerm
+echo "rm -f /System/Library/LaunchDaemons/com.xbmc.xbmc.startup.plist" >> $PACKAGE/DEBIAN/prerm
+chmod +x $PACKAGE/DEBIAN/prerm
+
+# postinst: startup our daemon plist
+echo "#!/bin/sh" > $PACKAGE/DEBIAN/postinst
+echo "/bin/launchctl load /System/Library/LaunchDaemons/com.xbmc.xbmc.startup.plist 2&> /dev/null" >> $PACKAGE/DEBIAN/postinst
+chmod +x $PACKAGE/DEBIAN/postinst
+
+# create ios launch daemon that runs at boot
+DEST=System/Library/LaunchDaemons
+mkdir -p $PACKAGE/$DEST
+echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" > $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo "<!DOCTYPE plist PUBLIC \"-//Apple Computer//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo "<plist version=\"1.0\">" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo "<dict>" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo " <key>Label</key>" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo " <string>com.xbmc.xbmc.startup</string>" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo " <key>Program</key>" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo " <string>/usr/libexec/xbmc/startup</string>" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo " <key>RunAtLoad</key>" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo " <true/>" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo "</dict>" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+echo "</plist>" >> $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+${SUDO} chmod 644 $PACKAGE/$DEST/com.xbmc.xbmc.startup.plist
+
+# create startup file that is run by our launch daemon
+DEST=usr/libexec/xbmc
+mkdir -p $PACKAGE/$DEST
+echo "#!/bin/sh" > $PACKAGE/$DEST/startup
+echo "#remove sandbox/seatbelt restrictions" >> $PACKAGE/$DEST/startup
+echo "if echo \`sysctl hw.machine\` | grep AppleTV2,1 > /dev/null; then" >> $PACKAGE/$DEST/startup
+echo " sysctl -w security.mac.proc_enforce=0" >> $PACKAGE/$DEST/startup
+echo "fi" >> $PACKAGE/$DEST/startup
+echo "sysctl -w security.mac.vnode_enforce=0" >> $PACKAGE/$DEST/startup
+echo "exit 0" >> $PACKAGE/$DEST/startup
+${SUDO} chmod 755 $PACKAGE/$DEST/startup
+
+# 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
+../../ios-depends/build/bin/dpkg-deb -b $PACKAGE $ARCHIVE
+../../ios-depends/build/bin/dpkg-deb --info $ARCHIVE
+../../ios-depends/build/bin/dpkg-deb --contents $ARCHIVE
+
+# clean up by removing package dir
+${SUDO} rm -rf $PACKAGE