<pre style='margin:0'>
Zhenfu Shi (i0ntempest) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/5626156eacb0d36e61f2311a20888e1d96f8c005">https://github.com/macports/macports-ports/commit/5626156eacb0d36e61f2311a20888e1d96f8c005</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 5626156eacb Mousecape: submission
</span>5626156eacb is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 5626156eacb0d36e61f2311a20888e1d96f8c005
</span>Author: i0ntempest <szf1234@me.com>
AuthorDate: Wed Jul 17 23:35:37 2024 -0400

<span style='display:block; white-space:pre;color:#404040;'>    Mousecape: submission
</span>---
 aqua/Mousecape/Portfile                            | 47 +++++++++++++
 .../files/patch-CGSRrgisterCursorImages.diff       | 41 ++++++++++++
 aqua/Mousecape/files/patch-remove-sparkle.diff     | 76 ++++++++++++++++++++++
 3 files changed, 164 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/aqua/Mousecape/Portfile b/aqua/Mousecape/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..ef0cf12024f
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/aqua/Mousecape/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,47 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem          1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           xcode 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        alexzielenski Mousecape 1813
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          aqua sysutils
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         {i0ntempest @i0ntempest} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             unknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         Cursor Manager for macOS/OS X
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    A free cursor manager for Mac OS X 10.8+ built using private, nonintrusive CoreGraphics APIs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  4d24c3894623bb8e7610c9075862077946a1aee9 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  aad2e8ce6873e16601275be54718c067537a944715662290ddaa9da148071b89 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    4903492
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.dir           ${worksrcpath}/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+xcode.target        mousecloak com.alexzielenski.mousecloakhelper ${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+xcode.configuration Release
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-remove-sparkle.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    patch-CGSRrgisterCursorImages.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patch.args          -p1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Disable Sparkle without messing with xib files
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system -W ${build.dir}/${name} "/usr/libexec/PlistBuddy -c \"Delete :SUFeedURL\" ${name}-Info.plist"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Fix version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system -W ${build.dir}/${name} "/usr/libexec/PlistBuddy -c \"Set :CFBundleShortVersionString [expr ${version}-1]\" ${name}-Info.plist"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system -W ${build.dir}/${name} "/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion [expr ${version}-1]\" ${name}-Info.plist"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.major} >= 22} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xcode.build.settings-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        CODE_SIGN_IDENTITY=-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xcode.build.settings-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        CODE_SIGN_IDENTITY= CODE_SIGNING_REQUIRED=NO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    file copy ${build.dir}/build/${xcode.configuration}/${name}.app ${destroot}${applications_dir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ln -s ${applications_dir}/${name}.app/Contents/MacOS/mousecloak ${destroot}${prefix}/bin/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/aqua/Mousecape/files/patch-CGSRrgisterCursorImages.diff b/aqua/Mousecape/files/patch-CGSRrgisterCursorImages.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..5735d7bd1b9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/aqua/Mousecape/files/patch-CGSRrgisterCursorImages.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,41 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/Mousecape/mousecloak/CGSInternal/CGSCursor.h b/Mousecape/mousecloak/CGSInternal/CGSCursor.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 07e70fc..b5637db 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/Mousecape/mousecloak/CGSInternal/CGSCursor.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/Mousecape/mousecloak/CGSInternal/CGSCursor.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -49,7 +49,7 @@ CG_EXTERN CGError CGSGetRegisteredCursorImages(CGSConnectionID cid, char *cursor
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // Verified, stable
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*! Registers a cursor in the current CGSConnection or globally */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-CG_EXTERN CGError CGSRegisterCursorWithImages(CGSConnectionID cid, char *cursorName, bool setGlobally, bool instantly, NSUInteger frameCount, CFArrayRef imageArray, CGSize cursorSize, CGPoint hotspot, int *seed, CGRect bounds, CGFloat frameDuration, NSInteger repeatCount);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++CG_EXTERN CGError CGSRegisterCursorWithImages(CGSConnectionID cid, char *cursorName, bool setGlobally, bool instantly, CGSize cursorSize, CGPoint hotspot, NSUInteger frameCount, CGFloat frameDuration, CFArrayRef imageArray, int *seed);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CG_EXTERN CGError CGSSetSystemDefinedCursor(CGSConnectionID cid, CGSCursorID cursor);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/Mousecape/mousecloak/apply.m b/Mousecape/mousecloak/apply.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 1f1b248..5c6f64f 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/Mousecape/mousecloak/apply.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/Mousecape/mousecloak/apply.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19,19 +19,17 @@ BOOL applyCursorForIdentifier(NSUInteger frameCount, CGFloat frameDuration, CGPo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     char *idenfifier = (char *)ident.UTF8String;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    int seed;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    int seed = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     CGError err = CGSRegisterCursorWithImages(CGSMainConnectionID(),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                               idenfifier,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                               true,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                               true,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                              frameCount,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                              (__bridge CFArrayRef)images,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                               size,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                               hotSpot,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                              &seed,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                              CGRectMake(hotSpot.x, hotSpot.y, size.width, size.height),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                              frameCount,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                               frameDuration,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                              0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                              (__bridge CFArrayRef)images,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                              &seed);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return (err == kCGErrorSuccess);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/aqua/Mousecape/files/patch-remove-sparkle.diff b/aqua/Mousecape/files/patch-remove-sparkle.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..36955aa08a9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/aqua/Mousecape/files/patch-remove-sparkle.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,76 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/Mousecape/Mousecape.xcodeproj/project.pbxproj.old    2020-06-13 18:08:21
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/Mousecape/Mousecape.xcodeproj/project.pbxproj        2024-03-02 02:49:28
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -57,8 +57,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           FAC69FDD189D636700BC829D /* MCDefs.m in Sources */ = {isa = PBXBuildFile; fileRef = FAC69FDB189D636700BC829D /* MCDefs.m */; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           FADBC15118CE51C000B9510F /* DTScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = FADBC15018CE51C000B9510F /* DTScrollView.m */; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           FADBC15418CE535200B9510F /* MCCapePreviewItem.m in Sources */ = {isa = PBXBuildFile; fileRef = FADBC15318CE535200B9510F /* MCCapePreviewItem.m */; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          FADF0143198A2C9200006228 /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FADF013A198A2C7500006228 /* Sparkle.framework */; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          FADF0147198A2CAD00006228 /* Sparkle.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = FADF013A198A2C7500006228 /* Sparkle.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           FAE5D56C1952700B007620DE /* MCDefs.m in Sources */ = {isa = PBXBuildFile; fileRef = FAC69FDB189D636700BC829D /* MCDefs.m */; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           FAE5D56D1952700B007620DE /* MCPrefs.m in Sources */ = {isa = PBXBuildFile; fileRef = FA35983E189DA3BC00288163 /* MCPrefs.m */; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           FAE5D5701952700B007620DE /* apply.m in Sources */ = {isa = PBXBuildFile; fileRef = FA8FF770189D66D800750E51 /* apply.m */; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -129,13 +127,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   remoteGlobalIDString = 55C14BB7136EEF1500649790;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   remoteInfo = Autoupdate;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          FADF0144198A2CA100006228 /* PBXContainerItemProxy */ = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  isa = PBXContainerItemProxy;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  containerPortal = FADF012E198A2C7400006228 /* Sparkle.xcodeproj */;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  proxyType = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  remoteInfo = Sparkle;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* End PBXContainerItemProxy section */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Begin PBXCopyFilesBuildPhase section */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -147,17 +138,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   files = (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   );
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   runOnlyForDeploymentPostprocessing = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          FADF0146198A2CA600006228 /* Copy Frameworks */ = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  isa = PBXCopyFilesBuildPhase;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  buildActionMask = 2147483647;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  dstPath = "";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  dstSubfolderSpec = 10;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  files = (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          FADF0147198A2CAD00006228 /* Sparkle.framework in Copy Frameworks */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  );
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  name = "Copy Frameworks";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  runOnlyForDeploymentPostprocessing = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           FAE5D57D1952734F007620DE /* Copy Tool */ = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   isa = PBXCopyFilesBuildPhase;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -322,7 +302,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   files = (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           FAAEF8F7189EB34700145DF8 /* QuartzCore.framework in Frameworks */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           FA35984D189DC55A00288163 /* ServiceManagement.framework in Frameworks */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          FADF0143198A2C9200006228 /* Sparkle.framework in Frameworks */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           FA359849189DC40100288163 /* Security.framework in Frameworks */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           FAC69F65189D603C00BC829D /* Cocoa.framework in Frameworks */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   );
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -696,12 +675,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           FA359841189DAAF900288163 /* Build Number */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           FAE5D57D1952734F007620DE /* Copy Tool */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           FAE5D57F1952737F007620DE /* Copy Helper */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          FADF0146198A2CA600006228 /* Copy Frameworks */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   );
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   buildRules = (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   );
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   dependencies = (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          FADF0145198A2CA100006228 /* PBXTargetDependency */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           FA359847189DBEB700288163 /* PBXTargetDependency */,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   );
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   name = Mousecape;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -960,11 +937,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   isa = PBXTargetDependency;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   target = FAC69FAC189D608900BC829D /* mousecloak */;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   targetProxy = FA359846189DBEB700288163 /* PBXContainerItemProxy */;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          FADF0145198A2CA100006228 /* PBXTargetDependency */ = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  isa = PBXTargetDependency;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  name = Sparkle;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  targetProxy = FADF0144198A2CA100006228 /* PBXContainerItemProxy */;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* End PBXTargetDependency section */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span></pre><pre style='margin:0'>

</pre>