motion-sparkle-sandbox 0.8.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4c72c1a939e68d9f00d0e7c6ebfd92a2888fc59d1d501320a462051852df7c31
4
- data.tar.gz: 852d394ff99e98478aab7837089016a5b3b8aaa8e1becc8e8c78ad600eef4d6e
3
+ metadata.gz: eb36aa00aa6bcfa0a003626e4df82fec0d15b6ffe9887301b65b68f2cdf6e2f8
4
+ data.tar.gz: 9848c1800e37dc90399cb8b424d079719b9c9e1751d13a7f8d6fcc2679291a0c
5
5
  SHA512:
6
- metadata.gz: 83183707c96424775e8c654504aa145a14b105ef444e42f5e3f4a3978a227012da6e6ecfc026cefc1607775249fbe44a4361e082857382fc48ed59aa98184a1c
7
- data.tar.gz: 1488d6f6193b0332f8bbdee270f963b946da7e7b0d34fc20d4ad2bbf747f58d1b304030c1808b34b28ea126468f45a57a94f5863028122adde73a92571afe1c4
6
+ metadata.gz: b7640ff4fa3545cb12f75bfd8a3a24b69ee6c659e71e6a9f4ee405f1cd8349f0afd9a8ac4ad51180969226232c59fb61a1cff3084572a7f084997de578c84416
7
+ data.tar.gz: 536419939c150e497532e54eeb5c3328cfd3001ff4b4491d6c31e8b3557f4a0c05a35e7068aa40a87318b7750788e39eee73ecccc5f1a5d368c770a69d25ba8e
data/LICENSE CHANGED
@@ -1,5 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
+ Copyright (c) 2015 Brett Walker <github@digitalmoksha.com>
3
4
  Copyright (c) 2013 Alexandre L. Solleiro <alex@webcracy.org>
4
5
 
5
6
  Permission is hereby granted, free of charge, to any person obtaining a copy
data/README.md CHANGED
@@ -6,9 +6,9 @@ Easily package and release updates of your RubyMotion app with Sparkle.
6
6
 
7
7
  ## Sandboxing
8
8
 
