spesmilo / electrum

Electrum Bitcoin Wallet
https://electrum.org
MIT License
7.52k stars 3.1k forks source link

Crash when opening a wallet file on an Apple M1 #7233

Open Zettt opened 3 years ago

Zettt commented 3 years ago

Hello,

I got my new M1 machine a couple days ago, and wanted to start Electrum. The app starts fine, but when I select a wallet file in the open dialog, the entire computer crashes. I didn't try anything else, e.g. creating a "new" wallet from scratch to see if that also causes the computer to restart. Is this a known issue or is it just me? Where do I find logs for Electrum?

Thanks.

SomberNight commented 3 years ago

wanted to start Electrum

How are you running Electrum? Is it via the .dmg binaries from the website? Or are you running from source?

the entire computer crashes

As in kernel panic? Or what do you mean?

Is this a known issue [...]?

No, I don't think so.

Where do I find logs for Electrum?

see https://electrum.readthedocs.io/en/latest/faq.html#how-to-enable-debug-logging

Zettt commented 3 years ago

How are you running Electrum? Is it via the .dmg binaries from the website? Or are you running from source?

I'm running the .app via homebrew cask. So not from source.

As in kernel panic? Or what do you mean?

Doesn't look like a kernel panic, because I don't get the standard "your computer has kernel panicked" message. The screen goes pink, and then the machine reboots.

Where do I find logs for Electrum?

I used -v on run_electrum on the command line. I hope that's how it works. Seems a bit inconclusive to me. A whole bunch of SSL errors at the end.

I should probably mention that I see the "you should always update to the latest version" message at the end, before it eventually crashes. I can't click it though.

Terminal Saved Output.txt

SomberNight commented 3 years ago

Doesn't look like a kernel panic, because I don't get the standard "your computer has kernel panicked" message. The screen goes pink, and then the machine reboots.

:O That's clearly not something a user-space app should be able to induce; at the very least there is also a bug somewhere in kernel-space.

I used -v on run_electrum on the command line. I hope that's how it works. Seems a bit inconclusive to me. A whole bunch of SSL errors at the end.

Right, I can't see anything interesting in the logs.

I should probably mention that I see the "you should always update to the latest version" message at the end, before it eventually crashes. I can't click it though.

Do you mean that's part of the logs and the only reason you haven't included it is you don't have time to copy-paste it because the machine crashes? Sounds like that message could be part of a server's banner? Although I don't think we log those...

Zettt commented 3 years ago

Do you mean that's part of the logs and the only reason you haven't included it is you don't have time to copy-paste it because the machine crashes? Sounds like that message could be part of a server's banner? Although I don't think we log those...

Nope, I meant that's the last thing I see the app do before the machine goes down. I was hoping it might help figuring out where in the process the app actually shuts down.

frndxyz commented 3 years ago

anyone is able to build a binary with apple silicon M1, osx11 Big Sur? i am able install all dependencies with Rosseta environment. also can be run from source succesfully.

but at building time i am getting below error:

INFO: Building binary contrib/osx/make_osx: pyinstaller: command not found ERROR: Could not build binary

SomberNight commented 3 years ago

pyinstaller has multiple open issues about building on macos 11, and also about apple silicon M1. see e.g. https://github.com/pyinstaller/pyinstaller/issues/5315

