Skip to content

Commit

Permalink
#1 added automatic update with Sparkle
Browse files Browse the repository at this point in the history
  • Loading branch information
Andreas Bentele committed Feb 18, 2017
1 parent 95e6bb2 commit 02c3c78
Show file tree
Hide file tree
Showing 183 changed files with 1,373 additions and 12 deletions.
9 changes: 8 additions & 1 deletion English.lproj/FRAMainMenu.xib
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16C67" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16D32" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11762"/>
Expand All @@ -19,6 +19,12 @@
<action selector="orderFrontStandardAboutPanel:" target="-2" id="142"/>
</connections>
</menuItem>
<menuItem title="Check for Updates..." id="vYb-oL-J9P">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="checkForUpdates:" target="h5v-by-cne" id="nWn-tV-TTt"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="202">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
Expand Down Expand Up @@ -908,5 +914,6 @@
</customObject>
<customObject id="388" userLabel="FRAViewMenuController" customClass="FRAViewMenuController"/>
<customObject id="389" userLabel="FRAProjectsController" customClass="FRAProjectsController"/>
<customObject id="h5v-by-cne" customClass="SUUpdater"/>
</objects>
</document>
26 changes: 23 additions & 3 deletions Erbele.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,9 @@
8D15AC310486D014006FF6A4 /* FRAProject.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A37F4ACFDCFA73011CA2CEA /* FRAProject.m */; settings = {ATTRIBUTES = (); }; };
8D15AC320486D014006FF6A4 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A37F4B0FDCFA73011CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
8D15AC340486D014006FF6A4 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */; };
E117176B1E58DF11004E79FA /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E117176A1E58DF11004E79FA /* Sparkle.framework */; };
E117176F1E58E053004E79FA /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = E117176A1E58DF11004E79FA /* Sparkle.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
E18170B71E58FD9A003D9893 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = E18170B61E58FD9A003D9893 /* dsa_pub.pem */; };
E1E8E9D11DC8D6BC0072BEF0 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = E1E8E9D01DC8D6BC0072BEF0 /* Images.xcassets */; };
/* End PBXBuildFile section */

Expand All @@ -168,10 +171,20 @@
/* End PBXContainerItemProxy section */