9
- This version uses the [ui-separation-and-xpc branch](https://github.com/sparkle-project/Sparkle/tree/ui-separation-and-xpc) to support an app that uses sandboxing. Sparkle is in transition, and the sandbox version is slated for 2.0.
9
+ This version uses the [2.x branch](https://github.com/sparkle-project/Sparkle/tree/2.x) to support an app that uses sandboxing. Sparkle 2.x is still in beta.
10
10
 
11
- _Sparkle built from ui-separation-and-xpc#b1c3b313f53c95a91c8adc07b991ff9a306e6cf8 on Dec 9th, 2018_
11
+ _Sparkle built from https://github.com/sparkle-project/Sparkle/commit/438f4a21d5b52596b899d9931525c02a691b2287 on Aug 28th, 2020_
12
12
 
13
13
  [Reference thread](https://github.com/sparkle-project/Sparkle/issues/363)
14
14
 
@@ -1,6 +1,7 @@
1
1
  unless defined?(Motion::Project::Config)
2
2
  raise "This file must be required within a RubyMotion project Rakefile."
3
3
  end
4
+
4
5
  require 'motion/project/sparkle'
5
6
  require 'motion/project/install'
6
7
  require 'motion/project/setup'
@@ -53,7 +53,7 @@ module Motion::Project
53
53
 
54
54
  Dir.glob("#{xpc_path}/*.xpc").each do |path|
55
55
  App.info 'Codesign', path
56
- results = `#{App.config.sparkle.sparkle_vendor_path}/codesign_xpc "#{App.config.codesign_certificate}" "#{File.expand_path(path)}" 2>&1`
56
+ results = `#{App.config.sparkle.sparkle_vendor_path}/codesign_embedded_executable "#{App.config.codesign_certificate}" "#{File.expand_path(path)}" 2>&1`
57
57
  end
58
58
  end
59
59
  end
@@ -8,7 +8,7 @@ $:.unshift File.expand_path('../lib', __FILE__)
8
8
 
9
9
  Gem::Specification.new do |spec|
10
10
  spec.name = 'motion-sparkle-sandbox'
11
- spec.version = '0.8.0'
11
+ spec.version = '2.0.0'
12
12
  spec.date = Date.today
13
13
  spec.summary = 'Sparkle (sandboxed) integration for Rubymotion projects'
14
14
  spec.description = "motion-sparkle-sandbox makes it easy to use the sandboxed version of Sparkle in your RubyMotion OS X apps"
@@ -1,12 +1,22 @@
1
1
  ## Building the Sparkle.zip
2
2
 
3
+ The `vendor` directory should contain
4
+
5
+ ```
6
+ vendor
7
+ codesign_embedded_executable
8
+ generate_appcast
9
+ README.md
10
+ Sparkle.zip
11
+ ```
12
+
3
13
  The structure of `Sparkle.zip` is:
4
14
 
5
15
  ```
6
16
  Sparkle
7
- codesign_xpc
8
17
  Sparkle.framework
9
18
  XPCServices
19
+ org.sparkle-project.Downloader.xpc (not usually needed)
10
20
  org.sparkle-project.InstallerConnection.xpc
11
21
  org.sparkle-project.InstallerLauncher.xpc
12
22
  org.sparkle-project.InstallerStatus.xpc
@@ -14,10 +24,10 @@ Sparkle
14
24
 
15
25
  In order to get xpc services to be signed and work properly, they need to be copied into an `XPCServices` folder in `MyApp.app/Contents`
16
26
 
17
- The `codesign_xpc` can properly sign these files once they have been copied into place.
27
+ The `codesign_embedded_executable` can properly sign these files once they have been copied into place.
18
28
 
19
- 1. Fetch the `ui-separation-and-xpc` branch
20
- 2. Copy the `bin/codesign_xpc` into the `Sparkle` folder
29
+ 1. Fetch the `2.x` branch
30
+ 2. Copy the `bin/codesign_embedded_executable` into the `vendor` folder
21
31
  3. Run `make release` and change to the output folder
22
32
  4. Copy the `Sparkle.framework` into the `Sparkle` folder
23
33
  5. Copy each of the above xpc files into the `XPCServices` folder
Binary file
@@ -10,7 +10,7 @@ def sanitize(argument):
10
10
  return ('"' + argument + '"' if ' ' in argument else argument)
11
11
 
12
12
  def _codesign_service(identity, path, entitlements_path=None):
13
- command = ["codesign", "-fs", identity, path] + ([] if entitlements_path is None else ["--entitlements", entitlements_path])
13
+ command = ["codesign", "-o", "runtime", "-fs", identity, path] + ([] if entitlements_path is None else ["--entitlements", entitlements_path])
14
14
  log_message(" ".join(map(sanitize, command)))
15
15
 
16
16
  process = subprocess.Popen(command, stdout=subprocess.PIPE)
@@ -32,15 +32,15 @@ def codesign_service(service_name, identity, path, entitlements_path=None):
32
32
 
33
33
  if __name__ == "__main__":
34
34
  if len(sys.argv) < 3:
35
- log_message("Usage:\n\t%s code-signing-identity xpc-service xpc-service2 ..." % (sys.argv[0]))
35
+ log_message("Usage:\n\t%s code-signing-identity executable1 executable1 ..." % (sys.argv[0]))
36
36
  log_message("Example:\n\t%s \"Developer ID Application\" ./XPCServices/*.xpc" % (sys.argv[0]))
37
37
  sys.exit(1)
38
38
 
39
39
  signing_identity = sys.argv[1]
40
- xpc_services = sys.argv[2:]
40
+ executables = sys.argv[2:]
41
41
 
42
- for xpc_service in xpc_services:
43
- parent, child = os.path.split(xpc_service)
42
+ for executable in executables:
43
+ parent, child = os.path.split(executable)
44
44
  service_name = os.path.splitext(child)[0]
45
45
  entitlements_path = os.path.join(parent, service_name + ".entitlements")
46
- codesign_service(service_name, signing_identity, xpc_service, None if not os.path.exists(entitlements_path) else entitlements_path)
46
+ codesign_service(service_name, signing_identity, executable, None if not os.path.exists(entitlements_path) else entitlements_path)
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: motion-sparkle-sandbox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brett Walker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-17 00:00:00.000000000 Z
11
+ date: 2020-08-30 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: motion-sparkle-sandbox makes it easy to use the sandboxed version of
14
14
  Sparkle in your RubyMotion OS X apps
@@ -38,7 +38,7 @@ files:
38
38
  - spec/spec_helper.rb
39
39
  - vendor/README.md
40
40
  - vendor/Sparkle.zip
41
- - vendor/codesign_xpc
41
+ - vendor/codesign_embedded_executable
42
42
  - vendor/generate_appcast
43
43
  homepage: https://github.com/digitalmoksha/motion-sparkle-sandbox
44
44
  licenses:
@@ -59,8 +59,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
59
59
  - !ruby/object:Gem::Version
60
60
  version: '0'
61
61
  requirements: []
62
- rubyforge_project:
63
- rubygems_version: 2.7.6
62
+ rubygems_version: 3.0.6
64
63
  signing_key:
65
64
  specification_version: 4
66
65
  summary: Sparkle (sandboxed) integration for Rubymotion projects