Eqmac: Support for macOS Catalina 10.15

Created on 30 Aug 2019  ·  53Comments  ·  Source: bitgapp/eqMac

Driver installation Fails on Catalina. Any News on this?

Most helpful comment

Tested and Working! : Catalina , version 10.15.1 (19B88)

1- Go to the System Preferences -> Security & Privacy:
Open the padlock and enable Allow apps downloaded from: Anywhere
KEEP THE "Security & Privacy:" OPENED !!!

2- Install the eqMac2.dmg

3- Run on command line:
sudo cp -r /Applications/eqMac2.app/Contents/Resources/eqMac2Driver.kext /Library/Extensions/
sudo kextload /Library/Extensions/eqMac2Driver.kext
Now you'll see a message on the "Security & Privacy:" to allow the load the eqMac2 driver. Open the padlock if it's closed and allow

4- Now you can open the eqMac2 app!!

If it's not working, close the app and try to run this command:
sudo kextutil -l -v /Library/Extensions/eqMac2Driver.kext
Check if you see a message on the "Security & Privacy:" to allow the load the eqMac2 driver. Open the padlock if it's closed and allow

If the driver is properly loaded the message will be like this:

$  sudo kextutil -l -v /Library/Extensions/eqMac2Driver.kext
Password:
Defaulting to kernel file '/System/Library/Kernels/kernel'
/Library/Extensions/eqMac2Driver.kext appears to be loadable (not including linkage for on-disk libraries).
Loading /Library/Extensions/eqMac2Driver.kext.
/Library/Extensions/eqMac2Driver.kext successfully loaded (or already loaded).

If not the message is:

$ sudo kextload /Library/Extensions/eqMac2Driver.kext
/Library/Extensions/eqMac2Driver.kext failed to load - (libkern/kext) system policy prevents loading; check the system/kernel logs for errors or try kextutil(8).

or

$ sudo kextutil -l -v /Library/Extensions/eqMac2Driver.kext
Defaulting to kernel file '/System/Library/Kernels/kernel'
Kext rejected due to system policy: <OSKext 0x7fb7b7507bf0 [0x7fff90dbcd10]> { URL = "file:///Library/StagedExtensions/Library/Extensions/eqMac2Driver.kext/", ID = "com.bitgapp.eqMac2Driver" }
Kext rejected due to system policy: <OSKext 0x7fb7b7507bf0 [0x7fff90dbcd10]> { URL = "file:///Library/StagedExtensions/Library/Extensions/eqMac2Driver.kext/", ID = "com.bitgapp.eqMac2Driver" }
Diagnostics for /Library/Extensions/eqMac2Driver.kext:

All 53 comments

Driver installation still fails MacOS Catalina Stable Version.

Seems to be an issue with the new Gatekeeper that makes system drives read only

Found a work around by temporarily disabling the gatekeeper, installing the drivers and re-enabling it after.

to disable:

sudo spctl --master-disable

and enable:

sudo spctl --master-enable

@man-jai solution should work, but you need to restart your Mac each time you change the gatekeeper!
The new version of eqMac I will release soon will work out of the box without a problem

Sadly, for some reason @man-jai 's workaround didn't work for me. Just an FYI for others out there. Looking forward to seeing what the new release brings!

@man-jai solution should work, but you need to restart your Mac each time you change the gatekeeper!
The new version of eqMac I will release soon will work out of the box without a problem

Thanks for this app. Any ETA for the next release?

Catalina has read-only system volume. So, to install eqMac2, you will need to manually extract eqMac2Driver.kext, copy it to the MacOS installer usb stick (for example), boot from the stick, open terminal, go to the stick directory and copy eqMac2Driver.kext to the Extensions directory (cp -R eqMac2Driver.kext /System/Library/Extensions/)

waiting for this so much!

@man-jai that didn't work for me, even after a restart

@permidon Catalina has _read-only_ system volume. So, to install eqMac2, you will need to manually extract eqMac2Driver.kext, copy it to the MacOS installer usb stick (for example), boot from the stick, open terminal, go to the stick directory and copy eqMac2Driver.kext to the Extensions directory (cp -R eqMac2Driver.kext /System/Library/Extensions/)

it works this way and there's no other way :(

So how will be handled this problem(Catalina's read-only System Volume) on next update?. Any idea?

In the next update the audio driver is installed in user space, rather than kernel space. No ETA because I have missed every other promised eta :) So don't want to disappoint anyone. I'm working on it as much as I can, physically and mentally.