we ourselves are building the .dmg release binary on an older macos VM (see https://github.com/spesmilo/electrum/blob/master/contrib/osx/README.md)

Zettt commented 3 years ago

I don't think I can be much help here. I don't know enough about compiling binaries. I'm already struggling with point 1b on the README page. I can't see what dependencies to install, etc. If there's anything I can help with, I can try to squeeze it in.

SomberNight commented 3 years ago

No, don't bother with trying to build a binary on Apple M1; it is up to the pyinstaller project to fix that (unless you have relevant experience and can help them).

To be clear, the issue in OP is a separate distinct issue from building a binary on Apple M1. The release binaries are built on an older mac but that should be perfectly fine and unrelated.

@frndxyz I'm assuming you have an Apple M1 given your comment. Have you tried running the Electrum release binary? Can you reproduce OP's issue?

frndxyz commented 3 years ago

pyinstaller has multiple open issues about building on macos 11, and also about apple silicon M1. see e.g. pyinstaller/pyinstaller#5315

we ourselves are building the .dmg release binary on an older macos VM (see https://github.com/spesmilo/electrum/blob/master/contrib/osx/README.md)

@SomberNight i finally able to build binary. but i think some library not packaging in build. so build run in my MAC M1. but not in other mac.

i am getting below missing errors when build. i assume its related to xcode.

12655 ERROR: Can not find path /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/QtGui.abi3.so) 12656 ERROR: Can not find path /usr/lib/libc++.1.dylib (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/QtGui.abi3.so) 12656 ERROR: Can not find path /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/QtGui.abi3.so) 12656 ERROR: Can not find path /System/Library/Frameworks/Metal.framework/Versions/A/Metal (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/QtGui.abi3.so) 12656 ERROR: Can not find path /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/QtGui.abi3.so) 12656 ERROR: Can not find path /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/QtGui.abi3.so) 12656 ERROR: Can not find path /System/Library/Frameworks/AGL.framework/Versions/A/AGL (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/QtGui.abi3.so) 12656 ERROR: Can not find path /usr/lib/libSystem.B.dylib (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/QtGui.abi3.so) 12660 ERROR: Can not find path /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /usr/lib/libobjc.A.dylib (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /usr/lib/libc++.1.dylib (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /usr/lib/libz.1.dylib (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /System/Library/Frameworks/Metal.framework/Versions/A/Metal (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /System/Library/Frameworks/AGL.framework/Versions/A/AGL (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /System/Library/Frameworks/CoreText.framework/Versions/A/CoreText (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12661 ERROR: Can not find path /usr/lib/libSystem.B.dylib (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtGui.framework/Versions/5/QtGui) 12665 ERROR: Can not find path /usr/lib/libobjc.A.dylib (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtCore.framework/Versions/5/QtCore) 12665 ERROR: Can not find path /usr/lib/libc++.1.dylib (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtCore.framework/Versions/5/QtCore) 12665 ERROR: Can not find path /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtCore.framework/Versions/5/QtCore) 12666 ERROR: Can not find path /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (needed by /Users/pravin/.local/lib/python3.7/site-packages/PyQt5/Qt5/lib/QtCore.framework/Versions/5/QtCore)

SomberNight commented 3 years ago

@frndxyz All this is off-topic for the current issue, I had hoped that was already clear... Please open a separate issue - but in any case this will need to be fixed upstream for the pyinstaller project, like I had already said.

My question was specifically whether you are able to run the release binary.

frndxyz commented 3 years ago

@frndxyz All this is off-topic for the current issue, I had hoped that was already clear... Please open a separate issue - but in any case this will need to be fixed upstream for the pyinstaller project, like I had already said.

My question was specifically whether you are able to run the release binary.

ok sure i will try the binary in silicon M1, close this issue for now. as they said pyinstaller 4.2 has fixed issue. but it doesnt seems to be work.

Zettt commented 3 years ago

Good morning.

I have an update on this issue. It's possible this crash is actually not caused by the M1 being weird. I have the wallet file on a different volume where it's encrypted and stored away from the main machine inside a Cryptomator volume. I have a similar crash happening with the Monero wallet. I could not figure out what exactly causes things to misbehave but I'm on it, and will update here, when I figure it out. I presume it's something caused by permissions being weird.

Zettt commented 3 years ago

In case anyone wants to track the progress, here's my post on the Cryptomator forum. https://community.cryptomator.org/t/crash-on-new-computer-on-a-volume-restored-from-backup/7909