-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
build binary for desktop Linux, with kivy GUI included #6835
Comments
The Android app uses the kivy GUI. You can use the kivy GUI on desktop Linux: |
Oh, thank you, yes!
…-------- Original Message --------
On Dec 9, 2020, 11:07 AM, ghost43 wrote:
The Android app uses the kivy GUI.
You can use the kivy GUI on desktop Linux:
https://github.com/spesmilo/electrum/tree/e3ea0f6241088c3c7fd3b2b72ae6643a0f4c9de7/contrib/android#kivy-can-be-run-directly-on-linux-desktop-how
Is this what you mean?
—
You are receiving this because you authored the thread.
Reply to this email directly, [view it on GitHub](#6835 (comment)), or [unsubscribe](https://github.com/notifications/unsubscribe-auth/AI77BHCY7KTUCW2GMHSHHADST6VEDANCNFSM4UTYQL3Q).
|
I apologize for the stupid question, but when I run the command in that section, it returns:
|
you need to install kivy first, e.g.
right, building it would need some work...
(1) is probably much more involved than (2) |
actually, a significant chunk of troubles listed there are about building Qt, which is used for the main desktop GUI, so you would not need that anyway, if you figure out how to build an appimage for ARM on an amd64 host, we would be very interested in that. |
I wonder if Flatpak might be a good alternative to AppImage? Also, whoever maintains the Debian package may wish to add Kivy as either a built-in module, or a separate package. For now I will look into AppImage, but as I try running it with just python pip, I run into an issue. Here is what I did:
(I added ~/.local/bin to my PATH) It error out however, with the following: Error: Failed to load libsecp256k1. Should this be installed as a pip module? Or apt? edit: Installed with pip and still get the same error |
Ah, found the solution here: #5606 (comment) but now im getting this:
Whereas the path should be '/home/josh/git/electrum/electrum/gui/kivy/data/style.kv' (its adding an extra electrum child that doenst exist) (Also its good to know that it still expects all its data to be in its git directory...) |
What command are you running when getting this? |
If I just run |
Sorry here is the full trace btw:
|
Alright I hunted the issue down, and in run_electrum it was concatenating KIVY_DATA_DIR and '/electrum/gui/kivy/data' so I removed the extra '/electrum' and now it doesnt complain about that, but it does throw more errors now. (fyi I have been trying this on my regular x64 laptop, not arm) Here is the error: https://privatebin.net/?f57e36c064d2a06c#9mdTT2pVGszN9Qy55TKxSkPy5KkfWKJraJq5FchsEnUG |
Ok once this is all solved I will post the complete instructions to build this on Debian, I have figured out everything except one last error:
Yet I can confirm that the file is indeed right in that path. |
Sorry for blowing up your inbox lol, I added a debug statement to /home/josh/git/electrum/electrum/gui/kivy/main_window.py right before it tries to import those fonts, to show the cwd, and it is /home/josh. It looks like its relative to the directory it is launched from as opposed to being concatenated with KIVY_DATA_DIR, since if I cd to the electrum directory and launch it, it works just fine. |
I wont mess with that issue since its easy enough to overcome in a .desktop file. I will post the entire command list I had to run in order to make this work on Debian. My last question is, can I specify the window resolution for this? It does NOT resize well at all, changing the window size jacks everything up, and it seems the actual viewport is fixed to a specific resolution (that is what I would like to statically override if possible). Here is the method to install Electrum + Kivy on Debian:
|
https://kivy.org/doc/stable/guide/config.html For me, it's at |
Hmm thanks for finding these issues. They haven't been reported before as I guess the handful of people who run the kivy GUI on Linux desktop all run |
When running kivy on Linux desktop, running from git clone, `./run_electrum -g kivy` worked, but `pip install -e .; electrum -g kivy` did not. This was due to the relative paths using cwd as base. see spesmilo#6835
Oh there is one more thing needed; Kivy isn't compiled with Wayland support but more devices are using it now (Pinephone/Pinebook/Librem5/etc). When building the image, Wayland should be enabled by installing Kivy from source (and not via pip) so that setup.py can be edited and |
Actually Im not sure about that last part, I tried making it run under Xwayland and its just a blank gray screen, but Ive been fighthing with kivy all day (i dont really know how to package things for debian properly...) so I havent been able to test with a Wayland-enabled kivy |
The kivy GUI was removed in favour of the qml GUI. |
Is it possible to build Electrum desktop with the mobile (Android) UI, or to at least make it look better? Currently Linux phones (Pinephone/Librem5) are starting to become an actual thing, and there are no crypto wallets for that screen size. These run Debian on arm64.
The text was updated successfully, but these errors were encountered: