homebrew-emacsmacport icon indicating copy to clipboard operation
homebrew-emacsmacport copied to clipboard

Homebrew Cask Crashes, Formula works

Open MorpheusMXML opened this issue 1 year ago • 5 comments

Hi, please tell me if this is the wrong place to report this. However i Updated to the 28.2 version via homebrew.

I was using the --cask version of emacs-mac with

brew install --cask emacs-mac

however after the update, and also some package updates like mu etc. the cask started to crash with some weird Error messages from the Apple Crash handler.

After some fiddling around i installed

brew install emacs-mac

as a formula and thus built it from source? (not 100% sure what the difference ist)

after that i can find the Emacs.app in the homebrew/cellar foler.

If i start this Emacs.app it all works perfectly fine and no crashes occur.

Could it be, that the Cask that is installed by brew is somehow broken? Or is it more likely that the problem is on my system? Maybe you have some Hints on where i could find out what the issue is...

Sorry if this issue does not fullfill your requirements, im not super experienced with all this and emacs in general

MorpheusMXML avatar May 08 '23 12:05 MorpheusMXML

Hi, I would like to say it is hard to know about the cask crash. Cask build should be quite stable, since it is basically build without 3rd party patches, also without native-compilation.

The biggest difference between Cask and Formula is just as you said, formula is build from source code. There is a bit more difference that Formula installs part of its files to the $(brew --prefix) tree, meanwhile Cask is an all-in-one bundle. Other than that, they are all based on the same source code and upstream. Build from Formula, you will have the chance to tuning some build options and apply some 3rd party patches.

If either of them works for you, it might be good to just stick with it. You can find more information about starter(scripts) on this page, to start Emacs conveniently https://github.com/railwaycat/homebrew-emacsmacport/blob/master/docs/emacs-start-helpers.md.

For the crash, mu is just an external process and should have less affect on Emacs itself, usually it is more likely the configuration or local data. If you can provide more information of your Mac arch (Intel or AppleSilicon), macOS version, if there was major OS ugprade between, that will be helpful.

railwaycat avatar May 09 '23 01:05 railwaycat

To verify if it is a issue on the Homebrew Cask installation, you can download the latest app bundle from release page and see if the crash still there: https://github.com/railwaycat/homebrew-emacsmacport/releases.

If there is no crash with bundles from release page, then I guess brew uninstall --cask emacs-mac and brew install --cask emacs-mac for a re-install can fix.

railwaycat avatar May 09 '23 01:05 railwaycat

Hi @railwaycat , and Wow thank you for your really nice and friendly response!

First of al this is my current machine i'm using:

MacBookPro M1 Ventura 13.3.1

So i tested a little bit around. and Indeed tried your suggestions.

I uninstalled all my Emacs installatiopns cask and formula. Then installed the cask again -> crashes with apple Crash handler

Crashed Thread:        1  org.gnu.Emacs.lisp-main

Exception Type:        EXC_CRASH (SIGTRAP)
Exception Codes:       0x0000000000000000, 0x0000000000000000

This is just a exerpt from the crash report but probably not really helpful...

Then I installed the dmg Download from the website / releases. Also crashes with the same problem.

However something that changed is, that it does not crash on startup anymore bun only when i start for example Dired. So i guess this proves, that the problem is on my machine and configuration and cant be the actual port you're providing?

Do you maybe have an idea, how i could start figuring out what goes wrong with dired?

Thanks again for your patience and time! You Rock!

MorpheusMXML avatar May 12 '23 07:05 MorpheusMXML

This is the error Report when i start emacs from Terminal with -debug-init

Fatal error 5: Trace/breakpoint trap
Backtrace:
0   Emacs                               0x00000001004f7be0 deliver_thread_signal + 56
1   Emacs                               0x00000001004f6130 seed_random + 0
2   libsystem_platform.dylib            0x000000019acd6a84 _sigtramp + 56
3   JavaScriptCore                      0x00000001b55a9314 _ZN3JSC20SecureARM64EHashPins19initializeAtStartupEv + 76
4   JavaScriptCore                      0x00000001b6068de0 _ZZN3JSC10initializeEvENK4$_11clEv + 60
5   libc++.1.dylib                      0x000000019abd36a0 _ZNSt3__111__call_onceERVmPvPFvS2_E + 180
6   JavaScriptCore                      0x00000001b606010c _ZN3JSC10initializeEv + 84
7   WebKit                              0x00000001bbb21d60 _ZN6WebKitL21runInitializationCodeEPv + 36
8   libc++.1.dylib                      0x000000019abd36a0 _ZNSt3__111__call_onceERVmPvPFvS2_E + 180
9   WebKit                              0x00000001bb904fb0 _ZN6WebKit17InitializeWebKit2Ev + 84
10  WebKit                              0x00000001bbc2fe70 -[WKWebViewConfiguration init] + 64
11  Emacs                               0x0000000100619618 -[EmacsSVGDocument initWithData:options:] + 236
12  Emacs                               0x000000010061fcdc __document_rasterizer_create_block_invoke + 40
13  Emacs                               0x000000010061f5d4 mac_gui_loop + 84
14  Emacs                               0x0000000100648430 main.cold.1 + 16
15  Emacs                               0x000000010061f508 main + 1176
16  dyld                                0x000000019a94ff28 start + 2236
[1]    33642 trace trap  emacs -debug-init

MorpheusMXML avatar May 12 '23 07:05 MorpheusMXML

I had a similar issue long ago and was related to conflict of some of the core svg files (and maybe macports).

Dired, if configured will also show svg thumbs and cause. Crashing on start-up may mean just images in general if you show startup message with gnu logo.

See if related to SVG:

  1. Save this as circle.svg:
<svg  xmlns="http://www.w3.org/2000/svg" height="100" width="100">
  <circle cx="50" cy="50" r="40" stroke="black" stroke-width="3" fill="red" />
</svg>
  1. Run: emacs -Q circle.svg and should see a red circle.

Then try the same with some png, gif or jpeg file instead of circle.svg. See if same happens.

Also, maybe see: #312

jeff-phil avatar May 15 '23 20:05 jeff-phil