From 63a4e78b77b29d91a0f3cb592b07bd65a70b82b8 Mon Sep 17 00:00:00 2001
From: Joe Wreschnig
Date: Mon, 11 Mar 2013 14:59:22 +0100
Subject: [PATCH] Add Sparkle automatic updater.
---
Enjoyable.xcodeproj/project.pbxproj | 31 +++
Info.plist | 4 +-
Resources/English.lproj/MainMenu.xib | 84 ++++++--
.../Resources/English.lproj/pgs/boring.html | 65 +++++++
Sparkle.framework/Headers | 1 +
Sparkle.framework/Resources | 1 +
Sparkle.framework/Sparkle | 1 +
.../Versions/A/Headers/SUAppcast.h | 36 ++++
.../Versions/A/Headers/SUAppcastItem.h | 60 ++++++
.../Versions/A/Headers/SUUpdater.h | 161 ++++++++++++++++
.../A/Headers/SUVersionComparisonProtocol.h | 29 +++
.../A/Headers/SUVersionDisplayProtocol.h | 27 +++
.../Versions/A/Headers/Sparkle.h | 21 ++
.../Versions/A/Resources/Info.plist | 40 ++++
.../Versions/A/Resources/License.txt | 38 ++++
.../A/Resources/SUModelTranslation.plist | 182 ++++++++++++++++++
.../Versions/A/Resources/SUStatus.nib | Bin 0 -> 6507 bytes
.../ar.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7060 bytes
.../A/Resources/ar.lproj/SUPasswordPrompt.nib | Bin 0 -> 5930 bytes
.../A/Resources/ar.lproj/SUUpdateAlert.nib | Bin 0 -> 10366 bytes
.../ar.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12678 bytes
.../A/Resources/ar.lproj/Sparkle.strings | Bin 0 -> 8896 bytes
.../cs.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6981 bytes
.../A/Resources/cs.lproj/SUUpdateAlert.nib | Bin 0 -> 10162 bytes
.../cs.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12720 bytes
.../A/Resources/cs.lproj/Sparkle.strings | Bin 0 -> 8642 bytes
.../da.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7018 bytes
.../A/Resources/da.lproj/SUUpdateAlert.nib | Bin 0 -> 10334 bytes
.../da.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12621 bytes
.../A/Resources/da.lproj/Sparkle.strings | Bin 0 -> 9072 bytes
.../de.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7051 bytes
.../A/Resources/de.lproj/SUUpdateAlert.nib | Bin 0 -> 10307 bytes
.../de.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12637 bytes
.../A/Resources/de.lproj/Sparkle.strings | Bin 0 -> 9246 bytes
.../en.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6957 bytes
.../A/Resources/en.lproj/SUPasswordPrompt.nib | Bin 0 -> 5873 bytes
.../A/Resources/en.lproj/SUUpdateAlert.nib | Bin 0 -> 10179 bytes
.../en.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12504 bytes
.../A/Resources/en.lproj/Sparkle.strings | Bin 0 -> 8482 bytes
.../es.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6994 bytes
.../A/Resources/es.lproj/SUUpdateAlert.nib | Bin 0 -> 10413 bytes
.../es.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12810 bytes
.../A/Resources/es.lproj/Sparkle.strings | Bin 0 -> 8956 bytes
.../Contents/Info.plist | 50 +++++
.../Contents/MacOS/finish_installation | Bin 0 -> 181092 bytes
.../finish_installation.app/Contents/PkgInfo | 1 +
.../Contents/Resources/SUStatus.nib | Bin 0 -> 6507 bytes
.../Contents/Resources/Sparkle.icns | Bin 0 -> 50219 bytes
.../Resources/ar.lproj/Sparkle.strings | Bin 0 -> 8896 bytes
.../Resources/cs.lproj/Sparkle.strings | Bin 0 -> 8642 bytes
.../Resources/da.lproj/Sparkle.strings | Bin 0 -> 9072 bytes
.../Resources/de.lproj/Sparkle.strings | Bin 0 -> 9246 bytes
.../Resources/en.lproj/Sparkle.strings | Bin 0 -> 8482 bytes
.../Resources/es.lproj/Sparkle.strings | Bin 0 -> 8956 bytes
.../Resources/fr.lproj/Sparkle.strings | Bin 0 -> 9204 bytes
.../Resources/is.lproj/Sparkle.strings | Bin 0 -> 6772 bytes
.../Resources/it.lproj/Sparkle.strings | Bin 0 -> 9136 bytes
.../Resources/ja.lproj/Sparkle.strings | Bin 0 -> 7518 bytes
.../Resources/nl.lproj/Sparkle.strings | Bin 0 -> 9374 bytes
.../Resources/pl.lproj/Sparkle.strings | Bin 0 -> 9532 bytes
.../Resources/pt_BR.lproj/Sparkle.strings | Bin 0 -> 8330 bytes
.../Resources/pt_PT.lproj/Sparkle.strings | Bin 0 -> 8652 bytes
.../Resources/ro.lproj/Sparkle.strings | Bin 0 -> 9386 bytes
.../Resources/ru.lproj/Sparkle.strings | Bin 0 -> 8662 bytes
.../Resources/sl.lproj/Sparkle.strings | Bin 0 -> 8778 bytes
.../Resources/sv.lproj/Sparkle.strings | Bin 0 -> 8600 bytes
.../Resources/th.lproj/Sparkle.strings | Bin 0 -> 8946 bytes
.../Resources/tr.lproj/Sparkle.strings | Bin 0 -> 9284 bytes
.../Resources/uk.lproj/Sparkle.strings | Bin 0 -> 8644 bytes
.../Resources/zh_CN.lproj/Sparkle.strings | Bin 0 -> 6908 bytes
.../Resources/zh_TW.lproj/Sparkle.strings | Bin 0 -> 6642 bytes
.../fr.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7018 bytes
.../A/Resources/fr.lproj/SUUpdateAlert.nib | Bin 0 -> 10357 bytes
.../fr.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12852 bytes
.../A/Resources/fr.lproj/Sparkle.strings | Bin 0 -> 9204 bytes
.../Versions/A/Resources/fr_CA.lproj | 1 +
.../is.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6955 bytes
.../A/Resources/is.lproj/SUUpdateAlert.nib | Bin 0 -> 10142 bytes
.../is.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12718 bytes
.../A/Resources/is.lproj/Sparkle.strings | Bin 0 -> 6772 bytes
.../it.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6944 bytes
.../A/Resources/it.lproj/SUUpdateAlert.nib | Bin 0 -> 10274 bytes
.../it.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12654 bytes
.../A/Resources/it.lproj/Sparkle.strings | Bin 0 -> 9136 bytes
.../ja.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7045 bytes
.../A/Resources/ja.lproj/SUUpdateAlert.nib | Bin 0 -> 10357 bytes
.../ja.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12465 bytes
.../A/Resources/ja.lproj/Sparkle.strings | Bin 0 -> 7518 bytes
.../ko.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6861 bytes
.../A/Resources/ko.lproj/SUUpdateAlert.nib | Bin 0 -> 10000 bytes
.../ko.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12355 bytes
.../nl.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6949 bytes
.../A/Resources/nl.lproj/SUUpdateAlert.nib | Bin 0 -> 10254 bytes
.../nl.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12453 bytes
.../A/Resources/nl.lproj/Sparkle.strings | Bin 0 -> 9374 bytes
.../pl.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6981 bytes
.../A/Resources/pl.lproj/SUUpdateAlert.nib | Bin 0 -> 10144 bytes
.../pl.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12502 bytes
.../A/Resources/pl.lproj/Sparkle.strings | Bin 0 -> 9532 bytes
.../Versions/A/Resources/pt.lproj | 1 +
.../pt_BR.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7022 bytes
.../pt_BR.lproj/SUPasswordPrompt.nib | Bin 0 -> 5904 bytes
.../A/Resources/pt_BR.lproj/SUUpdateAlert.nib | Bin 0 -> 10249 bytes
.../pt_BR.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12723 bytes
.../A/Resources/pt_BR.lproj/Sparkle.strings | Bin 0 -> 8330 bytes
.../pt_PT.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7036 bytes
.../A/Resources/pt_PT.lproj/SUUpdateAlert.nib | Bin 0 -> 10434 bytes
.../pt_PT.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12824 bytes
.../A/Resources/pt_PT.lproj/Sparkle.strings | Bin 0 -> 8652 bytes
.../ro.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7059 bytes
.../A/Resources/ro.lproj/SUUpdateAlert.nib | Bin 0 -> 10387 bytes
.../ro.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12530 bytes
.../A/Resources/ro.lproj/Sparkle.strings | Bin 0 -> 9386 bytes
.../ru.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7085 bytes
.../A/Resources/ru.lproj/SUUpdateAlert.nib | Bin 0 -> 10445 bytes
.../ru.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12802 bytes
.../A/Resources/ru.lproj/Sparkle.strings | Bin 0 -> 8662 bytes
.../sk.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7010 bytes
.../A/Resources/sk.lproj/SUUpdateAlert.nib | Bin 0 -> 10191 bytes
.../sk.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12716 bytes
.../sl.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7045 bytes
.../A/Resources/sl.lproj/SUUpdateAlert.nib | Bin 0 -> 10153 bytes
.../sl.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12689 bytes
.../A/Resources/sl.lproj/Sparkle.strings | Bin 0 -> 8778 bytes
.../sv.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6964 bytes
.../A/Resources/sv.lproj/SUUpdateAlert.nib | Bin 0 -> 10306 bytes
.../sv.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12665 bytes
.../A/Resources/sv.lproj/Sparkle.strings | Bin 0 -> 8600 bytes
.../th.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7029 bytes
.../A/Resources/th.lproj/SUPasswordPrompt.nib | Bin 0 -> 5922 bytes
.../A/Resources/th.lproj/SUUpdateAlert.nib | Bin 0 -> 10263 bytes
.../th.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12599 bytes
.../A/Resources/th.lproj/Sparkle.strings | Bin 0 -> 8946 bytes
.../tr.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7121 bytes
.../A/Resources/tr.lproj/SUUpdateAlert.nib | Bin 0 -> 10398 bytes
.../tr.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12669 bytes
.../A/Resources/tr.lproj/Sparkle.strings | Bin 0 -> 9284 bytes
.../uk.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 7175 bytes
.../A/Resources/uk.lproj/SUUpdateAlert.nib | Bin 0 -> 10545 bytes
.../uk.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12712 bytes
.../A/Resources/uk.lproj/Sparkle.strings | Bin 0 -> 8644 bytes
.../zh_CN.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6880 bytes
.../A/Resources/zh_CN.lproj/SUUpdateAlert.nib | Bin 0 -> 10165 bytes
.../zh_CN.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12272 bytes
.../A/Resources/zh_CN.lproj/Sparkle.strings | Bin 0 -> 6908 bytes
.../zh_TW.lproj/SUAutomaticUpdateAlert.nib | Bin 0 -> 6833 bytes
.../A/Resources/zh_TW.lproj/SUUpdateAlert.nib | Bin 0 -> 9961 bytes
.../zh_TW.lproj/SUUpdatePermissionPrompt.nib | Bin 0 -> 12253 bytes
.../A/Resources/zh_TW.lproj/Sparkle.strings | Bin 0 -> 6642 bytes
Sparkle.framework/Versions/A/Sparkle | Bin 0 -> 668148 bytes
Sparkle.framework/Versions/Current | 1 +
Website/{Enjoyable.zip => Enjoyable-1.0.zip} | Bin
Website/appcast.xml | 37 ++++
Website/index.html | 2 +-
154 files changed, 851 insertions(+), 23 deletions(-)
create mode 120000 Sparkle.framework/Headers
create mode 120000 Sparkle.framework/Resources
create mode 120000 Sparkle.framework/Sparkle
create mode 100644 Sparkle.framework/Versions/A/Headers/SUAppcast.h
create mode 100644 Sparkle.framework/Versions/A/Headers/SUAppcastItem.h
create mode 100644 Sparkle.framework/Versions/A/Headers/SUUpdater.h
create mode 100644 Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h
create mode 100644 Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h
create mode 100644 Sparkle.framework/Versions/A/Headers/Sparkle.h
create mode 100644 Sparkle.framework/Versions/A/Resources/Info.plist
create mode 100644 Sparkle.framework/Versions/A/Resources/License.txt
create mode 100644 Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist
create mode 100644 Sparkle.framework/Versions/A/Resources/SUStatus.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ar.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ar.lproj/SUPasswordPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ar.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/en.lproj/SUPasswordPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Info.plist
create mode 100755 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/finish_installation
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/PkgInfo
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/SUStatus.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/Sparkle.icns
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ar.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_PT.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ro.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sl.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/th.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/tr.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/uk.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings
create mode 120000 Sparkle.framework/Versions/A/Resources/fr_CA.lproj
create mode 100644 Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/ko.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings
create mode 120000 Sparkle.framework/Versions/A/Resources/pt.lproj
create mode 100644 Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUPasswordPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/pt_PT.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/ro.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ro.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ro.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ro.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/sk.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/sl.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/sl.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/sl.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/sl.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/th.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/th.lproj/SUPasswordPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/th.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/th.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/th.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/tr.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/tr.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/tr.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/tr.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/uk.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/uk.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/uk.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/uk.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings
create mode 100644 Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.nib
create mode 100644 Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings
create mode 100755 Sparkle.framework/Versions/A/Sparkle
create mode 120000 Sparkle.framework/Versions/Current
rename Website/{Enjoyable.zip => Enjoyable-1.0.zip} (100%)
create mode 100755 Website/appcast.xml
diff --git a/Enjoyable.xcodeproj/project.pbxproj b/Enjoyable.xcodeproj/project.pbxproj
index 3d6cb56..de4ee8b 100644
--- a/Enjoyable.xcodeproj/project.pbxproj
+++ b/Enjoyable.xcodeproj/project.pbxproj
@@ -15,6 +15,8 @@
EE3D898016EA817E00596D1F /* Status Menu Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = EE3D897E16EA817E00596D1F /* Status Menu Icon.png */; };
EE6A122E16E8F46300EDBD32 /* Icon.icns in Resources */ = {isa = PBXBuildFile; fileRef = EE6A122D16E8F46300EDBD32 /* Icon.icns */; };
EED4CE6E16ED692400C65AA8 /* NJMappingMenuController.m in Sources */ = {isa = PBXBuildFile; fileRef = EED4CE6D16ED692400C65AA8 /* NJMappingMenuController.m */; };
+ EED4CE7716EE195100C65AA8 /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EED4CE7616EE195100C65AA8 /* Sparkle.framework */; };
+ EED4CE7816EE195B00C65AA8 /* Sparkle.framework in Copy Sparkle Framework */ = {isa = PBXBuildFile; fileRef = EED4CE7616EE195100C65AA8 /* Sparkle.framework */; };
EEE73B1616EA42E5009D9D99 /* NSRunningApplication+NJPossibleNames.m in Sources */ = {isa = PBXBuildFile; fileRef = EEE73B1516EA42E5009D9D99 /* NSRunningApplication+NJPossibleNames.m */; };
EEF17D1916E8E21A00D7DC4D /* com.yukkurigames.Enjoyable.mapping.icns in Resources */ = {isa = PBXBuildFile; fileRef = EEF17D1716E8E21A00D7DC4D /* com.yukkurigames.Enjoyable.mapping.icns */; };
EEF17D1F16E8E23A00D7DC4D /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = EEF17D1B16E8E23A00D7DC4D /* InfoPlist.strings */; };
@@ -46,6 +48,20 @@
EEF17D6C16E8E2EF00D7DC4D /* NJOutputMouseScroll.m in Sources */ = {isa = PBXBuildFile; fileRef = EEF17D5B16E8E2EF00D7DC4D /* NJOutputMouseScroll.m */; };
/* End PBXBuildFile section */
+/* Begin PBXCopyFilesBuildPhase section */
+ EED4CE7416EE0E6400C65AA8 /* Copy Sparkle Framework */ = {
+ isa = PBXCopyFilesBuildPhase;
+ buildActionMask = 2147483647;
+ dstPath = "";
+ dstSubfolderSpec = 10;
+ files = (
+ EED4CE7816EE195B00C65AA8 /* Sparkle.framework in Copy Sparkle Framework */,
+ );
+ name = "Copy Sparkle Framework";
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXCopyFilesBuildPhase section */
+
/* Begin PBXFileReference section */
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; };
29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; };
@@ -60,6 +76,7 @@
EE6A122D16E8F46300EDBD32 /* Icon.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = Icon.icns; sourceTree = ""; };
EED4CE6C16ED692400C65AA8 /* NJMappingMenuController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NJMappingMenuController.h; path = Classes/NJMappingMenuController.h; sourceTree = ""; };
EED4CE6D16ED692400C65AA8 /* NJMappingMenuController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NJMappingMenuController.m; path = Classes/NJMappingMenuController.m; sourceTree = ""; };
+ EED4CE7616EE195100C65AA8 /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = ""; };
EEE73B1416EA42E5009D9D99 /* NSRunningApplication+NJPossibleNames.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "NSRunningApplication+NJPossibleNames.h"; path = "Categories/NSRunningApplication+NJPossibleNames.h"; sourceTree = ""; };
EEE73B1516EA42E5009D9D99 /* NSRunningApplication+NJPossibleNames.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "NSRunningApplication+NJPossibleNames.m"; path = "Categories/NSRunningApplication+NJPossibleNames.m"; sourceTree = ""; };
EEF17D1716E8E21A00D7DC4D /* com.yukkurigames.Enjoyable.mapping.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = com.yukkurigames.Enjoyable.mapping.icns; path = Resources/com.yukkurigames.Enjoyable.mapping.icns; sourceTree = ""; };
@@ -125,6 +142,7 @@
files = (
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
D594BF000FAE7397007A85F2 /* IOKit.framework in Frameworks */,
+ EED4CE7716EE195100C65AA8 /* Sparkle.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -178,6 +196,7 @@
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
+ EED4CE7616EE195100C65AA8 /* Sparkle.framework */,
D594BEFF0FAE7397007A85F2 /* IOKit.framework */,
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
);
@@ -283,6 +302,7 @@
8D1107290486CEB800E47090 /* Resources */,
8D11072C0486CEB800E47090 /* Sources */,
8D11072E0486CEB800E47090 /* Frameworks */,
+ EED4CE7416EE0E6400C65AA8 /* Copy Sparkle Framework */,
);
buildRules = (
);
@@ -435,8 +455,13 @@
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_IMPLICIT_SIGN_CONVERSION = NO;
+ CODE_SIGN_IDENTITY = "";
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO;
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SRCROOT)\"",
+ );
GCC_C_LANGUAGE_STANDARD = c99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_MODEL_TUNING = G5;
@@ -460,8 +485,13 @@
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_IMPLICIT_SIGN_CONVERSION = NO;
+ CODE_SIGN_IDENTITY = "Joe Wreschnig's Self-Signed OS X Applications";
COMBINE_HIDPI_IMAGES = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SRCROOT)\"",
+ );
GCC_C_LANGUAGE_STANDARD = c99;
GCC_MODEL_TUNING = G5;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
@@ -472,6 +502,7 @@
INSTALL_PATH = "$(HOME)/Applications";
MACOSX_DEPLOYMENT_TARGET = 10.7;
PRODUCT_NAME = Enjoyable;
+ PROVISIONING_PROFILE = "";
};
name = Release;
};
diff --git a/Info.plist b/Info.plist
index beec610..8401695 100644
--- a/Info.plist
+++ b/Info.plist
@@ -46,7 +46,7 @@
CFBundleSignature
????
CFBundleVersion
- 142
+ 146
LSApplicationCategoryType
public.app-category.utilities
NSHumanReadableCopyright
@@ -59,6 +59,8 @@
YES
NSSupportsSuddenTermination
+ SUFeedURL
+ http://yukkurigames.com/enjoyable/appcast.xml
UTExportedTypeDeclarations
diff --git a/Resources/English.lproj/MainMenu.xib b/Resources/English.lproj/MainMenu.xib
index 7d4b4c6..bd469bb 100644
--- a/Resources/English.lproj/MainMenu.xib
+++ b/Resources/English.lproj/MainMenu.xib
@@ -86,6 +86,14 @@
+
{{1, 1}, {232, 321}}
-
@@ -630,7 +635,6 @@ aW5nLg
-2147483392
{{1, 1}, {8, 298}}
-
NO
@@ -642,7 +646,6 @@ aW5nLg
-2147483392
{{-100, -100}, {473, 15}}
-
NO
1
@@ -653,7 +656,6 @@ aW5nLg
{234, 323}
-
150034
@@ -667,7 +669,6 @@ aW5nLg
{234, 323}
-
_NS:9
NSView
@@ -681,7 +682,6 @@ aW5nLg
265
{{189, 117}, {224, 20}}
-
_NS:9
YES
@@ -723,7 +723,6 @@ aW5nLg
268
{{343, 31}, {70, 18}}
-
_NS:9
YES
@@ -754,7 +753,6 @@ aW5nLg
265
{{189, 33}, {150, 20}}
-
_NS:9
YES
@@ -799,7 +797,6 @@ aW5nLg
265
{{191, 24}, {146, 16}}
-
_NS:9
YES
@@ -825,7 +822,6 @@ aW5nLg
265
{{189, 70}, {224, 24}}
-
_NS:9
YES
@@ -879,7 +875,6 @@ aW5nLg
265
{{191, 108}, {220, 16}}
-
_NS:9
YES
@@ -905,7 +900,6 @@ aW5nLg
265
{{191, 196}, {220, 23}}
-
_NS:9
NJKeyInputField
@@ -915,7 +909,6 @@ aW5nLg
265
{{188, 153}, {226, 26}}
-
YES
+
+ 967
+
+
+
+
+ 968
+
+
+
@@ -3148,12 +3158,14 @@ aW5nLg
com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
- 966
+ 969
@@ -3486,6 +3498,36 @@ aW5nLg
./Classes/NJOutputController.h
+
+ SUUpdater
+ NSObject
+
+ checkForUpdates:
+ id
+
+
+ checkForUpdates:
+
+ checkForUpdates:
+ id
+
+
+
+ delegate
+ id
+
+
+ delegate
+
+ delegate
+ id
+
+
+
+ IBProjectSource
+ ./Classes/SUUpdater.h
+
+
0
diff --git a/Resources/Help/Contents/Resources/English.lproj/pgs/boring.html b/Resources/Help/Contents/Resources/English.lproj/pgs/boring.html
index 45c6719..f7e20ff 100644
--- a/Resources/Help/Contents/Resources/English.lproj/pgs/boring.html
+++ b/Resources/Help/Contents/Resources/English.lproj/pgs/boring.html
@@ -65,6 +65,71 @@
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
+
+
+
+ Enjoyable uses the Sparkle updater, copyright 2006 Andy
+ Matuschak
+
+
+ Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or
+ sell copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following
+ conditions:
+
+
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ OTHER DEALINGS IN THE SOFTWARE.
+
+ License for bspatch.c and bsdiff.c, from bsdiff 4.3
+ (<http://www.daemonology.net/bsdiff/ >)
+
+ Copyright 2003-2005 Colin Percival All rights reserved
+
+
+
+ Redistribution and use in source and binary forms, with or
+ without modification, are permitted providing that the following
+ conditions are met:
+
+
+ Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+ Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials
+ provided with the distribution.
+
+
+ THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY
+ EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+ TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+ IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ THE POSSIBILITY OF SUCH DAMAGE.
+
+
The joystick icon is from the Tango icon set and is public
domain.
diff --git a/Sparkle.framework/Headers b/Sparkle.framework/Headers
new file mode 120000
index 0000000..a177d2a
--- /dev/null
+++ b/Sparkle.framework/Headers
@@ -0,0 +1 @@
+Versions/Current/Headers
\ No newline at end of file
diff --git a/Sparkle.framework/Resources b/Sparkle.framework/Resources
new file mode 120000
index 0000000..953ee36
--- /dev/null
+++ b/Sparkle.framework/Resources
@@ -0,0 +1 @@
+Versions/Current/Resources
\ No newline at end of file
diff --git a/Sparkle.framework/Sparkle b/Sparkle.framework/Sparkle
new file mode 120000
index 0000000..b2c5273
--- /dev/null
+++ b/Sparkle.framework/Sparkle
@@ -0,0 +1 @@
+Versions/Current/Sparkle
\ No newline at end of file
diff --git a/Sparkle.framework/Versions/A/Headers/SUAppcast.h b/Sparkle.framework/Versions/A/Headers/SUAppcast.h
new file mode 100644
index 0000000..5a60d2f
--- /dev/null
+++ b/Sparkle.framework/Versions/A/Headers/SUAppcast.h
@@ -0,0 +1,36 @@
+//
+// SUAppcast.h
+// Sparkle
+//
+// Created by Andy Matuschak on 3/12/06.
+// Copyright 2006 Andy Matuschak. All rights reserved.
+//
+
+#ifndef SUAPPCAST_H
+#define SUAPPCAST_H
+
+@class SUAppcastItem;
+@interface SUAppcast : NSObject
+{
+@private
+ NSArray *items;
+ NSString *userAgentString;
+ id delegate;
+ NSString *downloadFilename;
+ NSURLDownload *download;
+}
+
+- (void)fetchAppcastFromURL:(NSURL *)url;
+- (void)setDelegate:delegate;
+- (void)setUserAgentString:(NSString *)userAgentString;
+
+- (NSArray *)items;
+
+@end
+
+@interface NSObject (SUAppcastDelegate)
+- (void)appcastDidFinishLoading:(SUAppcast *)appcast;
+- (void)appcast:(SUAppcast *)appcast failedToLoadWithError:(NSError *)error;
+@end
+
+#endif
diff --git a/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h b/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h
new file mode 100644
index 0000000..d6f9c64
--- /dev/null
+++ b/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h
@@ -0,0 +1,60 @@
+//
+// SUAppcastItem.h
+// Sparkle
+//
+// Created by Andy Matuschak on 3/12/06.
+// Copyright 2006 Andy Matuschak. All rights reserved.
+//
+
+#ifndef SUAPPCASTITEM_H
+#define SUAPPCASTITEM_H
+
+@interface SUAppcastItem : NSObject
+{
+@private
+ NSString *title;
+ NSDate *date;
+ NSString *itemDescription;
+
+ NSURL *releaseNotesURL;
+
+ NSString *DSASignature;
+ NSString *minimumSystemVersion;
+ NSString *maximumSystemVersion;
+
+ NSURL *fileURL;
+ NSString *versionString;
+ NSString *displayVersionString;
+
+ NSDictionary *deltaUpdates;
+
+ NSDictionary *propertiesDictionary;
+
+ NSURL *infoURL; // UK 2007-08-31
+}
+
+// Initializes with data from a dictionary provided by the RSS class.
+- initWithDictionary:(NSDictionary *)dict;
+- initWithDictionary:(NSDictionary *)dict failureReason:(NSString**)error;
+
+- (NSString *)title;
+- (NSString *)versionString;
+- (NSString *)displayVersionString;
+- (NSDate *)date;
+- (NSString *)itemDescription;
+- (NSURL *)releaseNotesURL;
+- (NSURL *)fileURL;
+- (NSString *)DSASignature;
+- (NSString *)minimumSystemVersion;
+- (NSString *)maximumSystemVersion;
+- (NSDictionary *)deltaUpdates;
+- (BOOL)isDeltaUpdate;
+
+// Returns the dictionary provided in initWithDictionary; this might be useful later for extensions.
+- (NSDictionary *)propertiesDictionary;
+
+- (NSURL *)infoURL; // UK 2007-08-31
+
+@end
+
+#endif
diff --git a/Sparkle.framework/Versions/A/Headers/SUUpdater.h b/Sparkle.framework/Versions/A/Headers/SUUpdater.h
new file mode 100644
index 0000000..cd79566
--- /dev/null
+++ b/Sparkle.framework/Versions/A/Headers/SUUpdater.h
@@ -0,0 +1,161 @@
+//
+// SUUpdater.h
+// Sparkle
+//
+// Created by Andy Matuschak on 1/4/06.
+// Copyright 2006 Andy Matuschak. All rights reserved.
+//
+
+#ifndef SUUPDATER_H
+#define SUUPDATER_H
+
+#import "SUVersionComparisonProtocol.h"
+#import "SUVersionDisplayProtocol.h"
+
+@class SUUpdateDriver, SUAppcastItem, SUHost, SUAppcast;
+
+@interface SUUpdater : NSObject
+{
+@private
+ NSTimer *checkTimer;
+ SUUpdateDriver *driver;
+
+ NSString *customUserAgentString;
+ SUHost *host;
+ IBOutlet id delegate;
+}
+
++ (SUUpdater *)sharedUpdater;
++ (SUUpdater *)updaterForBundle:(NSBundle *)bundle;
+- (id)initForBundle:(NSBundle *)bundle;
+
+- (NSBundle *)hostBundle;
+
+- (void)setDelegate:(id)delegate;
+- (id)delegate;
+
+- (void)setAutomaticallyChecksForUpdates:(BOOL)automaticallyChecks;
+- (BOOL)automaticallyChecksForUpdates;
+
+- (void)setUpdateCheckInterval:(NSTimeInterval)interval;
+- (NSTimeInterval)updateCheckInterval;
+
+- (void)setFeedURL:(NSURL *)feedURL;
+- (NSURL *)feedURL; // *** MUST BE CALLED ON MAIN THREAD ***
+
+- (void)setUserAgentString:(NSString *)userAgent;
+- (NSString *)userAgentString;
+
+- (void)setSendsSystemProfile:(BOOL)sendsSystemProfile;
+- (BOOL)sendsSystemProfile;
+
+- (void)setAutomaticallyDownloadsUpdates:(BOOL)automaticallyDownloadsUpdates;
+- (BOOL)automaticallyDownloadsUpdates;
+
+// This IBAction is meant for a main menu item. Hook up any menu item to this action,
+// and Sparkle will check for updates and report back its findings verbosely.
+- (IBAction)checkForUpdates:(id)sender;
+
+// This kicks off an update meant to be programmatically initiated. That is, it will display no UI unless it actually finds an update,
+// in which case it proceeds as usual. If the fully automated updating is turned on, however, this will invoke that behavior, and if an
+// update is found, it will be downloaded and prepped for installation.
+- (void)checkForUpdatesInBackground;
+
+// Date of last update check. Returns nil if no check has been performed.
+- (NSDate*)lastUpdateCheckDate;
+
+// This begins a "probing" check for updates which will not actually offer to update to that version. The delegate methods, though,
+// (up to updater:didFindValidUpdate: and updaterDidNotFindUpdate:), are called, so you can use that information in your UI.
+- (void)checkForUpdateInformation;
+
+// Call this to appropriately schedule or cancel the update checking timer according to the preferences for time interval and automatic checks. This call does not change the date of the next check, but only the internal NSTimer.
+- (void)resetUpdateCycle;
+
+- (BOOL)updateInProgress;
+
+@end
+
+
+// -----------------------------------------------------------------------------
+// SUUpdater Delegate:
+// -----------------------------------------------------------------------------
+
+@interface NSObject (SUUpdaterDelegateInformalProtocol)
+
+// Use this to keep Sparkle from popping up e.g. while your setup assistant is showing:
+- (BOOL)updaterMayCheckForUpdates:(SUUpdater *)bundle;
+
+// This method allows you to add extra parameters to the appcast URL, potentially based on whether or not Sparkle will also be sending along the system profile. This method should return an array of dictionaries with keys: "key", "value", "displayKey", "displayValue", the latter two being specifically for display to the user.
+- (NSArray *)feedParametersForUpdater:(SUUpdater *)updater sendingSystemProfile:(BOOL)sendingProfile;
+
+// Override this to dynamically specify the entire URL.
+- (NSString*)feedURLStringForUpdater:(SUUpdater*)updater;
+
+// Use this to override the default behavior for Sparkle prompting the user about automatic update checks.
+- (BOOL)updaterShouldPromptForPermissionToCheckForUpdates:(SUUpdater *)bundle;
+
+// Implement this if you want to do some special handling with the appcast once it finishes loading.
+- (void)updater:(SUUpdater *)updater didFinishLoadingAppcast:(SUAppcast *)appcast;
+
+// If you're using special logic or extensions in your appcast, implement this to use your own logic for finding
+// a valid update, if any, in the given appcast.
+- (SUAppcastItem *)bestValidUpdateInAppcast:(SUAppcast *)appcast forUpdater:(SUUpdater *)bundle;
+
+// Sent when a valid update is found by the update driver.
+- (void)updater:(SUUpdater *)updater didFindValidUpdate:(SUAppcastItem *)update;
+
+// Sent when a valid update is not found.
+- (void)updaterDidNotFindUpdate:(SUUpdater *)update;
+
+// Sent immediately before installing the specified update.
+- (void)updater:(SUUpdater *)updater willInstallUpdate:(SUAppcastItem *)update;
+
+// Return YES to delay the relaunch until you do some processing; invoke the given NSInvocation to continue.
+// This is not called if the user didn't relaunch on the previous update, in that case it will immediately
+// restart.
+- (BOOL)updater:(SUUpdater *)updater shouldPostponeRelaunchForUpdate:(SUAppcastItem *)update untilInvoking:(NSInvocation *)invocation;
+
+// Some apps *can not* be relaunched in certain circumstances. They can use this method
+// to prevent a relaunch "hard":
+- (BOOL)updaterShouldRelaunchApplication:(SUUpdater *)updater;
+
+// Called immediately before relaunching.
+- (void)updaterWillRelaunchApplication:(SUUpdater *)updater;
+
+// This method allows you to provide a custom version comparator.
+// If you don't implement this method or return nil, the standard version comparator will be used.
+- (id )versionComparatorForUpdater:(SUUpdater *)updater;
+
+// This method allows you to provide a custom version comparator.
+// If you don't implement this method or return nil, the standard version displayer will be used.
+- (id )versionDisplayerForUpdater:(SUUpdater *)updater;
+
+// Returns the path which is used to relaunch the client after the update is installed. By default, the path of the host bundle.
+- (NSString *)pathToRelaunchForUpdater:(SUUpdater *)updater;
+
+// Called before and after, respectively, an updater shows a modal alert window, to give the host
+// the opportunity to hide attached windows etc. that may get in the way:
+-(void) updaterWillShowModalAlert:(SUUpdater *)updater;
+-(void) updaterDidShowModalAlert:(SUUpdater *)updater;
+
+@end
+
+
+// -----------------------------------------------------------------------------
+// Constants:
+// -----------------------------------------------------------------------------
+
+// Define some minimum intervals to avoid DOS-like checking attacks. These are in seconds.
+#if defined(DEBUG) && DEBUG && 0
+#define SU_MIN_CHECK_INTERVAL 60
+#else
+#define SU_MIN_CHECK_INTERVAL 60*60
+#endif
+
+#if defined(DEBUG) && DEBUG && 0
+#define SU_DEFAULT_CHECK_INTERVAL 60
+#else
+#define SU_DEFAULT_CHECK_INTERVAL 60*60*24
+#endif
+
+#endif
diff --git a/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h b/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h
new file mode 100644
index 0000000..6c65ea4
--- /dev/null
+++ b/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h
@@ -0,0 +1,29 @@
+//
+// SUVersionComparisonProtocol.h
+// Sparkle
+//
+// Created by Andy Matuschak on 12/21/07.
+// Copyright 2007 Andy Matuschak. All rights reserved.
+//
+
+#ifndef SUVERSIONCOMPARISONPROTOCOL_H
+#define SUVERSIONCOMPARISONPROTOCOL_H
+
+#import
+
+/*!
+ @protocol
+ @abstract Implement this protocol to provide version comparison facilities for Sparkle.
+*/
+@protocol SUVersionComparison
+
+/*!
+ @method
+ @abstract An abstract method to compare two version strings.
+ @discussion Should return NSOrderedAscending if b > a, NSOrderedDescending if b < a, and NSOrderedSame if they are equivalent.
+*/
+- (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB; // *** MAY BE CALLED ON NON-MAIN THREAD!
+
+@end
+
+#endif
diff --git a/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h b/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h
new file mode 100644
index 0000000..368b9c9
--- /dev/null
+++ b/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h
@@ -0,0 +1,27 @@
+//
+// SUVersionDisplayProtocol.h
+// EyeTV
+//
+// Created by Uli Kusterer on 08.12.09.
+// Copyright 2009 Elgato Systems GmbH. All rights reserved.
+//
+
+#import
+
+
+/*!
+ @protocol
+ @abstract Implement this protocol to apply special formatting to the two
+ version numbers.
+*/
+@protocol SUVersionDisplay
+
+/*!
+ @method
+ @abstract An abstract method to format two version strings.
+ @discussion You get both so you can display important distinguishing
+ information, but leave out unnecessary/confusing parts.
+*/
+-(void) formatVersion: (NSString**)inOutVersionA andVersion: (NSString**)inOutVersionB;
+
+@end
diff --git a/Sparkle.framework/Versions/A/Headers/Sparkle.h b/Sparkle.framework/Versions/A/Headers/Sparkle.h
new file mode 100644
index 0000000..08dd577
--- /dev/null
+++ b/Sparkle.framework/Versions/A/Headers/Sparkle.h
@@ -0,0 +1,21 @@
+//
+// Sparkle.h
+// Sparkle
+//
+// Created by Andy Matuschak on 3/16/06. (Modified by CDHW on 23/12/07)
+// Copyright 2006 Andy Matuschak. All rights reserved.
+//
+
+#ifndef SPARKLE_H
+#define SPARKLE_H
+
+// This list should include the shared headers. It doesn't matter if some of them aren't shared (unless
+// there are name-space collisions) so we can list all of them to start with:
+
+#import
+
+#import
+#import
+#import
+
+#endif
diff --git a/Sparkle.framework/Versions/A/Resources/Info.plist b/Sparkle.framework/Versions/A/Resources/Info.plist
new file mode 100644
index 0000000..8527e40
--- /dev/null
+++ b/Sparkle.framework/Versions/A/Resources/Info.plist
@@ -0,0 +1,40 @@
+
+
+
+
+ BuildMachineOSBuild
+ 12C2034
+ CFBundleDevelopmentRegion
+ en
+ CFBundleExecutable
+ Sparkle
+ CFBundleIdentifier
+ org.andymatuschak.Sparkle
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ Sparkle
+ CFBundlePackageType
+ FMWK
+ CFBundleShortVersionString
+ 1.5 Beta (git)
+ CFBundleSignature
+ ????
+ CFBundleVersion
+ 0ed83cf
+ DTCompiler
+ com.apple.compilers.llvm.clang.1_0
+ DTPlatformBuild
+ 4H127
+ DTPlatformVersion
+ GM
+ DTSDKBuild
+ 11E52
+ DTSDKName
+ macosx10.7
+ DTXcode
+ 0460
+ DTXcodeBuild
+ 4H127
+
+
diff --git a/Sparkle.framework/Versions/A/Resources/License.txt b/Sparkle.framework/Versions/A/Resources/License.txt
new file mode 100644
index 0000000..08364c6
--- /dev/null
+++ b/Sparkle.framework/Versions/A/Resources/License.txt
@@ -0,0 +1,38 @@
+Copyright (c) 2006 Andy Matuschak
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+=================
+EXTERNAL LICENSES
+=================
+
+License for bspatch.c and bsdiff.c, from bsdiff 4.3 ( :
+/*-
+ * Copyright 2003-2005 Colin Percival
+ * All rights reserved
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted providing that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
diff --git a/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist b/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist
new file mode 100644
index 0000000..63644f0
--- /dev/null
+++ b/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist
@@ -0,0 +1,182 @@
+
+
+
+
+ ADP2,1
+ Developer Transition Kit
+ iMac1,1
+ iMac G3 (Rev A-D)
+ iMac4,1
+ iMac (Core Duo)
+ iMac4,2
+ iMac for Education (17-inch, Core Duo)
+ iMac5,1
+ iMac (Core 2 Duo, 17 or 20 inch, SuperDrive)
+ iMac5,2
+ iMac (Core 2 Duo, 17 inch, Combo Drive)
+ iMac6,1
+ iMac (Core 2 Duo, 24 inch, SuperDrive)
+ iMac8,1
+ iMac (April 2008)
+ MacBook1,1
+ MacBook (Core Duo)
+ MacBook2,1
+ MacBook (Core 2 Duo)
+ MacBook4,1
+ MacBook (Core 2 Duo Feb 2008)
+ MacBookAir1,1
+ MacBook Air (January 2008)
+ MacBookAir2,1
+ MacBook Air (June 2009)
+ MacBookAir3,1
+ MacBook Air (October 2010)
+ MacBookPro1,1
+ MacBook Pro Core Duo (15-inch)
+ MacBookPro1,2
+ MacBook Pro Core Duo (17-inch)
+ MacBookPro2,1
+ MacBook Pro Core 2 Duo (17-inch)
+ MacBookPro2,2
+ MacBook Pro Core 2 Duo (15-inch)
+ MacBookPro3,1
+ MacBook Pro Core 2 Duo (15-inch LED, Core 2 Duo)
+ MacBookPro3,2
+ MacBook Pro Core 2 Duo (17-inch HD, Core 2 Duo)
+ MacBookPro4,1
+ MacBook Pro (Core 2 Duo Feb 2008)
+ Macmini1,1
+ Mac Mini (Core Solo/Duo)
+ MacPro1,1
+ Mac Pro (four-core)
+ MacPro2,1
+ Mac Pro (eight-core)
+ MacPro3,1
+ Mac Pro (January 2008 4- or 8- core "Harpertown")
+ MacPro4,1
+ Mac Pro (March 2009)
+ MacPro5,1
+ Mac Pro (August 2010)
+ PowerBook1,1
+ PowerBook G3
+ PowerBook2,1
+ iBook G3
+ PowerBook2,2
+ iBook G3 (FireWire)
+ PowerBook2,3
+ iBook G3
+ PowerBook2,4
+ iBook G3
+ PowerBook3,1
+ PowerBook G3 (FireWire)
+ PowerBook3,2
+ PowerBook G4
+ PowerBook3,3
+ PowerBook G4 (Gigabit Ethernet)
+ PowerBook3,4
+ PowerBook G4 (DVI)
+ PowerBook3,5
+ PowerBook G4 (1GHz / 867MHz)
+ PowerBook4,1
+ iBook G3 (Dual USB, Late 2001)
+ PowerBook4,2
+ iBook G3 (16MB VRAM)
+ PowerBook4,3
+ iBook G3 Opaque 16MB VRAM, 32MB VRAM, Early 2003)
+ PowerBook5,1
+ PowerBook G4 (17 inch)
+ PowerBook5,2
+ PowerBook G4 (15 inch FW 800)
+ PowerBook5,3
+ PowerBook G4 (17-inch 1.33GHz)
+ PowerBook5,4
+ PowerBook G4 (15 inch 1.5/1.33GHz)
+ PowerBook5,5
+ PowerBook G4 (17-inch 1.5GHz)
+ PowerBook5,6
+ PowerBook G4 (15 inch 1.67GHz/1.5GHz)
+ PowerBook5,7
+ PowerBook G4 (17-inch 1.67GHz)
+ PowerBook5,8
+ PowerBook G4 (Double layer SD, 15 inch)
+ PowerBook5,9
+ PowerBook G4 (Double layer SD, 17 inch)
+ PowerBook6,1
+ PowerBook G4 (12 inch)
+ PowerBook6,2
+ PowerBook G4 (12 inch, DVI)
+ PowerBook6,3
+ iBook G4
+ PowerBook6,4
+ PowerBook G4 (12 inch 1.33GHz)
+ PowerBook6,5
+ iBook G4 (Early-Late 2004)
+ PowerBook6,7
+ iBook G4 (Mid 2005)
+ PowerBook6,8
+ PowerBook G4 (12 inch 1.5GHz)
+ PowerMac1,1
+ Power Macintosh G3 (Blue & White)
+ PowerMac1,2
+ Power Macintosh G4 (PCI Graphics)
+ PowerMac10,1
+ Mac Mini G4
+ PowerMac10,2
+ Mac Mini (Late 2005)
+ PowerMac11,2
+ Power Macintosh G5 (Late 2005)
+ PowerMac12,1
+ iMac G5 (iSight)
+ PowerMac2,1
+ iMac G3 (Slot-loading CD-ROM)
+ PowerMac2,2
+ iMac G3 (Summer 2000)
+ PowerMac3,1
+ Power Macintosh G4 (AGP Graphics)
+ PowerMac3,2
+ Power Macintosh G4 (AGP Graphics)
+ PowerMac3,3
+ Power Macintosh G4 (Gigabit Ethernet)
+ PowerMac3,4
+ Power Macintosh G4 (Digital Audio)
+ PowerMac3,5
+ Power Macintosh G4 (Quick Silver)
+ PowerMac3,6
+ Power Macintosh G4 (Mirrored Drive Door)
+ PowerMac4,1
+ iMac G3 (Early/Summer 2001)
+ PowerMac4,2
+ iMac G4 (Flat Panel)
+ PowerMac4,4
+ eMac
+ PowerMac4,5
+ iMac G4 (17-inch Flat Panel)
+ PowerMac5,1
+ Power Macintosh G4 Cube
+ PowerMac6,1
+ iMac G4 (USB 2.0)
+ PowerMac6,3
+ iMac G4 (20-inch Flat Panel)
+ PowerMac6,4
+ eMac (USB 2.0, 2005)
+ PowerMac7,2
+ Power Macintosh G5
+ PowerMac7,3
+ Power Macintosh G5
+ PowerMac8,1
+ iMac G5
+ PowerMac8,2
+ iMac G5 (Ambient Light Sensor)
+ PowerMac9,1
+ Power Macintosh G5 (Late 2005)
+ RackMac1,1
+ Xserve G4
+ RackMac1,2
+ Xserve G4 (slot-loading, cluster node)
+ RackMac3,1
+ Xserve G5
+ Xserve1,1
+ Xserve (Intel Xeon)
+ Xserve2,1
+ Xserve (January 2008 quad-core)
+
+
diff --git a/Sparkle.framework/Versions/A/Resources/SUStatus.nib b/Sparkle.framework/Versions/A/Resources/SUStatus.nib
new file mode 100644
index 0000000000000000000000000000000000000000..5ddc9d216c1318230779b2c21266862808e3cb74
GIT binary patch
literal 6507
zcmaJ_34Bvk)<5SaFUiaL@?O{!FhUW^Qrc1|JKdoyrI5BjTL@|UD1kI7Nea|bxPYLd
zC@!Cl;sPx&iVNcQIg9#@%OD@ar)-L-s3@O0j*iMWjyjBU-g_xl(0Tkq-@EsobIFb
zQ*j#3!g8#{DqMhzFoa=ThAS|RD{&RJ;?>xOYj7QMya8{-t#}jOhWFsTcpvV@J@{+f
zi~I3$d;*`u-{J4^S$qx;;463#U&AAK65qsA_&%P&5AZAe8vl;}U{*GOO=6ST6qd*G
zSph3#MXZ>Wu&HbsD`nH!3^tR^Vr6VLD`#`qTozyztdh-VHI-@6mPq6+5Wx-(aDofm
z-~kD|AcF!v=m9;U7xacca2fsjLOb
zU78<-VYJV17(o(cq=37FTMULHA(JdPt0fsCwF7Fh6GlQ7q*s;&=)<5K1yde^92gB_
zAQ#5MI2aETU?NO{$=t?!^L~5|ui^`Nh^u@lU&fnw>2b)10w|m-!IbeKVOGhr5#!E7jpIWQLjP(lByU>+f$
zP>n>0t|U(S2c`bxpGbsUH8a*2t`9|KhFW7S$)a%FK!=WpGIe!wu9|3$MH|#O**ehD
ztj1S{)m0?b%92Q^F|nX5P#o0^(7>JCVdFixo!h-=5>JpI3!s_=DuWuRg@v#Pf@H=(
zOP$6bLELmf0^zGw4m^!d=QF$rL8)h3TXt^taDP^I`*43-R#wh%|ETQt_IIET>Y)Kt
zSOSf(6vD8KcrS+tG(i+%&sz_B*x{DQAi%i%YizjvSc1c#GMnbIw#BQQwOMPTB04P7uvw1@va4(l-8;x)`
zdECW)+%3H#VUumS7Ma4jt^A>}(@Go+UvC8k^82Dp)g&qyTW;b9e3BMxw4U*k(C)@>h
z!*)m~Il8Q?WgT@DIrIWZYePCOgUDcWAKV|5e58N4ZgxvDq9%!2OM$U?C)@`+Ae}5v
za~DRthhQh{f~gc^eRyBq>kYERuPMqNNX6KLuooVJhxG{CM^ZJ1byJhSXN6YlIh0@S
z&9n2%2Ieg=tgZ)#V1PU;Gk3T@CszY`cJAom{_M>5c0=ID;Rzjy&c!obqjHl+YU@
zd3V8+h6#Rtx~4frP!NiDSK=A?jjlw0Ue0^HD|z7e@GLwB&%^(~AK(Rek<@w#UWPxy
z0eA%t!v9jd{s|6~TCc)9I08rE7#xQa@H)H!C&^nzhM!9o3`+gV0+k6hu7}o=P`z53
zRGUg0C`7_b!fKr2z*t-nCcBe`$SxWxFEG)(rwxar+OX~=gP=4)9wm*n%tEUJ^>I~=
z8e8`4Vwwu73&d2v4B~=N{c=JnF`ie^73Ic^UMmPL+P?aGQ1W(B1(K~1byg^`oL@ot
z$j{5jS+hhwlh5V@B_=norqH{R50Ee@^`;b+nMp3o)^k*j_D=3>Z?B=u?+-`)g)uFf
zjJSD+D}-WW|E{t3xKg2~hPLdiQ3kD1Fg}1OyWvAP3!Rk4KIVh?Xo8-|i+Sm(pCtHC
z^%VaX_zXU$B>#mD!E^98^4C04uP7dBtY~dkwL)6l5Y`J6&)_3$JV!$yzsieFQ8ae^
z2aMPQ-@3Z}|ONnqn6Wk$h$OzTKcMg@J?
zgAxkCSFhT7W0J|Uc@|OW#X*OhW&|y!sgjr0$D(@NV;{UsFD6Dm(#4?z`#`#}pfC0#
z@9JE%WZ8**u|K4D&zb1QE4!9x0NaiJuC#echkyey4d&uiI(P^=JeQBL@gfZ&qF#ox
zGRF+}=Z-cq6eX)HLbztPFd=(64#yF?-C}SSM`9*sVK$D!99=yv0vqG8mS{s^EE3Z?
zhYIQ>^mjsZAs@#l@H{?Nmhym-;Si%?^J{DTLlP81b*=tLtUkkUlp8Ig>M5eqFH||q
z#j!XJHvU-7Y`yt-F45-Q3)+Z+Sft?u`DGGL#wnPG`B;F3ScJtSkuHtq9?CEJd!U&T
zm{z(&$xtNLs7;a2456p+Ns@(6+pKq5|sMt
zEk^+@r9wr8%;-m|j59J7E^0T+L&>G|mRdtrs+1UYB6E2K4-n3&6Kzq)Q-o+|9nI;L
z`bhPU1BT6R#%)1~k}-8S7jM^zx8SXi{!7yrwM8cljqvuL>V$WaR(FwB+ez5j&HBMo
z6P7O^Vds&s^Qj468g8Jbpu4nH#?UdmUpr#q4(z~P{SiDJ%r$VzdQ5KFET0VdeQWzJ7_2w@WZ|%SbApK$=6sLUfDDK0@sH#?y
zgp2rM9wZ5qT8A>;U#A}i^me6EAFAm#axuTo6u)QiH~3qs(;B}z-oWdr$~C1r!0~>1
z>uTh5J?3{!5rQtBOWC-~!uULN?eQYMgj-;Is_|1-hGY5(*T79`?qb?e`nCCMoo~Q9$@=|}DXOzdfd&vkf-Agsy-t~qCKg2H|#gnAcl4lG=o&k)mtkkfpscR=r;;@4hHZzH&YSlR-g@pwcs}$TB67Yj`_f%hz$v*Ygd0Bfo}k;+y%k{5pO;-@Sh8BS
zkkU_SfpIBQL>0M%)oQ7VntaNQYD0eN^6&^-%t8xG3sSc;4YZOYT_N^?0kpwrx^S6-
zOE5wiY6m__7juX4E&PVr$sT!h(KeT^)T-!8t(rDmM4aka16#tDvK6eItz+xi9qfL#
zmp#E=U`nF|JIg*|U$FBgv&n8!OhZk>O&O+4Q?@C`G{!X6G~P7PG})AADli31
zwWejJxG8B`XbDNC
zrdbDD^Q@)TpmnKrt#ylayY*h{{nnk|fizb66cc9lafwIr=)%9Ah2%
zjta*DN1Y?;XmPA@Y;xS}MU1hFvSG}v*m2kDV*1ER2?sDyMJ>q)W^@8iL>vPu^uCH9@TwlAs
zaeeFh&aJp}++*Bh-Q(R8-ILvU?gj2T_X_uFH+SFQzTLgu{iOSO_Zj!6?tghq9=m6-
zr^Hk4srJ-*7I_wX>O2jeC7z|8HJ%Ngt)4qPk9wZ+9QM5JIWJiyQF2Hw$s>6sMd~39
zm9i*)ODI}rP@I-abEV}{LRuqTFWn?PBt0VSllDtbNKZ-sE&WM4DxH?Tm(EK+c+qR}
z3SO%>%{#)I=M8yRd0V}0-gfUg?|Sb>?dw-w<
zlSvk2t1QX`812hE?4>~S13c28fBppR6Tl=aF+Ws`EPa=mhcvQ@c5Ij9^`4lA!JN0ejA
z3FQstP30}+9pzo+edPn?tn!iaiSnuPnetcVOXZyMwepSft@6EcUira?K9f)IS$(3<
z;dA*sKCe&l_3-ub_3>Tq>*u?|ccpKjZ;)@WFWooHm*X4l%k|~?@_mKAnZ6p|Vqe_1
X%D2h5Fk;%-k{(uP{O$VRckRCcKW2I3
literal 0
HcmV?d00001
diff --git a/Sparkle.framework/Versions/A/Resources/ar.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/ar.lproj/SUAutomaticUpdateAlert.nib
new file mode 100644
index 0000000000000000000000000000000000000000..5e5199c7ceaccfef836b0c22525c565ed8b89356
GIT binary patch
literal 7060
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
literal 0
HcmV?d00001
diff --git a/Sparkle.framework/Versions/A/Resources/ar.lproj/SUPasswordPrompt.nib b/Sparkle.framework/Versions/A/Resources/ar.lproj/SUPasswordPrompt.nib
new file mode 100644
index 0000000000000000000000000000000000000000..1c35eef14bc2b295c7684848a50c0af68864e97a
GIT binary patch
literal 5930
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
literal 0
HcmV?d00001
diff --git a/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdateAlert.nib
new file mode 100644
index 0000000000000000000000000000000000000000..f80f6c760dd7ff816d5956cbac5be13679e2864f
GIT binary patch
literal 10366
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
Pp9vp&TKOOQE6n{r@upiv
literal 0
HcmV?d00001
diff --git a/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdatePermissionPrompt.nib
new file mode 100644
index 0000000000000000000000000000000000000000..e11c1846200343f95268d121fd93cc3200ebc963
GIT binary patch
literal 12678
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
literal 0
HcmV?d00001
diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib
new file mode 100644
index 0000000000000000000000000000000000000000..6960c92a253a3b1e0d5bae56b52cd7a94e441c4e
GIT binary patch
literal 6981
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