Skip to content

feat(package): macos-resource-files manifest key - #319

Merged
turinglambdaai merged 1 commit into
mainfrom
feat/macos-resource-files
Oct 23, 2026
Merged

turinglambdaai merged 1 commit into
mainfrom
feat/macos-resource-files

Conversation

@turinglambdaai

Copy link
Copy Markdown
Owner

Taskly's network-transparency slice needs InternetAccessPolicy.plist at the bundle's Contents/Resources root (Little Snitch-class firewalls read it there). resources stages under Resources/app by design (cross-platform paths, per #238), so there was no sealable route to the Resources root.

macos-resource-files copies unique project-relative files verbatim into the Resources root before signing:

  • collides with rivet-managed names (packaged icon) → fail closed,
  • missing file → fail closed (never ship an incomplete policy),
  • docs/configuration.md documents the key.

Verified end-to-end against taskly: macos-resource-files . ("assets/InternetAccessPolicy.plist") packages with launch smoke passing, the plist lands at Contents/Resources/InternetAccessPolicy.plist (plutil OK), and the ad-hoc seal survives because the copy precedes signing.

Downstream projects need files at the macOS bundle's Contents/Resources
root — the standard home for InternetAccessPolicy.plist, which
Little Snitch-class firewalls read and surface to the user as the app's
network policy. The `resources` key deliberately stages under
Contents/Resources/app to keep paths cross-platform, so there was no
sealable way to reach the Resources root.

`macos-resource-files` copies unique project-relative files verbatim
into Contents/Resources before signing; a name colliding with a
rivet-managed bundle file (the packaged icon) fails the package, and a
missing file fails the package rather than shipping an incomplete
policy. Documents the key in docs/configuration.md.
@turinglambdaai
turinglambdaai merged commit 288c81f into main Oct 23, 2026
23 checks passed
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.

1 participant