Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cleanup qsrelease: Make POSIX, fail on errors #2582

Closed
wants to merge 12 commits into from

Conversation

n8henrie
Copy link
Member

  • If errors are acceptable, explicity ignore them.
  • Move cleanup to a trap instead of a long conditional
  • Add and remove quoting where it can / can't make a difference
  • Break long lines for readability
  • Enable users to pass in a custom signing identity for local testing

- If errors are acceptable, explicity ignore them.
- Move cleanup to a trap instead of a long conditional
- Add and remove quoting where it can / can't make a difference
- Break long lines for readability
- Enable users to pass in a custom signing identity for local testing
@n8henrie n8henrie changed the title Make POSIX, fail on errors cleanup qsrelease: Make POSIX, fail on errors Nov 13, 2021
@n8henrie
Copy link
Member Author

Fixes #2581

@n8henrie
Copy link
Member Author

Status: WIP, need review

@skurfer
Copy link
Member

skurfer commented Nov 17, 2021

This looks OK to me so far. My biggest concern initially was the one-liner used for signing, but it looks like that’s been replaced with something a little smarter. Not that signing does anything, but…

(I’ve never liked using backslashes to break up long lines, but it’s not like double-quotes in Python. Just leave it. 😀)

@n8henrie
Copy link
Member Author

n8henrie commented Nov 17, 2021 via email

@skurfer
Copy link
Member

skurfer commented Nov 19, 2021

Wait, what!?

$ spctl -avv Quicksilver.app
Quicksilver.app: accepted
source=Developer ID
origin=Developer ID Application: Rob McBroom (ATVCND8EAP)
$ spctl -avt open --context context:primary-signature 'Quicksilver 1.6.1.dmg'
Quicksilver 1.6.1.dmg: rejected
source=Unnotarized Developer ID

So now the app is OK, but not the DMG? I mean, if I had to pick one to work, it would be the app. I wonder why the DMG is suddenly unhappy. I’ll mess with it a bit.

@n8henrie
Copy link
Member Author

n8henrie commented Nov 19, 2021 via email

Add comments to give examples for those using self-signed certs.
@n8henrie
Copy link
Member Author

Instead of the big find | sort | awk mess to sign inside-out, it looks like it works just as well to find -exec codesign everything and then just re-sign the .app. Changed to use this as it's much simpler.

@n8henrie n8henrie mentioned this pull request Nov 25, 2021
@skurfer
Copy link
Member

skurfer commented Nov 30, 2021

I’m trying this out, but something is making buildDMG.pl really unhappy. That step still works on master and reverting it back to a single line doesn’t help, so it must be something about the environment.

