mirkosertic/MogwaiERDesignerNG

Running on MacOs

myartsev opened this issue · 28 comments

I'm having trouble getting this to run on MacOs.

As I understand, setting up a build environment from source is a non-trivial process here and there's no documentation (that I've come across) for doing so.

The binary releases also don't appear to have binaries build for MacOs.
I tried installing the rpm binaries, by first running

brew install rpm

and then

rpm -i erdesignerng-3.1.1-1.x86_64.rpm

However, I'm getting this error message

error: Failed dependencies:
	/bin/sh is needed by erdesignerng-3.1.1-1.x86_64

Is MacOS supported? What am I missing?

There are currently no native MacOS packages.

However, you could try the plain .zip/tar.gz packages located at https://github.com/mirkosertic/MogwaiERDesignerNG/releases/tag/3.1.1. They should work also for OSX.

Pleas note: a Java12 runtime is required!

Thanks! I got it to work with the tar.gz package and copying over the java3d MacOs library binaries

Cool! Please feel free to submit PRs to make ERDesignerNG work out of the box for MacOS:-)

I'm having an issue running on OSX also.. Using Java 13.

A-0673:mogwai-erdesignerng-3.1.1 $ sh ./run.sh
Mogwai SmartStart

Base directory is .
Main class is de.erdesignerng.visual.ERDesigner
Exception in thread "main" java.lang.NullPointerException
at de.mogwai.smartstart.SmartStart.addJarsTo(SmartStart.java:41)
at de.mogwai.smartstart.SmartStart.main(SmartStart.java:70)

@jsutherland-llnw Please see @myartsev comment about a workaround for this issue.

@jsutherland-llnw Please see @myartsev comment about a workaround for this issue.

I've come to do this now on my mac, and whilst I'd consider myself quite advanced in most IT topics, simply saying he copied over the libraries isn't really a descriptive workaround given I've already just read that above nor conclusive (especially for a reply a month later 👍 ).

So, now I'd have to go find these java3d libraries, hope they are the right version to be compatible and I'm putting everything in the right place, to potentially get it to work...

In the meanwhile, there was progress for MacOS builds. Please checkout the latest Github Actions build located here: https://github.com/mirkosertic/MogwaiERDesignerNG/actions/runs/86752811. It includes Windows,Linux and MacOS artifacts.

Ooo, I'll do that then 👍

Unfortunately, I received:
image

I'm going to try again, as it could just be a bad download for some reason but it didn't give any errors whilst downloading.

Tried a few times now, and even when I move the file out of the DMG, I still get:
image

Could this be a dependancy issue still?

I don't know. Without logs, this is hard to investigate.

Is there any logs that would show this? I diagnosis issues with a lot of technology on a regular basis, on many platforms, so problems are always intriguing to me.

I presume your apps aren't signed then?

I don't have a Mac handy here, but I guess the Console app is a place to start. Do you have some User Reports there?

The Build is not signed at the moment for MacOS.

Let me see if i can allow a single unsigned app, I really don't want to allow all unsigned which the above suggests it will.

OK, so the official way according to Apple is to Control-Click and select Open.
https://support.apple.com/en-gb/guide/mac-help/mh40616/mac

However, I still get the error. I will see if I can find any logs since the only options it gives me are move to bin and cancel.

So I did:

grep "ERDesignerNG" system.log
Apr 27 15:47:36 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x1000009b.ERDesignerNG[61005]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution
Apr 27 15:49:17 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x1000009c.ERDesignerNG[61010]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution
Apr 27 15:49:54 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x1000009d.ERDesignerNG[61030]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution
Apr 27 15:50:24 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x100000a0.ERDesignerNG[61059]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution
Apr 27 15:50:58 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x100000a3.ERDesignerNG[61087]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution
Apr 27 15:51:58 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x100000a4.ERDesignerNG[61090]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution
Apr 27 16:21:58 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x100000a5.ERDesignerNG[61169]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution
Apr 27 16:27:18 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x100000a6.ERDesignerNG[61275]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution
Apr 27 16:27:50 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x100000a7.ERDesignerNG[61279]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution
Apr 27 16:30:23 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x100000a8.ERDesignerNG[61302]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution

This suggests that it is gatekeeper that is blocking it, but the control-click which is supposed to work, isn't doing. A search on that specific message leads to https://forums.developer.apple.com/thread/126187 but I have no idea if it is likely to be related to what your code is doing ❓

I have tried using the command line method of add this as an exception which appears to work but then the app still fails. One thing to watch is that when you run the command in terminal, it pops up a dialog for the password, but does not focus it.

spctl --add /Applications/ERDesignerNG.app 

So I have now tried:

% sudo spctl --master-disable                
Password:
% sudo spctl --status
assessments disabled

image

And then ran the app again in the spirit of complete testing. Since the assessments were disabled but it still failed, this would suggest a bad package after all except I was still seeing GateKeeper get in the way:

Apr 27 17:42:22 net-mac com.apple.xpc.launchd[1] (com.apple.xpc.launchd.oneshot.0x100000b1.ERDesignerNG[61701]): removing service since it exited with consistent failure - OS_REASON_EXEC | Gatekeeper policy blocked execution

For reference, this is my OS version:
image

Just to be sure, I tried a previous build or two and got the same issue.

Unfortunately, I have still failed to get the Mac asset to run at all under Catalina. Disappointing as I was hoping to use this over the weekend.

Wondering if anyone has managed to figure this out yet?

Just to say, this is still an issue with the latest builds an not fixed yet:
image

I actually found a fix that worked in minutes this time round ... (spent hours last time as the above posts show and got nowhere)

sudo xattr -cr /Applications/ERDesignerNG.app

Run the above in Terminal or iTerm2 or whatever shell app you are using. Not sure why that is necessary, but I now get the application to open...

image

Since the above basically removes all attributes from files, not sure what that might break if anything long term, so use with extreme caution!

Hallo.

Is it possible to download this .app that was built, please? (artifact has expired) OSX is on version 12.3 now, but the action might work.