Conversation
|
Check out the page preview at https://staging.delta.chat/1146/en/2025-07-20-delta-tauri-project |
| @@ -0,0 +1,231 @@ | |||
| --- | |||
| title: DeltaTauri – Porting Delta Chat Desktop to Tauri. | |||
There was a problem hiding this comment.
| title: DeltaTauri – Porting Delta Chat Desktop to Tauri. | |
| title: DeltaTauri – Porting Delta Chat Desktop to Tauri |
| The size of the Flatpak download decreased, but the platform dependency increased by 54%, so the space-saving is not that huge, unless you also have other Flatpak apps using the gnome platform dependency. | ||
|
|
||
| <figure> | ||
| <img src="{{ page.asset_prefix }}/download-size-comparison-chart.svg"> |
There was a problem hiding this comment.
I added it to the <figcaption>, is that enough? or should it be also/rather added to the image?
There was a problem hiding this comment.
Yes, I meant the images themselves.
But it's probably file.
|
|
||
| <br /> | ||
|
|
||
| | operating system & distribution format | Electron | Tauri | |
There was a problem hiding this comment.
Why is this a table, but the others are images?
There was a problem hiding this comment.
what do you mean with "others"? the charts for install- and download size or the screenshots in the previous table?
There was a problem hiding this comment.
Yes, I mean the comparison bar charts.
There was a problem hiding this comment.
my confidence that the data is accurate is much lower, because ram usage is not that easy to measure correctly when it seems to change often.
Ideally we would need more tests and use a different chart type to plot the results. But I think that is too much effort, so I would just keep the table as is.
| @@ -0,0 +1,231 @@ | |||
| --- | |||
| title: DeltaTauri – Porting Delta Chat Desktop to Tauri. | |||
There was a problem hiding this comment.
Here is a clickbait title for you (might need further adjustments, also of the excerpt)
| title: DeltaTauri – Porting Delta Chat Desktop to Tauri. | |
| title: DeltaTauri – how Delta Chat got even more Rusty |
nicodh
left a comment
There was a problem hiding this comment.
In general I consider this a good summary of the tauri proejct!
Added some suggestions...
| - It's written in Rust - memory safety and a strong type system gives you confidence to contribute. | ||
| - The rust package ecosystem has many great systems API crates that work really well and are easy to integrate. | ||
| - <!-- TODO: refine and merge this point with the previous one? --> more direct access to everything, like it is easy to contribute and leverage the underlying native APIs from rust, whereas with electron you would need more work, because there your backend code is written in JavaScript not C++, so you additionally need to add bindings for your new code. | ||
| - Confidence to contribute: |
There was a problem hiding this comment.
"Confidence to contribute" is already mentioned some lines before. Maybe change the wording in one of the 2 places?
| - missing camera and microphone support [deltachat-desktop#4932](https://github.com/deltachat/deltachat-desktop/issues/4932#issuecomment-2927910551) [tauri#8426](https://github.com/tauri-apps/tauri/discussions/8426#discussioncomment-8268622) | ||
|
|
||
| We tested the features that depend on system integration and documented the results in [deltachat-desktop#5239](https://github.com/deltachat/deltachat-desktop/issues/5239). | ||
|
|
There was a problem hiding this comment.
In the first paragraph you "some bugs" but later they are "deal-braker".
It would be helpful to say something about the show-stopper. How are the chances they will be addressed "soonish" (especially the upstream issues).
Having no mic & speaker access will be even more severe if deltachat has calls.
There was a problem hiding this comment.
It would be helpful to say something about the show-stopper. How are the chances they will be addressed "soonish" (especially the upstream issues).
I guess it is unlikely that they are addressed soon, unless someone takes the initiative and drives such an effort.
For the issues that we can solve, it depends whether that is a priority for us:
- the disappearing attachments bug is likely a core bug that we should find and fix anyway, since it could also appear outside of tauri (in theory)
- single instance hand-off -> that's likely some rust scheduling issue in our code with async, I found that hard to debug, but I guess some of our rust experts could find it easily.
Having no mic & speaker access will be even more severe if deltachat has calls.
we could access those from rust directly, if we do calls with WebRTC then this will be more of a problem, unless we also want to use WebRTC from rust. (atleast on linux, on windows and mac WebRTC, camera and microphone work fine already)
There was a problem hiding this comment.
disappearing attachments bug turned out to be a bug in interacting with macOS notification api
(which eats your image files if you don't copy them before) this was fixed in deltachat/deltachat-desktop#5733
| ### State of Tauri Edition | ||
|
|
||
| The Tauri edition has all features that the electron version has besides of the location streaming map, but there are still some bugs especially on Linux. | ||
|
|
There was a problem hiding this comment.
What's the reason for the missing location streaming map? Just not implemented due to lack of time or are there technical limitations?
There was a problem hiding this comment.
lack of "time", basically I wanted to prototype an extension system for it instead of mixing it with the webxdc code. - but this was out of scope for the nlnet project.
the webxdc method could probably be implemented in a few days, but we should really use core's http proxy instead of allowing internet access and fetching the map tiles over the browser bypassing the proxy that the user set. (also the limitation of only allowing one instance per account is not that nice when it opens in a detached window deltachat/deltachat-desktop#3846 (comment))
|
|
||
| </style> | ||
|
|
||
| There are quite some opinions floating around that Electron apps are bad because they "waste" too many resources. |
There was a problem hiding this comment.
Instead of quoting "opinions" floating around I would say "Electron apps are often critisized...
Co-authored-by: WofWca <wofwca@protonmail.com>
WofWca
left a comment
There was a problem hiding this comment.
Alright, looks good.
The date and com_id will need to be updated, of course.
Co-authored-by: WofWca <wofwca@protonmail.com>
nicodh
left a comment
There was a problem hiding this comment.
In view of the fact that there are some show stoppers with an uncertain outlook the last 2 paragraphs (Status & Conclusion) should make clear that:
- Tauri is in beta status
- it is not an official deltachat client and Tauri maintenance is depending on voluntary community work
- there is no set timetable for how it can be brought to production readiness, as there are some upstream issues whose resolution is uncertain in terms of when and how they will be fixed
The "we" in the blog post is not really clear, it could give the impression that Delta Tauri was from the very first beginning planned as next step on the official roadmap of deltachat-desktop development, while it was and is a side project to find out if it could become a step of that roadmap.
|
|
||
| <!-- refine section , maybe reword to make it more concise--> | ||
|
|
||
| Tauri has a very helpful community and our upstream contributions were accepted in a reasonable time, even though the Tauri project, like Delta Chat is currently also in a funding gap. |
There was a problem hiding this comment.
the Tauri project, like Delta Chat is currently also in a funding gap
not true for delta chat anymore, dunno about tauri.
maybe write in past tense, or write sth. different.
| <blockquote> | ||
| <p>As someone who worked on the Tauri 2.0 audit, I appreciated the use of window capabilities to further sandbox webxdc apps.</p> | ||
| <footer>— Morgan Hill <a href="https://infosec.exchange/@pcwizz">@pcwizz@infosec.exchange</a></footer> | ||
| </blockquote> |
There was a problem hiding this comment.
I want a prettier design/css for this quote.
| The Tauri edition also has a few extras that the Electron Edition has not: | ||
|
|
||
| - autostart on system startup | ||
| - webxdc apps start instantly without a loading bar |
There was a problem hiding this comment.
This is now the same as in Electron, since deltachat/deltachat-desktop#5451.
There was a problem hiding this comment.
| - webxdc apps start instantly without a loading bar |
|
|
||
| <!-- TODO rephrase --> | ||
|
|
||
| We gave the sandboxing of webxdc apps special attention, because webxdc apps can run user defined code and we gave webxdc the strong privacy by prohibiting data ex-filtration over the internet. Fortunately Tauri has a reliable way to deny access to the WebRTC API on all platforms without the [FILL500 hack](https://delta.chat/en/2023-05-22-webxdc-security#fill500-disabling-webrtc-on-chromium) (which we currently still use on Android and in the Electron edition). |
There was a problem hiding this comment.
Also here, the 500 hack is not used on Electron anymore
https://github.com/deltachat/deltachat-pages/pull/1146/changes#r2618225955
TODO