Catalina has _read-only_ system volume. So, to install eqMac2, you will need to manually extract eqMac2Driver.kext, copy it to the MacOS installer usb stick (for example), boot from the stick, open terminal, go to the stick directory and copy eqMac2Driver.kext to the Extensions directory (cp -R eqMac2Driver.kext /System/Library/Extensions/)

Incorrect, it's so simple, just extract the kext then sudo cp -r eqMac2Driver.kext /Library/Extensions/
Then it's just a matter of running kextload... :)

Catalina has _read-only_ system volume. So, to install eqMac2, you will need to manually extract eqMac2Driver.kext, copy it to the MacOS installer usb stick (for example), boot from the stick, open terminal, go to the stick directory and copy eqMac2Driver.kext to the Extensions directory (cp -R eqMac2Driver.kext /System/Library/Extensions/)

Incorrect, it's so simple, just extract the kext then sudo cp -r eqMac2Driver.kext /Library/Extensions/
Then it's just a matter of running kextload... :)

Thank you so much! This worked for me :^)

Catalina has _read-only_ system volume. So, to install eqMac2, you will need to manually extract eqMac2Driver.kext, copy it to the MacOS installer usb stick (for example), boot from the stick, open terminal, go to the stick directory and copy eqMac2Driver.kext to the Extensions directory (cp -R eqMac2Driver.kext /System/Library/Extensions/)

Incorrect, it's so simple, just extract the kext then sudo cp -r eqMac2Driver.kext /Library/Extensions/
Then it's just a matter of running kextload... :)

This work for me too. Thank you!

Glad it helped!
I have noticed a few crashes on Catalina however, specifically when disconnecting or reconnecting Bluetooth audio devices

Catalina has _read-only_ system volume. So, to install eqMac2, you will need to manually extract eqMac2Driver.kext, copy it to the MacOS installer usb stick (for example), boot from the stick, open terminal, go to the stick directory and copy eqMac2Driver.kext to the Extensions directory (cp -R eqMac2Driver.kext /System/Library/Extensions/)

Incorrect, it's so simple, just extract the kext then sudo cp -r eqMac2Driver.kext /Library/Extensions/
Then it's just a matter of running kextload... :)

Great! Thank you @dontcrash

Thanks!

Thanks!

No problem at all! Catalina has changed some things but mostly for the best, read only system partition is to help make macOS “idiot proof” and also more secure. So it should be a relatively easy fix, I might submit a PR if I have time

@dontcrash I've managed to copy the kext into the dir but would you please explain what "Then it's just a matter of running kextload... :)" it means? (total noob here)

@dontcrash I've managed to copy the kext into the dir but would you please explain what "Then it's just a matter of running kextload... :)" it means? (total noob here)

@scofano
Type this into your terminal:
sudo kextload /Library/Extensions/eqMac2Driver.kext

Type this into your terminal:
sudo kextload /Library/Extensions/eqMac2Driver.kext

Got this:
failed to load - (libkern/kext) system policy prevents loading; check the system/kernel logs for errors or try kextutil(8).

Edit: Thanks a lot! I went to the system settings and allowed it to run. It is working now. :-D

@scofano I'm having the same issue, what do you mean by "allowed it to run"?

@scofano I'm having the same issue, what do you mean by "allowed it to run"?

When I used @TDWilkinson99 code, it opened the "security & privacy" window, then I pressed "open anyway". Please note that I've already allowed gatekeeper settings to be set as "anywhere". - http://osxdaily.com/2016/09/27/allow-apps-from-anywhere-macos-gatekeeper/

I managed to get the app running following your instructions so thank you all who contributed.

I have a different issue, which I presume is again because of Catalina since I didnt have it in Mojave - after about 15-30 min(average) the sound starts popping terribly especially on low frequencies like bass and kicks. The app needs to be quit and reopened to fix it, but the issue again reappears in about 15-30 minutes. Anyone else having this problem? Im on a macbook pro 15 2019 and it does it no matter if Im using the speakers or connect wired headphones.

Edit: Nevermind, I see this is an ongoing issue for some users since Mojave. Its weird I didnt have it before updating to Catalina but I guess the dev is aware of it.

Edit 2: _Looks like giving permission to the app in Accessibility fixed doubled the time to get the popping/cracking for me_

Can someone help me figure out how to get this working on Catalina? I don't have a usb-c flash drive or dongle so I don't think I can do the method posted above. I have the .kext file but can't get it into the right folder because it seems to be read-only. Thanks, in advance!