cp: Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSRegistry.h: could not copy extended attributes to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSRegistry.h: No space left on device
cp: Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSAction.h: could not copy extended attributes to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSAction.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSCollection.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSObjectSource.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSKeys.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSBadgeImage.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSLocalization.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSObject_AEConversion.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSPlugInManager.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSTrigger.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSCore.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSDebug.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSExecutor.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSTask.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSProxyObject.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSHistoryController.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSTriggerManager.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSTextProxy.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSMiscFunctions.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSClangAnalyzer.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSResourceManager.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSObjectFormatter.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSDefines.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSGlobalSelectionProvider.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSURLDownloadWrapper.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSProcessSource.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSObject.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSObject_Pasteboard.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSTypes.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSHandledObjectHandler.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSObject_FileHandling.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSPluginUpdaterWindowController.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSBasicObject.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSDownloads.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSObjCMessageSource.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSObjectRanker.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSObject_Drag.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSCatalogEntry.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/Headers/QSObject_Menus.h: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSCore.framework/Versions/A/QSCore: No space left on device
cp: symlink: A: No space left on device
cp: symlink: Versions/Current/Headers: No space left on device
cp: symlink: Versions/Current/QSCore: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework: No space left on device
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework: unable to copy extended attributes to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework: No space left on device
cp: symlink: Versions/Current/Resources: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions: unable to copy extended attributes to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A: unable to copy extended attributes to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/_CodeSignature: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/_CodeSignature: unable to copy extended attributes to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/_CodeSignature: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/_CodeSignature/CodeResources: No such file or directory
cp: setattrlist: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/_CodeSignature: No such file or directory
cp: chown: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/_CodeSignature: No such file or directory
cp: chmod: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/_CodeSignature: No such file or directory
cp: chflags: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/_CodeSignature: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/_CodeSignature: unable to copy ACL to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/_CodeSignature: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources: unable to copy extended attributes to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources/Button-Rescan.png: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources/DefaultBindings.qskeys: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources/Info.plist: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources/QSBindableActions.strings: No such file or directory
cp: setattrlist: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources: No such file or directory
cp: chown: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources: No such file or directory
cp: chmod: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources: No such file or directory
cp: chflags: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources: unable to copy ACL to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Resources: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers: unable to copy extended attributes to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSSplitHandleView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSDelegatingCell.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSMenuButton.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSUserDefinedProxyTargetPicker.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSSearchObjectView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSResultController.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSHotKeyEditor.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSImageTextCountCell.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSGlossyBarView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSTextViewer.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSInterface.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/BLTRResizeView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSObjectCell.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSDockingWindow.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSObjectView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSRankCell.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSImageAndTextCell.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSBezelBackgroundView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSHandledSplitView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSInterfaceController.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSTargetPickerPanel.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSResizingInterfaceController.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSCommandBuilder.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSFancyTableView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSDelegatingTableColumn.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSPreferencePane.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSFileConflictPanel.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSPopUpTextButtonCell.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSTableView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSImageView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSDesktopBackgroundView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSUserDefinedProxySource.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSCollectingSearchObjectView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSBackgroundView.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSResultWindow.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSLargeTypeDisplay.h: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers/QSOutlineView.h: No such file or directory
cp: setattrlist: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers: No such file or directory
cp: chown: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers: No such file or directory
cp: chmod: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers: No such file or directory
cp: chflags: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers: unable to copy ACL to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/Headers: No such file or directory
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A/QSInterface: No such file or directory
cp: setattrlist: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A: No such file or directory
cp: chown: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A: No such file or directory
cp: chmod: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A: No such file or directory
cp: chflags: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A: unable to copy ACL to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions/A: No such file or directory
cp: symlink: A: No such file or directory
cp: setattrlist: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions: No such file or directory
cp: chown: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions: No such file or directory
cp: chmod: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions: No such file or directory
cp: chflags: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions: unable to copy ACL to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework/Versions: No such file or directory
cp: symlink: Versions/Current/Headers: No such file or directory
cp: symlink: Versions/Current/QSInterface: No such file or directory
cp: setattrlist: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework: No such file or directory
cp: chown: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework: No such file or directory
cp: chmod: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework: No such file or directory
cp: chflags: /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework: No such file or directory
cp: Quicksilver.app/Contents/Frameworks/QSInterface.framework: unable to copy ACL to /Volumes/Quicksilver/Quicksilver.app/Contents/Frameworks/QSInterface.framework: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/Info.plist: No space left on device
cp: /Volumes/Quicksilver/Quicksilver.app/Contents/PkgInfo: No space left on device
cp: symlink: /Applications: No space left on device
Use of uninitialized value $err in concatenation (.) or string at
	/Users/rob/Developer/Quicksilver/Source/Quicksilver/Tools/buildDMG.pl line 165 (#1)
    (W uninitialized) An undefined value was used as if it were already
    defined.  It was interpreted as a "" or a 0, but maybe it was a mistake.
    To suppress this warning assign a defined value to your variables.

    To help you figure out what was undefined, perl will try to tell you
    the name of the variable (if any) that was undefined.  In some cases
    it cannot do this, so it also tells you what operation you used the
    undefined value in.  Note, however, that perl optimizes your program
    and the operation displayed in the warning may not necessarily appear
    literally in your program.  For example, "that $foo" is usually
    optimized into "that " . $foo, and the warning will refer to the
    concatenation (.) operator, even though there is no . in
    your program.

Uncaught exception from user code:
	FATAL: Error while copying files (Error: )

@n8henrie
Copy link
Member Author

n8henrie commented Nov 30, 2021 via email

@n8henrie
Copy link
Member Author

n8henrie commented Nov 30, 2021

Until we can work out #2576 I've just bypassed the codesigning and spctl checks with || trues, which should let the CI status reflect whether the build is succeeding (even if we're still working out code signing). EDIT: But will also keep it explicit where we are ignoring failing steps.

@skurfer
Copy link
Member

skurfer commented Dec 1, 2021

All of the No space left on device -- I assume that's referring to the dmg volume and not your filesystem?

Yes, it’s the DMG. I have 2.82 TB free on the actual disk. I’ll try to do some trial and error to identify the meaningful differences between the old and new scripts’ environments.

skurfer added a commit that referenced this pull request Dec 6, 2021
@skurfer
Copy link
Member

skurfer commented Dec 10, 2021

I did some poking around and found that most of the app does get copied to the temporary volume. The help for buildDMG.pl says it will guess a size based on the files. Apparently it’s just off now because of something here.

Anyway, adding -volSize 50 to the arguments appears to let it build the DMG, and the resulting file is only 8.3 MB, not 50 MB. So let’s just do that.

Are we keeping this PR, or do you want to close it and just work from #2587?

@n8henrie
Copy link
Member Author

n8henrie commented Dec 12, 2021 via email

@skurfer
Copy link
Member

skurfer commented Dec 12, 2021

I added the volSize and merged these changes. GitHub couldn’t tell because I manually squashed all the commits locally, so that’s why this will show as “closed” instead of “merged”.

@skurfer skurfer closed this Dec 12, 2021
skurfer added a commit that referenced this pull request Dec 12, 2021
@n8henrie n8henrie deleted the cleanup_qsrelease branch December 23, 2021 16:15
@n8henrie n8henrie mentioned this pull request Dec 27, 2021
7 tasks
This was referenced Feb 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants