I really liked the concept of Delta Chat and was about to package the desktop client into Guix. But then I found that it is based on electron/npm. I have been told by distribution maintainers, that it is extremely difficult to package something that is based on electron/npm and the attempts are usually avoided. I thought of using Flatpak, but it would defy the purpose of packaging it, so as to use the package-manager features. I request the project to consider porting the desktop client to a different suitable platform. May be Python or minimal-language like Scheme.
There is a TUI client in Python: https://github.com/adbenitez/deltachat-cursed
Thanks!
It would be great to have full-featured GUI client.
I’m not quite sure what the problem with npm and electron is, sure it is not pretty and resource intensive, but why should it be impossible to package?
There are discussions about native desktop apps: see Are there any native linux desktop apps in the works? and Native Client for Linux based mobile OS
Thank you for the info!
I have been told the following:
The problem that Guix has with Electron and NPM is that software like that is extremely hard to package with Guix. Although the source code is free, the dependency graphs have thousands of nodes, and there are cycles in the graph; Guix cannot handle cycles.
Anyway, please do not feel pressured about this request for port. I just wanted to let you know the problem we are facing on our end.
As you mentioned flatpak, there’s already a working flatpak
https://flathub.org/apps/details/chat.delta.desktop
There is an attempt to package a binary version of electron in the nonguix repository:
This does not work yet and using a binary version is likely not what we want, I am not even sure if it includes non-free components from Chrome.
Linking to related topic: