Back to feed
Dev.to
Dev.to
7/2/2026
Shipping a libmpv-based video player on the Mac App Store

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?

Comments

Failed to load comments. Please try again.

Explore more