No support for macOS 10.14 and 10.15

(ed: Thanks to Laminar, this decision has been able to be mostly reversed when XSB is used in conjunction with X-Plane 11.41 and newer. The rest of this post remains for historic reference)

Unfortunately, I’ve had to come to the very hard decision to call a No Official Support for macOS 10.14 and 10.15 due to changes in the privacy and permission system that seriously affect the way XSquawkBox works.

TL;DR: macOS 10.15 can not use voice in XSB and X-Plane 10 or 11. macOS 10.14 is an unknown quantity that might work with XSB and X-Plane 10, but probably can’t with X-Plane 11. Problem is ultimately out of my control and I cannot fix it without outside intervention. macOS 10.13 (and earlier) are unaffected. Problem is not specific to XSB 2.0.

I’ve just spent the past few days chasing a phantom – every other platform seems to work fine, but I couldn’t get audio capture to work on MacOS 10.15.

Then I dug further and realized that the privacy changes in 10.15 were probably blocking Mic access… put a hook in to request permission, only to discover that you cannot get Microphone access at run-time, if the application was not code-signed with an audio capture entitlement, and as a plugin, we cannot get entitlements.

This restriction fundamentally breaks any fully integrated plugin that needs more entitlements/privileges than the host application has – it’s just not possible to get that permission.

Because of this, XSB’s is unable to provide voice support on new macOS versions unless Laminar do something that they probably shouldn’t and put the audio capture entitlement into X-Plane 11 so XSB (and other plugins) can take advantage of it. They shouldn’t need to do this since X-Plane itself doesn’t need the entitlement, but unfortunately, this is what it ultimately comes down to for XSB.

This pretty much leaves XSquawkBox in limbo on macOS and I need to spent some serious time thinking about how to deal with this going forward – the only way I can reasonably support XSB on macOS going forward is to make a change I had personally never intended on performing and split XSB into a separate application and plug-in, and this is a much larger change than anything I wanted to do for 3.0. This also risks destroying XSB’s advantage of being simpler than the alternatives.

Because this audio capture issue was the last one actively blocking beta3, I’ll be cutting the beta3 release. It should still work fine on 10.13 which doesn’t have this restriction.

8 Replies to “No support for macOS 10.14 and 10.15”

  1. Sorry to say it doesn’t work on os high sierra, xp11.36, macpro 12 core

  2. Hi,

    I’m using BETA 2 on macOS 10.15 – text and sound is working – sometimes it disconnects sound – but very rarely. For me working fine. Maybe code in BETA 2 was better for macOS 10.15. Thanks for Your hardwork!

  3. Voice in 2.0beta1 works fine for me on macOS 10.15. There’s no text though.

  4. The most recent Release Candidate from Laminar Research (11.41rc1, released December 5) includes XPD-10396. The description of this bug fix is “Fixed mic permissions on Mac.” Was this the issue that is preventing XSB voice support on MacOS 10.14 and 10.15?

  5. So I asked the LR guys about this issue on their Dev Blog, as it relates to XSB and bugfix XPD-10396. It appears that the audio services entitlements issue with MacOS has been resolved as of X-Plane 11.40. Per Ben Supnik’s reply:

    “Yes – this is that issue, and should resolve problems for plugins like XSB (although it is not the only one I heard about) that have audio services _inside_ the plugin and not in a separate helper app.

    The issue is that in 11.36 we didn’t have any security entitlements set at all, so the OS assumed that we _might_ ask for anything and would ask the user for mic access when a plugin opened an audio source.

    In 11.40 we list a bunch of entitlements explicitly (E.g. code-gen execution so Lua plugins can work) and we left the mic off. Having “actively omitted it” from a positive list of security entitlements, the OS interprets that as “those LR guys say they DO NOT need the mic, so if x-plane asks for the mic, it’s infected by spyware, just deny it”. No user prompt.

    In 11.41 we added the mic entitlement to our list, hopefully fixing the issue. Only X-Plane could fix this – plugin DLLs don’t get security entitlements, as it’s on the process level.”

    Chris, in light of this, could you take another look at support for MacOS 10.14 and 10.15?

    1. Sorry, I meant to say that according to Ben, the audio services entitlements issue has been resolved as of X-Plane 11.41.

    2. Yes – it’s happening – Just verified that 11.41r1 resolves the mic issue and unblocks me, so I’ll be going over b4 on mac a bit more carefully. Still won’t support XP10 on those macOSes, but at least there’s now a path forward.

      (Also got an eGPU sorted out so I can actually run XP11 close to reasonable framerate on my aging mac mini for testing – macos 10.15 harpooned me in a bunch of ways).

Comments are closed.