v1.1.4 — Fix the "damaged and can't be opened" disk image
Fixes the .dmg published with 1.1.3, which macOS refused with
"PdfRomeo is damaged and can't be opened."
Installing
- Open the
.dmgand drag PdfRomeo into Applications. - Clear the download quarantine flag:
xattr -dr com.apple.quarantine /Applications/PdfRomeo.app
- Launch normally.
That step is required because the app is signed ad-hoc rather than
notarised with an Apple Developer ID. Right-click → Open on its own is
often not enough for an ad-hoc signature on Apple Silicon.
What was wrong
The 1.1.3 build pruned unused Qt frameworks after py2app had already
signed the bundle. The signature seals a manifest of every file inside the
app, so removing files afterwards invalidated it. Gatekeeper reported
a sealed resource is missing or invalid, and macOS presents that as
"damaged" — with no override available to the user.
- The bundle is re-signed after pruning, and the build now fails loudly if
the signature does not verify, so a broken bundle cannot be published. - Signing happens on a copy in a scratch directory.
codesignrejects any
bundle carrying extended attributes, and they cannot be stripped in
place:com.apple.provenanceis kernel-managed, and a synced project
folder keeps re-stamping the bundle withcom.apple.FinderInfo. - The disk image is staged the same way and ships an
Applications
symlink.
No application code changed. Every fix from
v1.1.3 — OCR,
Split by Bookmarks, Split by Size, Watermark, Bates Numbering, Organize
Pages, Compress, and the dependency detection — is present.
Full changelog: v1.1.3...v1.1.4