diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9b1c8b1 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/dist diff --git a/README.md b/README.md index a420907..f3ef70a 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,15 @@ -# sifteo-gen1-redux -Sifteo's 1st gen software and apps bundled together into a single packgage (macOS only). + +# Sifteo 1st gen software + +This repository contains the software and apps for [Sifteo](https://en.wikipedia.org/wiki/Sifteo_cubes)'s 1st generation product. + + +## How to use it? + +If you aren't wearing a developer hat, simply download and install the prebuild version. +The pkg file contains both the Siftrunner.app and all the apps I've found (hat tip to [Dr. Mike Reddy](http://doctormikereddy.wordpress.com) for his huge help on that) + + +## Acknowledgments + +My special thanks goes out to the whole Sifteo's team for build such incredible and unique system. diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..69c7abf --- /dev/null +++ b/build.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +NAME="sifteo-gen1" +IDENTIFIER="sifteo.redux.$NAME" + +# Package version number (inherited from Siftrunner.app version) +VERSION="1.1.5-r01" + +INSTALL_LOCATION="/tmp/Sifteo" + +mkdir -p dist + +# Remove any unwanted .DS_Store files. +find payload -name '*.DS_Store' -type f -delete + +# Remove any extended attributes (ACEs). +/usr/bin/xattr -rc payload + +# Build package... +pkgbuild \ + --root payload/ \ + --install-location "$INSTALL_LOCATION" \ + --scripts scripts/ \ + --identifier "$IDENTIFIER" \ + --version "$VERSION" \ + "dist/$NAME-$VERSION.pkg" \ No newline at end of file diff --git a/payload/Preferences/com.sifteo.Siftrunner.plist b/payload/Preferences/com.sifteo.Siftrunner.plist new file mode 100644 index 0000000..6a12a69 Binary files /dev/null and b/payload/Preferences/com.sifteo.Siftrunner.plist differ diff --git a/payload/Siftapps/3x3.siftapp b/payload/Siftapps/3x3.siftapp new file mode 100755 index 0000000..2cc13f3 Binary files /dev/null and b/payload/Siftapps/3x3.siftapp differ diff --git a/payload/Siftapps/LoopLoop.siftapp b/payload/Siftapps/LoopLoop.siftapp new file mode 100755 index 0000000..29a3ffe Binary files /dev/null and b/payload/Siftapps/LoopLoop.siftapp differ diff --git a/payload/Siftapps/MiamiHeist_20120305.siftapp b/payload/Siftapps/MiamiHeist_20120305.siftapp new file mode 100755 index 0000000..29d2442 Binary files /dev/null and b/payload/Siftapps/MiamiHeist_20120305.siftapp differ diff --git a/payload/Siftapps/Peano_2012_03_20.siftapp b/payload/Siftapps/Peano_2012_03_20.siftapp new file mode 100755 index 0000000..4cdd1d4 Binary files /dev/null and b/payload/Siftapps/Peano_2012_03_20.siftapp differ diff --git a/payload/Siftapps/PlanetOfTunes.siftapp b/payload/Siftapps/PlanetOfTunes.siftapp new file mode 100755 index 0000000..890d2f8 Binary files /dev/null and b/payload/Siftapps/PlanetOfTunes.siftapp differ diff --git a/payload/Siftapps/alphamatic.siftapp b/payload/Siftapps/alphamatic.siftapp new file mode 100755 index 0000000..5a6cf97 Binary files /dev/null and b/payload/Siftapps/alphamatic.siftapp differ diff --git a/payload/Siftapps/bouncr.siftapp b/payload/Siftapps/bouncr.siftapp new file mode 100755 index 0000000..f1061bc Binary files /dev/null and b/payload/Siftapps/bouncr.siftapp differ diff --git a/payload/Siftapps/brainiac.siftapp b/payload/Siftapps/brainiac.siftapp new file mode 100755 index 0000000..5363ecc Binary files /dev/null and b/payload/Siftapps/brainiac.siftapp differ diff --git a/payload/Siftapps/calculator.siftapp b/payload/Siftapps/calculator.siftapp new file mode 100755 index 0000000..ae34ebe Binary files /dev/null and b/payload/Siftapps/calculator.siftapp differ diff --git a/payload/Siftapps/chromalite_17.siftapp b/payload/Siftapps/chromalite_17.siftapp new file mode 100755 index 0000000..139436a Binary files /dev/null and b/payload/Siftapps/chromalite_17.siftapp differ diff --git a/payload/Siftapps/gems.siftapp b/payload/Siftapps/gems.siftapp new file mode 100755 index 0000000..209119c Binary files /dev/null and b/payload/Siftapps/gems.siftapp differ diff --git a/payload/Siftapps/gestut.siftapp b/payload/Siftapps/gestut.siftapp new file mode 100755 index 0000000..5bf4b42 Binary files /dev/null and b/payload/Siftapps/gestut.siftapp differ diff --git a/payload/Siftapps/gopherrun.siftapp b/payload/Siftapps/gopherrun.siftapp new file mode 100755 index 0000000..9a4e2cd Binary files /dev/null and b/payload/Siftapps/gopherrun.siftapp differ diff --git a/payload/Siftapps/match.siftapp b/payload/Siftapps/match.siftapp new file mode 100755 index 0000000..030bbc6 Binary files /dev/null and b/payload/Siftapps/match.siftapp differ diff --git a/payload/Siftapps/meatRummy.siftapp b/payload/Siftapps/meatRummy.siftapp new file mode 100755 index 0000000..ab7364a Binary files /dev/null and b/payload/Siftapps/meatRummy.siftapp differ diff --git a/payload/Siftapps/monsterbuds.siftapp b/payload/Siftapps/monsterbuds.siftapp new file mode 100755 index 0000000..e7836fc Binary files /dev/null and b/payload/Siftapps/monsterbuds.siftapp differ diff --git a/payload/Siftapps/oogors_story.siftapp b/payload/Siftapps/oogors_story.siftapp new file mode 100755 index 0000000..7116313 Binary files /dev/null and b/payload/Siftapps/oogors_story.siftapp differ diff --git a/payload/Siftapps/penguin.siftapp b/payload/Siftapps/penguin.siftapp new file mode 100755 index 0000000..43a7553 Binary files /dev/null and b/payload/Siftapps/penguin.siftapp differ diff --git a/payload/Siftapps/shaper.siftapp b/payload/Siftapps/shaper.siftapp new file mode 100755 index 0000000..f8c4abb Binary files /dev/null and b/payload/Siftapps/shaper.siftapp differ diff --git a/payload/Siftapps/siftsays.siftapp b/payload/Siftapps/siftsays.siftapp new file mode 100755 index 0000000..feddba3 Binary files /dev/null and b/payload/Siftapps/siftsays.siftapp differ diff --git a/payload/Siftapps/tiles.siftapp b/payload/Siftapps/tiles.siftapp new file mode 100755 index 0000000..4917bd8 Binary files /dev/null and b/payload/Siftapps/tiles.siftapp differ diff --git a/payload/Siftapps/tiny.siftapp b/payload/Siftapps/tiny.siftapp new file mode 100755 index 0000000..9117ef6 Binary files /dev/null and b/payload/Siftapps/tiny.siftapp differ diff --git a/payload/Siftapps/wordplay.siftapp b/payload/Siftapps/wordplay.siftapp new file mode 100755 index 0000000..00a6e12 Binary files /dev/null and b/payload/Siftapps/wordplay.siftapp differ diff --git a/scripts/postinstall b/scripts/postinstall new file mode 100755 index 0000000..b8eefa3 --- /dev/null +++ b/scripts/postinstall @@ -0,0 +1,37 @@ +#!/bin/bash + +ACCOUNT="nobody@sifteo.com" +LOGFILE="/tmp/sifte-install.log" + +HOME_OWNER=`stat -f "%u:%g" $HOME` + +echo "Starting installation..." > $LOGFILE 2>&1 +echo -e "ENV: \n===\n`env`\n===\n" >> $LOGFILE 2>&1 + +# Create preferences file +PREFERENCES=com.sifteo.Siftrunner.plist +/usr/libexec/PlistBuddy $DSTROOT/Preferences/$PREFERENCES -c "Set userSession.email $ACCOUNT" >> $LOGFILE 2>&1 +mv $DSTROOT/Preferences/$PREFERENCES "$HOME/Library/Preferences/" >> $LOGFILE 2>&1 +chown $HOME_OWNER "$HOME/Library/Preferences/$PREFERENCES" >> $LOGFILE 2>&1 + +# Move sifteo apps to the correct place in the user's Library/Application Support/ folder +mkdir -p "$HOME/Library/Application Support/Sifteo/Siftrunner/Users/$ACCOUNT/Apps" >> $LOGFILE 2>&1 +mv $DSTROOT/Siftapps/* "$HOME/Library/Application Support/Sifteo/Siftrunner/Users/$ACCOUNT/Apps" >> $LOGFILE 2>&1 +chown -R $HOME_OWNER "$HOME/Library/Application Support/Sifteo" >> $LOGFILE 2>&1 + +# Unzip Siftrunner.app to Applications +rm -rf /Applications/Siftrunner.app +SIFTRUNNER_ZIP=Siftrunner-1.1.5.zip +unzip -q $DSTROOT/$SIFTRUNNER_ZIP -d /Applications >> $LOGFILE 2>&1 + +# Cleanup +rmdir $DSTROOT/Preferences >> $LOGFILE 2>&1 +rmdir $DSTROOT/Siftapps >> $LOGFILE 2>&1 +rm $DSTROOT/$SIFTRUNNER_ZIP +rmdir $DSTROOT + +defaults read "$HOME/Library/Preferences/com.sifteo.Siftrunner" > /dev/null + +#rm $LOGFILE + +exit 0 \ No newline at end of file