Can someone help me figure out how to get this working on Catalina? I don't have a usb-c flash drive or dongle so I don't think I can do the method posted above. I have the .kext file but can't get it into the right folder because it seems to be read-only. Thanks, in advance!

This has been covered already, read previous replies. @jvco98

Someone mind telling me where I can extract the kext file from? The .dmg file, or the installed .app's package contents?

Edit: Wow, don't know how I missed it, but it's here: /Applications/eqMac2.app/Contents/Resources/eqMac2Driver.kext

Catalina has _read-only_ system volume. So, to install eqMac2, you will need to manually extract eqMac2Driver.kext, copy it to the MacOS installer usb stick (for example), boot from the stick, open terminal, go to the stick directory and copy eqMac2Driver.kext to the Extensions directory (cp -R eqMac2Driver.kext /System/Library/Extensions/)

Incorrect, it's so simple, just extract the kext then sudo cp -r eqMac2Driver.kext /Library/Extensions/
Then it's just a matter of running kextload... :)

Follow your steps but have different problem:

/Library/Extensions/eqMac2Driver.kext failed to load - (libkern/kext) authentication failure (file ownership/permissions); check the system/kernel logs for errors or try kextutil(8)

More specifically, I'm having the same as @Szkrobisz

Stumble into the same problem as @Szkrobisz
Tried this, still no luck, can't do kextload

sudo chmod -R 755 /Library/Extensions/eqMac2Driver.kext
sudo chown -R root:wheel /Library/Extensions/eqMac2Driver.kext

Update:
I found that we need to disable SIP,

  • Shutdown
  • Press Command+R and press the power button, hold it until the apple logo
  • You will enter recovery mode, click on Utilities > Terminal
  • enter 'csrutil disable' to disable SIP
  • enter 'reboot' to reboot
  • Once you logged in, enter terminal and enter 'csrutil status' to check if SIP is disabled.
  • Proceed to enter 'sudo mount -uw /'
  • then enter 'killall Finder'
  • After these step you can install the driver (I did it manually)

Remember to copy eqMac2.kext to /System/Library/Extension not /Library/Extension. After you are done, don't forget to go back to Recovery Mode and re-enable SIP with 'csrutil enable'.

Remember to copy eqMac2.kext to /System/Library/Extension not /Library/Extension.

So I followed @dontcrash 's post which copies to /Library/Extension. Still worked for me somehow. Just putting this out there.

@indrawp

Stumble into the same problem as @Szkrobisz
Tried this, still no luck, can't do kextload

sudo chmod -R 755 /Library/Extensions/eqMac2Driver.kext
sudo chown -R root:wheel /Library/Extensions/eqMac2Driver.kext

Update:
I found that we need to disable SIP,

  • Shutdown
  • Press Command+R and press the power button, hold it until the apple logo
  • You will enter recovery mode, click on Utilities > Terminal
  • enter 'csrutil disable' to disable SIP
  • enter 'reboot' to reboot
  • Once you logged in, enter terminal and enter 'csrutil status' to check if SIP is disabled.
  • Proceed to enter 'sudo mount -uw /'
  • then enter 'killall Finder'
  • After these step you can install the driver (I did it manually)

Remember to copy eqMac2.kext to /System/Library/Extension not /Library/Extension. After you are done, don't forget to go back to Recovery Mode and re-enable SIP with 'csrutil enable'.

Ok thanks, SIP was the problem :)

In all honestly, disabling SIP is in most cases just plain wrong. Hopefully this will get fixed soon.

Just commenting to show my support for this issue. Love the product, hope to get it back soon!

Cool, so in case anyone doesn't want to piece together all of the information in the thread;

sudo cp -r /Applications/eqMac2.app/Contents/Resources/eqMac2Driver.kext /Library/Extensions/
sudo kextload /Library/Extensions/eqMac2Driver.kext

No reboot required (at least for me), but I already had System Preferences > Security & Privacy > Allow Apps Downloaded from set to "Anywhere".

@Techn1x Finally something that worked for me without having to change system security or reboot...

EDIT:
I gave up using this app...
I was getting weird noise like hearing cracking noise etc...

apple@mac ~ % sudo cp -r /Applications/eqMac2.app/Contents/Resources/eqMac2Driver.kext /Library/Extensions/
apple@mac ~ % sudo kextload /Library/Extensions/eqMac2Driver.kext
/Library/Extensions/eqMac2Driver.kext failed to load - (libkern/kext) system policy prevents loading; check the system/kernel logs for errors or try kextutil(8).

any ideas, to fix this? thanx

Tested and Working! : Catalina , version 10.15.1 (19B88)

1- Go to the System Preferences -> Security & Privacy:
Open the padlock and enable Allow apps downloaded from: Anywhere
KEEP THE "Security & Privacy:" OPENED !!!

2- Install the eqMac2.dmg

3- Run on command line:
sudo cp -r /Applications/eqMac2.app/Contents/Resources/eqMac2Driver.kext /Library/Extensions/
sudo kextload /Library/Extensions/eqMac2Driver.kext
Now you'll see a message on the "Security & Privacy:" to allow the load the eqMac2 driver. Open the padlock if it's closed and allow

4- Now you can open the eqMac2 app!!

If it's not working, close the app and try to run this command:
sudo kextutil -l -v /Library/Extensions/eqMac2Driver.kext
Check if you see a message on the "Security & Privacy:" to allow the load the eqMac2 driver. Open the padlock if it's closed and allow

If the driver is properly loaded the message will be like this:

$  sudo kextutil -l -v /Library/Extensions/eqMac2Driver.kext
Password:
Defaulting to kernel file '/System/Library/Kernels/kernel'
/Library/Extensions/eqMac2Driver.kext appears to be loadable (not including linkage for on-disk libraries).
Loading /Library/Extensions/eqMac2Driver.kext.
/Library/Extensions/eqMac2Driver.kext successfully loaded (or already loaded).

If not the message is:

$ sudo kextload /Library/Extensions/eqMac2Driver.kext
/Library/Extensions/eqMac2Driver.kext failed to load - (libkern/kext) system policy prevents loading; check the system/kernel logs for errors or try kextutil(8).

or

$ sudo kextutil -l -v /Library/Extensions/eqMac2Driver.kext
Defaulting to kernel file '/System/Library/Kernels/kernel'
Kext rejected due to system policy: <OSKext 0x7fb7b7507bf0 [0x7fff90dbcd10]> { URL = "file:///Library/StagedExtensions/Library/Extensions/eqMac2Driver.kext/", ID = "com.bitgapp.eqMac2Driver" }
Kext rejected due to system policy: <OSKext 0x7fb7b7507bf0 [0x7fff90dbcd10]> { URL = "file:///Library/StagedExtensions/Library/Extensions/eqMac2Driver.kext/", ID = "com.bitgapp.eqMac2Driver" }
Diagnostics for /Library/Extensions/eqMac2Driver.kext:

@gknepper So if it fails, is it time to give up? I got the "system policy prevents..." message

No update since august 30 report
seems the "bird is dead" forever
:-(

@stewx Did you run the first 3 steps? did you allow the driver ? "Now you'll see a message on the "Security & Privacy:" to allow the load the eqMac2 driver. Open the padlock if it's closed and allow"

The message that you're facing is because the operational system don't the driver to run...

If yes try to disable the gatekeeper and repeat the process.
"sudo spctl --master-disable"

@stewx @waldi1992 Updated to macOS Catalina 10.15.2 (19C57) and still working flawlessly.

Hi all, I'm using macOS Catalina 10.15.2 (19C57) on a 2017-model MacBook Air.

Just tried the solution by @indrawp above there, and I confirm it has worked in my side. As stubborn as I was keeping SIP as a safeguard, temporarily disabling SIP to install the driver (and re-enabling it after installation - which Indra showed) is the only way that worked for me.

If you can't find @indrawp's solution, I'll just quote it here then... I've tried all his steps as follows (including the sudo chmod and sudo chown lines)

Stumble into the same problem as @Szkrobisz
Tried this, still no luck, can't do kextload

sudo chmod -R 755 /Library/Extensions/eqMac2Driver.kext
sudo chown -R root:wheel /Library/Extensions/eqMac2Driver.kext

Update:
I found that we need to disable SIP,

  • Shutdown
  • Press Command+R and press the power button, hold it until the apple logo
  • You will enter recovery mode, click on Utilities > Terminal
  • enter 'csrutil disable' to disable SIP
  • enter 'reboot' to reboot
  • Once you logged in, enter terminal and enter 'csrutil status' to check if SIP is disabled.
  • Proceed to enter 'sudo mount -uw /'
  • then enter 'killall Finder'
  • After these step you can install the driver (I did it manually)

Remember to copy eqMac2.kext to /System/Library/Extension not /Library/Extension. After you are done, don't forget to go back to Recovery Mode and re-enable SIP with 'csrutil enable'.

So far it worked for me. Either bring down SIP a while, install eqMac2's driver and then re-enable SIP; or fail in stubbornness and not use it at all. Your call.

P.S. Terima kasih Mas @indrawp :)

In addition to the steps provided by @gknepper . . .

I did sudo spctl --master-disable and sudo spctl --master-enable before and after the following steps.

In Security & Privacy > General

Unlock the settings

In Some system software was blocked from loading. > Allow... (Button)

Look for Roman Kisil (@RomanKisil ?)

Check the name and press Okay

Then try sudo kextload /Library/Extensions/eqMac2Driver.kext

Remember to disable spctl.

Hey everyone. Excuse me for the lack of updates. I have been really busy on the new version of eqMac. I am happy to announce an open beta release.
You can download it here: https://eqmac.app
There are a lot of known bugs that I could not fix just yet:

  • Driver not installing from the first try. Sometimes need to restart eqMac a couple times.
  • Complex Device switching logic is not perfect (for example when switching off the device that's currently playing, plugging in new device etc.)
  • UI takes long to load (a lot can be done to improve that)
  • UI dimensions are not synching properly
  • There's a noticeable audio delay in the playback, so not suitable for video yet (I know where the problem lies just haven't had the time to fix yet)
  • Sometimes the playback doesn't start, in that case please try to switch the output to the device you want and eqMac should try and build the audio pipeline again.

So as you can see there's still some work to be done but at least it's a completely modern tech stack that I am fully willing to work on: 100% Swift, User Space driver and a Web UI, instead of C++, Kernel Drivers. As I said, should work on Catalina and should not have any pesky ear drum blasting volume bugs (at least I didn't come across any).
I'm open to feedback and issue reports here: https://github.com/bitgapp/eqmac
That repo will become the main repo for eqMac and this repo will be archived eventually.
And yes it's called just eqMac, not eqMac3 :) And it will stay that way forever.

In addition to the steps provided by @gknepper . . .

I did sudo spctl --master-disable and sudo spctl --master-enable before and after the following steps.

In Security & Privacy > General

Unlock the settings

In Some system software was blocked from loading. > Allow... (Button)

Look for Roman Kisil (@RomanKisil ?)

Check the name and press Okay

Then try sudo kextload /Library/Extensions/eqMac2Driver.kext

Remember to disable spctl.

You're a life-saver. This worked for me!

I've tried everything I see here and none of it works for me. Even when I get the file permissions correct the kextutil reports that they are wrong. Go figure.

I even gave the app full disk access from the MAC OS security settings.

On a MBP 16" with Cat 10.15.3 with Security set to App store and Identified Developers, and the beta app @nodeful posted works flawless. It should be stressed that if ANY audio is running, it will fail.

Thanks so much!

On an iMac with Cat 10.15.3 also flawless! Thank you!

Michael, Australia

I have the "Allow apps downloaded from" set to "Anywhere". I shut down audio-playing apps and tried installing the beta and I still get the error. Are there any folder permissions I should look into changing or is there a log that can tell me what went wrong?

EDIT: I should also mention that I always have that app setting set to "Anywhere" so I didn't need to change it before attempting this install again.

@dontcrash I've managed to copy the kext into the dir but would you please explain what "Then it's just a matter of running kextload... :)" it means? (total noob here)

@scofano
Type this into your terminal:
sudo kextload /Library/Extensions/eqMac2Driver.kext

You're the best, thanks so much!

I fixed it on Catalina by doing:

  • Install from download on website
  • sudo cp -R /Applications/eqMac2.app/Contents/Resources/eqMac2Driver.kext /Library/Extensions/
  • sudo ketxload /Library/Extensions/eqMac2Driver.kext

I did sudo chown -R root:wheel /Library/Extensions/eqMac2Driver.kext but I'm not sure if it was needed
You might need to
sudo spctl --master-disable then sudo ketxload and sudo spctl --master-enable

Hey everyone 👋
I will be open sourcing the new version of eqMac, therefore, I am closing this issue and repository as I will be transfering nodeful/eqMac2 repo to bitgapp/eqMac
Please bear with me for the next couple of days as I setup that new repo. The eqMac2 code will be living in the old-eqMac2 branch if anyone is interested in referencing it for whatever reason.
Please try out the new version and report bugs to the new repo.
Thanks for using eqMac.

Was this page helpful?
0 / 5 - 0 ratings