The big Thunderbird migrations and qbrt

Axel Grude axel.grude at gmail.com
Fri Mar 17 23:01:50 UTC 2017


If you are thinking of fundraising for it, keep me in mind, I would love a part time 
job for the conversion! I have some experience with C++ and obviously know the JS side 
from my Addon development.

Axel

*Axel Grude <mailto:axel.grude at gmail.com>*
Music Production and Composition
Thunderbird Add-ons Developer (QuickFolders 
<https://addons.mozilla.org/thunderbird/addon/quickfolders-tabbed-folders/>, 
quickFilters <https://addons.mozilla.org/thunderbird/addon/quickfilters/>, 
QuickPasswords <https://addons.mozilla.org/firefox/addon/quickpasswords/>, Zombie Keys 
<https://addons.mozilla.org/thunderbird/addon/zombie-keys/>, SmartTemplate4 
<https://addons.mozilla.org/thunderbird/addon/smarttemplate4/>)
Mozilla Addon Reviewer
Visit my YouTube Channel <https://www.youtube.com/c/thunderbirddaily> for email 
productivity tips Get Thunderbird!
> *Subject:*The big Thunderbird migrations and qbrt
> *From:*R Kent James <kent at caspia.com> <mailto:kent at caspia.com>
> *To:*Tb-planning
> *Sent: *Friday, 17/03/2017 19:13:29 19:13 GMT ST +0000 [Week 11]
> Myk Melez, who has been pushing various ideas for embedded Gecko, has a new twist on 
> his plans:
>
> https://mykzilla.org/2017/03/15/introducing-qbrt/
>
> Essentially this "reuses an existing Gecko runtime (and its existing APIs) while 
> simplifying the process of developing and packaging a desktop app using web 
> technologies." He previously had tried to develop a gecko-flavored version of 
> Electron called Positron, but abandoned that. The main difference is that Positron 
> tried to duplicate the existing Electron APIs, while qbrt simply packages the 
> existing Gecko APIs into a desktop app package, relying on XPCOM and web apis to 
> provide the equivalent to the Electron APIs.
>
> Thunderbird essentially faces three relatively separate challenges in converting its 
> backend away from the current binary recompile of Firefox: C++->JS, XUL->HTML, and 
> XPCOM->SomethingElse. qbrt AFAIUI uses a stock Firefox compile, so any C++ used by 
> Thunderbird would need to be converted to JS. But the other two conversions could 
> wait. So this could serve as an interesting intermediate step to conversion. We 
> could even hope that build related issues would be vastly simplified if we only 
> needed to package non-binary files.
>
> Having spent the last year doing C++->JS conversions in ExQuilla, I have pretty good 
> metrics on how difficult that is. Scaling to all of Thunderbird C++, it represents 
> about 10 person-years of effort. That is a much more imaginable amount of effort 
> than the roughly three times that which would be required to do a complete 
> conversion of all three technologies.
>
> There is still a lot of uncertainty about the direction of Gecko. The platform team 
> seems absolutely determined to rip anything out of Gecko that is not directly used 
> by either Firefox or required by WebExtensions. It's hard to believe that there are 
> not going to be some gotchas in the core C++ that we will need to work around. 
> Perhaps it would be possible to have an EmbeddedApps branch of mozilla-central that 
> would not be difficult to maintain. Then there is the moving target of what is still 
> left of XUL and XPCOM as they move to eventually eliminate those. Challenges.
>
> Still, we need to do something. I think that we should seriously considering allying 
> with Myk and qbrt to try to move forward a gecko-based desktop app environment. With 
> enough partners, that might help convince the platform team that this is worth 
> supporting, at least minimally.
>
> :rkent
>
> _______________________________________________
> tb-planning mailing list
> tb-planning at mozilla.org
> https://mail.mozilla.org/listinfo/tb-planning
>


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/tb-planning/attachments/20170317/6df5deea/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: thunderbird_blog2.png
Type: image/png
Size: 846 bytes
Desc: not available
URL: <http://mail.mozilla.org/pipermail/tb-planning/attachments/20170317/6df5deea/attachment.png>


More information about the tb-planning mailing list