/* Begin PBXCopyFilesBuildPhase section */
7F1DE28F0BD198FA00AD5707 /* CopyFiles */ = {
E117176C1E58DF56004E79FA /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = ../Library/Spotlight;
dstPath = "";
dstSubfolderSpec = 10;
files = (
E117176F1E58E053004E79FA /* Sparkle.framework in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
E117176E1E58E04A004E79FA /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = "";
dstSubfolderSpec = 7;
files = (
);
Expand Down Expand Up @@ -499,7 +512,9 @@
7FD53F120D91A8F30071054F /* Erbele-Manual.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; path = "Erbele-Manual.pdf"; sourceTree = "<group>"; };
8D15AC360486D014006FF6A4 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
8D15AC370486D014006FF6A4 /* Erbele.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Erbele.app; sourceTree = BUILT_PRODUCTS_DIR; };
E117176A1E58DF11004E79FA /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = "<group>"; };
E17DE7751E1026FD00535C73 /* ru */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = ru; path = Russian.lproj/Localizable3.strings; sourceTree = "<group>"; };
E18170B61E58FD9A003D9893 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_pub.pem; sourceTree = "<group>"; };
E18EFF321DB378C000DA64C3 /* PrefixHeader.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrefixHeader.pch; sourceTree = "<group>"; };
E19D40021E10263E00CCA45E /* Russian */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Russian; path = Russian.lproj/FRAAdvancedFind.xib; sourceTree = "<group>"; };
E19D40031E10263E00CCA45E /* Russian */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Russian; path = Russian.lproj/FRACommands.xib; sourceTree = "<group>"; };
Expand Down Expand Up @@ -539,6 +554,7 @@
7F5C26B10B73C03A00D2EDDC /* Carbon.framework in Frameworks */,
7F5C26B30B73C04800D2EDDC /* ApplicationServices.framework in Frameworks */,
7F5C26B50B73C05100D2EDDC /* WebKit.framework in Frameworks */,
E117176B1E58DF11004E79FA /* Sparkle.framework in Frameworks */,
7F5C26B90B73C06D00D2EDDC /* SystemConfiguration.framework in Frameworks */,
7F6C9C680B75F23000531EF9 /* libicucore.dylib in Frameworks */,
7F51225C0BA72E7E00183863 /* QuartzCore.framework in Frameworks */,
Expand Down Expand Up @@ -645,6 +661,7 @@
7FD53F120D91A8F30071054F /* Erbele-Manual.pdf */,
8D15AC360486D014006FF6A4 /* Info.plist */,
089C1660FE840EACC02AAC07 /* InfoPlist.strings */,
E18170B61E58FD9A003D9893 /* dsa_pub.pem */,
1FB593B9113EE34600ECB6C0 /* Localizable.strings */,
1FB593BC113EE35E00ECB6C0 /* Localizable3.strings */,
);
Expand All @@ -654,6 +671,7 @@
2A37F4C3FDCFA73011CA2CEA /* Frameworks */ = {
isa = PBXGroup;
children = (
E117176A1E58DF11004E79FA /* Sparkle.framework */,
1058C7A6FEA54F5311CA2CBB /* Linked Frameworks */,
1058C7A8FEA54F5311CA2CBB /* Other Frameworks */,
1FACC99E113FAE1200515523 /* QuartzCore.framework */,
Expand Down Expand Up @@ -1077,7 +1095,8 @@
8D15AC2B0486D014006FF6A4 /* Resources */,
8D15AC330486D014006FF6A4 /* Frameworks */,
8D15AC300486D014006FF6A4 /* Sources */,
7F1DE28F0BD198FA00AD5707 /* CopyFiles */,
E117176C1E58DF56004E79FA /* CopyFiles */,
E117176E1E58E04A004E79FA /* CopyFiles */,
);
buildRules = (
);
Expand Down Expand Up @@ -1161,6 +1180,7 @@
1FF6CE321155470C002681B2 /* FRAGoToLine.xib in Resources */,
1FF6CE341155470D002681B2 /* FRAInfo.xib in Resources */,
1FF6CE361155470D002681B2 /* FRAMainMenu.xib in Resources */,
E18170B71E58FD9A003D9893 /* dsa_pub.pem in Resources */,
1FF6CE381155470D002681B2 /* FRANewProject.xib in Resources */,
1FF6CE3A1155470D002681B2 /* FRAOpenPanelAccessoryView.xib in Resources */,
1FF6CE3C1155470D002681B2 /* FRAPreferencesAdvanced.xib in Resources */,
Expand Down
9 changes: 8 additions & 1 deletion French.lproj/FRAMainMenu.xib
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16C67" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16D32" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11762"/>
Expand All @@ -19,6 +19,12 @@
<action selector="orderFrontStandardAboutPanel:" target="-2" id="142"/>
</connections>
</menuItem>
<menuItem title="Rechercher les mises à jour..." id="AGo-pL-aVA">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="checkForUpdates:" target="ESR-Pi-yEO" id="lGY-qd-gaN"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="202">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
Expand Down Expand Up @@ -908,5 +914,6 @@
</customObject>
<customObject id="388" userLabel="FRAViewMenuController" customClass="FRAViewMenuController"/>
<customObject id="389" userLabel="FRAProjectsController" customClass="FRAProjectsController"/>
<customObject id="ESR-Pi-yEO" customClass="SUUpdater"/>
</objects>
</document>
9 changes: 8 additions & 1 deletion German.lproj/FRAMainMenu.xib
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16C67" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16D32" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11762"/>
Expand All @@ -19,6 +19,12 @@
<action selector="orderFrontStandardAboutPanel:" target="-2" id="142"/>
</connections>
</menuItem>
<menuItem title="Nach Updates suchen..." id="v98-ip-qqt">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="checkForUpdates:" target="TWA-Ff-h0F" id="xQQ-M1-Ite"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="202">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
Expand Down Expand Up @@ -908,5 +914,6 @@
</customObject>
<customObject id="388" userLabel="FRAViewMenuController" customClass="FRAViewMenuController"/>
<customObject id="389" userLabel="FRAProjectsController" customClass="FRAProjectsController"/>
<customObject id="TWA-Ff-h0F" customClass="SUUpdater"/>
</objects>
</document>
8 changes: 6 additions & 2 deletions Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>SUFeedURL</key>
<string>https://github.com/abentele/Erbele/blob/master/appcast.xml</string>
<key>SUPublicDSAKeyFile</key>
<string>dsa_pub.pem</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleDocumentTypes</key>
Expand Down Expand Up @@ -138,8 +142,8 @@
<string>Erbele</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>3.8</string>
<key>CFBundleVersion</key>
<string>3.8.1</string>
<key>CFBundleSignature</key>
<string>FRAI</string>
<key>ExcludeSyncKeys</key>
Expand Down
Binary file modified InfoPlist.strings
Binary file not shown.
9 changes: 8 additions & 1 deletion Italian.lproj/FRAMainMenu.xib
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16C67" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16D32" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11762"/>
Expand All @@ -19,6 +19,12 @@
<action selector="orderFrontStandardAboutPanel:" target="-2" id="142"/>
</connections>
</menuItem>
<menuItem title="Cerca aggiornamenti..." id="oVj-uH-7ys">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="checkForUpdates:" target="Dwd-gA-ZKv" id="f52-MN-xYU"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="202">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
Expand Down Expand Up @@ -908,5 +914,6 @@
</customObject>
<customObject id="388" userLabel="FRAViewMenuController" customClass="FRAViewMenuController"/>
<customObject id="389" userLabel="FRAProjectsController" customClass="FRAProjectsController"/>
<customObject id="Dwd-gA-ZKv" customClass="SUUpdater"/>
</objects>
</document>
9 changes: 8 additions & 1 deletion Japanese.lproj/FRAMainMenu.xib
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16C67" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16D32" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11762"/>
Expand All @@ -19,6 +19,12 @@
<action selector="orderFrontStandardAboutPanel:" target="-2" id="142"/>
</connections>
</menuItem>
<menuItem title="更新を確認..." id="7H3-cX-0V4">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="checkForUpdates:" target="oQD-6T-tPw" id="Qyp-gw-70u"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="202">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
Expand Down Expand Up @@ -908,5 +914,6 @@
</customObject>
<customObject id="388" userLabel="FRAViewMenuController" customClass="FRAViewMenuController"/>
<customObject id="389" userLabel="FRAProjectsController" customClass="FRAProjectsController"/>
<customObject id="oQD-6T-tPw" customClass="SUUpdater"/>
</objects>
</document>
9 changes: 8 additions & 1 deletion Spanish.lproj/FRAMainMenu.xib
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16C67" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11762" systemVersion="16D32" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11762"/>
Expand All @@ -19,6 +19,12 @@
<action selector="orderFrontStandardAboutPanel:" target="-2" id="142"/>
</connections>
</menuItem>
<menuItem title="Comprobar Actualizaciones..." id="r5Y-BJ-Yf7">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="checkForUpdates:" target="CD1-52-RBe" id="W0M-uO-Z5i"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="202">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
Expand Down Expand Up @@ -908,5 +914,6 @@
</customObject>
<customObject id="388" userLabel="FRAViewMenuController" customClass="FRAViewMenuController"/>
<customObject id="389" userLabel="FRAProjectsController" customClass="FRAProjectsController"/>
<customObject id="CD1-52-RBe" customClass="SUUpdater"/>
</objects>
</document>
1 change: 1 addition & 0 deletions Sparkle.framework/Headers
1 change: 1 addition & 0 deletions Sparkle.framework/Modules
1 change: 1 addition & 0 deletions Sparkle.framework/PrivateHeaders
1 change: 1 addition & 0 deletions Sparkle.framework/Resources
1 change: 1 addition & 0 deletions Sparkle.framework/Sparkle
40 changes: 40 additions & 0 deletions Sparkle.framework/Versions/A/Headers/SUAppcast.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
//
// SUAppcast.h
// Sparkle
//
// Created by Andy Matuschak on 3/12/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//

#ifndef SUAPPCAST_H
#define SUAPPCAST_H

#if __has_feature(modules)
@import Foundation;
#else
#import <Foundation/Foundation.h>
#endif
#import "SUExport.h"

NS_ASSUME_NONNULL_BEGIN

@class SUAppcastItem;
SU_EXPORT @interface SUAppcast : NSObject<NSURLDownloadDelegate>

@property (copy, nullable) NSString *userAgentString;

#if __has_feature(objc_generics)
@property (copy, nullable) NSDictionary<NSString *, NSString *> *httpHeaders;
#else
@property (copy, nullable) NSDictionary *httpHeaders;
#endif

- (void)fetchAppcastFromURL:(NSURL *)url inBackground:(BOOL)bg completionBlock:(void (^)(NSError *_Nullable))err;
- (SUAppcast *)copyWithoutDeltaUpdates;

@property (readonly, copy, nullable) NSArray *items;
@end

NS_ASSUME_NONNULL_END

#endif
49 changes: 49 additions & 0 deletions Sparkle.framework/Versions/A/Headers/SUAppcastItem.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
//
// SUAppcastItem.h
// Sparkle
//
// Created by Andy Matuschak on 3/12/06.
// Copyright 2006 Andy Matuschak. All rights reserved.
//

#ifndef SUAPPCASTITEM_H
#define SUAPPCASTITEM_H

#if __has_feature(modules)
@import Foundation;
#else
#import <Foundation/Foundation.h>
#endif
#import "SUExport.h"

SU_EXPORT @interface SUAppcastItem : NSObject
@property (copy, readonly) NSString *title;
@property (copy, readonly) NSString *dateString;
@property (copy, readonly) NSString *itemDescription;
@property (strong, readonly) NSURL *releaseNotesURL;
@property (copy, readonly) NSString *DSASignature;
@property (copy, readonly) NSString *minimumSystemVersion;
@property (copy, readonly) NSString *maximumSystemVersion;
@property (strong, readonly) NSURL *fileURL;
@property (nonatomic, readonly) uint64_t contentLength;
@property (copy, readonly) NSString *versionString;
@property (copy, readonly) NSString *displayVersionString;
@property (copy, readonly) NSDictionary *deltaUpdates;
@property (strong, readonly) NSURL *infoURL;

// Initializes with data from a dictionary provided by the RSS class.
- (instancetype)initWithDictionary:(NSDictionary *)dict;
- (instancetype)initWithDictionary:(NSDictionary *)dict failureReason:(NSString **)error;

@property (getter=isDeltaUpdate, readonly) BOOL deltaUpdate;
@property (getter=isCriticalUpdate, readonly) BOOL criticalUpdate;
@property (getter=isInformationOnlyUpdate, readonly) BOOL informationOnlyUpdate;

// Returns the dictionary provided in initWithDictionary; this might be useful later for extensions.
@property (readonly, copy) NSDictionary *propertiesDictionary;

- (NSURL *)infoURL;

@end

#endif
Loading

0 comments on commit 02c3c78

Please sign in to comment.