Ubuntu touch app

wow, that looks very nice - and it looks already quite usable :slight_smile:

1 Like

Ok, thank you. I’ll see to push it to a repo soon.

Thanks :blush:

@lk108 great! that looks nice and promising!

tip: for the “Unknown message type” you can actually use the message summary, Delta Chat always have a text representation for messages so if your app doesn’t support image attachments yet, the message will look like “Image - hey, look at this flower” which is good enough for an start instead of a “unsupported message type” placeholder

1 Like

Thank you for the tip! Looks much better with it. But it’s really time to implement the image viewer :smiling_face:

1 Like

you could also just check for the filename property for unknown messages types and provide link/button to open path externally + message text

1 Like

Sounds good. I’ll implement this once I’ve learned how to deal with the “content hub” of Ubuntu Touch.

1 Like

@lk108
I don’t have Ubuntu Touch, but would like to look into the source code, especially since it is written in QML. I made a Kirigami2 client ~link2xt/kdeltachat - sourcehut git, it is functional and I use it sometimes, but it is not actively developed at the moment. Maybe at least some C++ parts can be shared or we can make a single convergent QML app for all kinds of mobile Linux. There is a related thread at Native Client for Linux based mobile OS - #19 by link2xt

Wrt. licensing if you intend to publish as GPLv3, see how it is done in ~link2xt/kdeltachat - sourcehut git. I think it’s a good idea to have an explicit OpenSSL exception because its compatibility to GPLv3 is sometimes questioned and boils down to whether you can consider OpenSSL a “System Library”. The “GPL-3+ with OpenSSL exception” is also what Kaidan application does in LICENSE · master · Network / Kaidan · GitLab

1 Like

Thanks for the hint regarding the OpenSSL exception. I hesitated to upload because although Simon told me that it’s ok to use GPLv3, I came across this gnu.org page which states that I would have to use AGPLv3 instead of a pure GPLv3 when linking to MPL2. So it seems to me that the GNU people think that the exception would have to include deltachat-core, too, or am I misunderstanding something?

I am wondering about the consequences if i just put these exceptions into the license - would it block re-using pure GPLv3 code from other projects?

Once I’m clear about the license issue, I am ready to upload. It’s still under heavy development, though, so the app is not really functional yet. And I have to admit that I’m a little bit afraid that the quality of my code will disappoint as I am just a hobby programmer and very inexperienced.

That said, your suggestion to share C++ parts or even make a single convergent app sounds good! The latter might require quite some effort, but why not work in this direction.

The page says “This is a free software license. Section 3.3 provides indirect compatibility between this license and the GNU GPL version 2.0, the GNU LGPL version 2.1, the GNU AGPL version 3, and all later versions of those licenses.” This means you can use GPLv2, GPLv2+, GPLv3, GPLv3+ etc. You can just license with GPLv3+ as a license, it is compatible according to the page.

I decided to use GPLv3+ with an explicit OpenSSL exception, because Delta Chat core has an option to be linked to OpenSSL and OpenSSL has a GPL-incompatible license. GPL explicitly allows to link even to proprietary “system libraries” (e.g. linking to proprietary Windows API is fine for a GPL program), but whether to consider OpenSSL a system library is not obvious. Most Linux distributions, e.g. Debian, consider it to be acceptable, but adding an explicit exception avoids such questions.

No, it would not block anything. If you combine GPLv3+ code that you wrote with some GPLv3+ code from the other project, you can only provide OpenSSL exception for the code you wrote, but it is still arguably better than not providing such an exception at all. If someone is concerned about whether OpenSSL is a “system library”, they can remove/rewrite GPLv3+ code that does not have OpenSSL exception.

See https://opensource.stackexchange.com/questions/2233/gpl-v3-with-openssl-exception, OpenSSL exception is a fairly standard thing to do.

It’s also fine to upload without a license at all until you decide, in this case it’s effectively a proprietary software until you allow others to use it :slight_smile:

2 Likes

Alright then, here we go:

7 Likes

Finally, we have an Ubuntu Touch app ready for using. Thanks so much for that. Can you push this app to the OpenStore?

2 Likes

Successfully build the app and run it on a Google Pixel 3a powered by UT 20.04. Backup import from Android app works flawlessly.

If you need a beta tester - here I am :slight_smile:

6 Likes

Oh wow, that’s great. None of my devices has been ported to 20.04 yet, so I wasn’t able to test it on 20.04. And I thought that coming from 16.04, some changes are necessary to make it run on 20.04. I’m pleasantly surprised that it works.

Much of the functionality is already there, but some things I consider critical for an official release are still missing, so the upload to the OpenStore is still at least a few weeks away.

It would be very cool to have you as beta tester :slight_smile: I will DM you.

6 Likes

@lk108 How hard would it be to adapt the app to also work on any regular Linux distro?

1 Like

I think the app is quite specific due to Ubuntu Touch’s content hub, confinement policy etc. If you want an alternative to the regular DC Linux client, maybe you can take a look at kdeltachat by @link2xt, see one of the posts above dated Jan 22.

1 Like

Update for the lurkers and other people revisiting this:
DeltaTouch is coming along nicely and will come to the open store soon. I just tried it.

Thank you very much @lk108 for making this idea a reality

4 Likes

Thank you very much for testing and posting this update. I was able to get this far due the intuitive structure of libdeltachat and its excellent documentation. Working with this library is fun and very smooth.

5 Likes

App is available on the OpenStore now!
Link: OpenStore

Thanks again to @lk108 for making this. :tada:

3 Likes

Hello :wave:,
looks very good! :+1:
I also like that only the lower one of the speech bubbles that follow each other closely in time has an edge. Nice detail.
Maybe this should be adopted in the other DC versions.

4 Likes