Cabbage Logo
Back to Cabbage Site

Issues running on MacOS

Due to Apple’s increasingly difficult security measures, Cabbage might no longer run out of the box. Especially the automated beta builds. The reason is the application is not signed and officially notarised. To get around this issues you need to sign the application. This is a simple procedure and can be done with the codesign app which is included with all recent flavours of MacOS. Here are the steps:

  1. Install Cabbage as usual.
  2. If it doesn’t run, open the terminal
  3. Run cd /Applications
  4. Then run sudo codesign -s - Cabbage.app --timestamp --deep --force

Cabbage should run after that. Note that if you hit issues running the main app, you might also have problems with exported plugins. In which case you will need to sign the exported plugins too. Please check the forum for further information.

1 Like

I don’t know if what I’m going to write here its the same thing you talking about, but , when I installed cabbage on my M1 it told me it can’t be installed because unverified developer, I just went to my preferences/ security/enter my password and hit install anyway, its this the situation you are explaining, I’m using older versions of cabbage on m1 chip no problem, I also do not update my 0S " like never" once my studio is running perfect I won’t update anymore because of those type of issues with apple in the past.
the latest cabbage I got is the 2.8.3, when I find issues exporting ( like today, I noticed the vst won’t remember last sounds used and load empty when I recall the session), I just went back to cabbage 2.6.5 and exported again from there and problem solved , might not be the right way but I can do the job until everything its fixed with apple, I hope I said something here that help.

Thanks for the report. It good to know that the versions of Cabbage built with older versions of Xcode still work Ok. The problem is I can no longer install those older versions of Xcode.

I got a raspberry pi 4 and I’m planing to code there, my question is, if you build a newer version of cabbage in linux and I code there, when I transfer my job to this older version of cabbage on my Mac it would work? as it work now with version 2.6.5?

its possible that by doing that we cheat apple?

No, because software compiled on Linux will not work on macOS.

I’m adding to this thread as this seems related to Apple’s tightening security. I’m not able to write to disk from Cabbage, i.e. using things like fout, pvsfwrite. This is on OS 12.6. The same code works on OS 10.13. Also, the same opcodes work fine using Csound without Cabbage on 12.6.


The error is produced whether the file is pre-exisiting or not.

Can you try writing to USER_DOCUMENTS_DIRECTORY?

SDir sprintf "%s/FileRecoder.wav", chnget:S("USER_DOCUMENTS_DIRECTORY")

sort of thing. This is where Apple tells us to save documents to. I’m hoping that will work.

“USER_DOCUMENTS_DIRECTORY” produces “/Users/iainmccurdy/Documents” but reading/writing within that location still throws the same error:

INIT ERROR in instr 9000 (opcode fout) line 81: error opening sound file 'FileRecorder_2023_Jan_09_13_27_08.wav'
         from file /Users/iainmccurdy/Documents/FileRecorder.csd (1),	fout	gSname	8	gaL	gaR	
        		   T  3.207 - note deleted.  i9000 had 1 init errors

I like your phrase “This is where Apple tells us to save documents to.” We are merely Apple’s slaves.

I was little surprised that Csound on its own didn’t produce the same error.

I’ll try this out on my own Mac later and let you know. Maybe it’s something less sinister…

[edit] Just tried it now @iainmccurdy on 11.4 and it seems to work fine, so long as I set an absolute path. Here is my hacked version of your file record instrument.

FileRecord.csd (3.4 KB)

That’s it. If I specify the full path when writing a file it works for me too.

As a side note, I noticed that when invoking pwd (Csound opcode) in Cabbage (ver. 2.8.159) it produces ‘/’, so the system root and not the location of the csd, whereas on my 10.13 Mac running ver. 2.8.117 it produces the location of the csd. Is this the issue?

Yes, Cabbage used to change the current working directory to that of the csd file. But this was causing issues in Sibelius and other hosts, so I changed it. It’s probably good practice to pass a whole path anyway, but yeah, sorry about that :stuck_out_tongue_winking_eye:

1 Like

Hi
I am posting this here, since it might be related to the discussed problems. I have issues with getting Ableton Live to load plugins compiled with Cabbage on MacOS. This was something that first occurred when I updated from OS11 to 12 on my MacbookPro. When I hit the “rescan” button in Live, I see that Live reads the file (low left on the window), but it doesn’t show in the browser of Live, not even the subfolder that I made in Finder. I have tried to make both AU, VST and VST3 plugins with the same result.
This could be a problem specifically with Live, since the plugins load in Reaper, but I wanted to check if anyone else are experiencing similar problems, and has perhaps found a solution. When I run examples in Cabbage, they seem to work fine.
I have checked the
BTW, I have had the same problem on both my macs:
A MacBookPro 2019 with MacOS 12.6, tested with Cabbage version 2.8.142, Csound 6.18 with Live 10.1.43
A MacMini 2022 with MacOS 13.0 tested with Cabbage versoin 2.8.154, Csound 6.18, with Live 11. Here I also tested with the “Start with Rosetta” option.
Other things I’ve tried without result:

  • Followed the recommended steps on Ableton’s pages: https://help.ableton.com/hc/en-us/articles/115000349184-VST-AU-plug-in-doesn-t-appear-in-Live-s-Browser
  • Signed Cabbage with the steps in the original post, without result.
  • In terminal: run xattr -rd com.apple.quarantine filename to fix permission issues.
    Earlier I have seen a post by relinking Cabbage and Csound, but I couldn’t figure out how to repeat those measures. I have a Cabbage workshop with my Csound students in February 22, and hope that I can fix this before that time, since I know a lot of the students are using Live as well.
    Any tips on what to do to remedy this issue?
    Best, Andreas

Have you enabled the adhoc signing setting in Cabbage? I don’t think much has changed from macOS 11 and 13 in terms of signing.

Btw, it’s not Cabbage you need to sign but each plugin you export.

Ah, that’s right! I did that, and that made Live recognize the plugin, but still it reported an error. When I afterwards did the xattr thing mentioned in my post, the plug worked!
So thank you for pointing me to that option!
Best, Andreas