Dev.to
7/2/2026

Shipping a libmpv-based video player on the Mac App Store
Short summary
Shipping libmpv to the Mac App Store requires disabling LuaJIT at compile time to avoid JIT entitlement conflicts, satisfying LGPL re-linking obligations with written offers and source archives, and thoroughly testing security-scoped bookmarks against sandbox rules to catch submission failures. Video playback itself was straightforward; the real complexity lay in App Store entitlements, licensing compliance, and macOS sandbox security traps.
- •JIT entitlements conflict with statically-linked LuaJIT; solution is compiling libmpv with -Dlua=disabled if Lua scripting isn't used
- •LGPL compliance requires in-app license window, written three-year source offer in store description, and build artifact archives for user relinks
- •Security-scoped bookmarks entitlement must be com.apple.security.files.bookmarks.app-scope (with 'files.'); variant without it fails App Store validation silently
Generated with AI, which can make mistakes.
Is this a good recommendation for you?



