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

Thunderbird 57+ support #238

Open
salaros opened this Issue Feb 1, 2018 · 67 comments

Comments

Projects
None yet
@salaros

salaros commented Feb 1, 2018

This message is for contributors (people who fork this repo): please implement mozilla57+ migrations in order to make this addon compatible with TB 57+

@UksusoFF

This comment has been minimized.

Show comment
Hide comment
@yannours

This comment has been minimized.

Show comment
Hide comment
@yannours

yannours Mar 5, 2018

@salaros You can still use the actual firetray for thunderbird 50+ by force download the addon & install it manually in the option, I did it for 52.6.0 (64-bit) and it works properly.

yannours commented Mar 5, 2018

@salaros You can still use the actual firetray for thunderbird 50+ by force download the addon & install it manually in the option, I did it for 52.6.0 (64-bit) and it works properly.

@salaros

This comment has been minimized.

Show comment
Hide comment
@salaros

salaros Mar 5, 2018

@yannours yeah, it worked on versions <= 52, but as you can see I opened this ticker for versions >= 57
If you don't believe me, just try upgrading to Thunderbird 57/58 👍

salaros commented Mar 5, 2018

@yannours yeah, it worked on versions <= 52, but as you can see I opened this ticker for versions >= 57
If you don't believe me, just try upgrading to Thunderbird 57/58 👍

@yannours

This comment has been minimized.

Show comment
Hide comment
@yannours

yannours Mar 5, 2018

@salaros Ofc I believe you :) My bad wasn't wondering a 57+ disrupting, no way for me to upgrade so :D

yannours commented Mar 5, 2018

@salaros Ofc I believe you :) My bad wasn't wondering a 57+ disrupting, no way for me to upgrade so :D

@salaros

This comment has been minimized.

Show comment
Hide comment
@salaros

salaros Mar 5, 2018

@yannours some massive API changes took place in 52 -> 57/58 transition, with many breaking changes
That's why I wanted some to take a look at it, before I got with a rewrite (probably I will have to, right after TB 57/58 goes stable)

salaros commented Mar 5, 2018

@yannours some massive API changes took place in 52 -> 57/58 transition, with many breaking changes
That's why I wanted some to take a look at it, before I got with a rewrite (probably I will have to, right after TB 57/58 goes stable)

@ghost

This comment has been minimized.

Show comment
Hide comment
@ghost

ghost Mar 9, 2018

Is someone planning to fork this project?

ghost commented Mar 9, 2018

Is someone planning to fork this project?

@salaros

This comment has been minimized.

Show comment
Hide comment
@salaros

salaros Mar 9, 2018

@jonlandrum I'm planning to do it if I fail to find a new maintainer for TB 57+ version here, I already maintain tons of open-source projects (some of them are mine, some were adopted), that's why I'm hesitating and trying to find some help before attempting a rewrite by myself

salaros commented Mar 9, 2018

@jonlandrum I'm planning to do it if I fail to find a new maintainer for TB 57+ version here, I already maintain tons of open-source projects (some of them are mine, some were adopted), that's why I'm hesitating and trying to find some help before attempting a rewrite by myself

@kelvinau

This comment has been minimized.

Show comment
Hide comment
@kelvinau

kelvinau Jun 18, 2018

It will be great for 60+ version too :)

kelvinau commented Jun 18, 2018

It will be great for 60+ version too :)

@s-m-e

This comment has been minimized.

Show comment
Hide comment
@s-m-e

s-m-e Aug 19, 2018

In case anyone is considering a fork or devoting some time into making just any tray add-on for Thunderbird 60+ work again, I am hereby cross-referencing MinTrayR issue 238.

s-m-e commented Aug 19, 2018

In case anyone is considering a fork or devoting some time into making just any tray add-on for Thunderbird 60+ work again, I am hereby cross-referencing MinTrayR issue 238.

@CubicF

This comment has been minimized.

Show comment
Hide comment
@CubicF

CubicF Aug 19, 2018

I forked FireTray yesterday (because it seems to be the only minimize-to-tray extension that shows the number of currently unread messages) to see how far I can get (I had no experience with JS yet).

I did some minor updates according to the Thunderbird/Add-ons Guide 57 but ran into the problem that the .xpi file was not unpacked during installation (addon.pack in XPIInstall.jsm in line 1858 is not set).

I managed to install the extension using a text file to reference the unpacked extension files as described here. But after the installation of the extension Thunderbird crashes within seconds after every application start.

I was not able to figure out how to properly debug the extension on startup. So my next approach would be to turn the extension into a bootstrapped extension to make debugging easier. I already began the work in the bootstrap branch, but step 6 seems to be a bit more work that I won't have time for in the next few weeks.

CubicF commented Aug 19, 2018

I forked FireTray yesterday (because it seems to be the only minimize-to-tray extension that shows the number of currently unread messages) to see how far I can get (I had no experience with JS yet).

I did some minor updates according to the Thunderbird/Add-ons Guide 57 but ran into the problem that the .xpi file was not unpacked during installation (addon.pack in XPIInstall.jsm in line 1858 is not set).

I managed to install the extension using a text file to reference the unpacked extension files as described here. But after the installation of the extension Thunderbird crashes within seconds after every application start.

I was not able to figure out how to properly debug the extension on startup. So my next approach would be to turn the extension into a bootstrapped extension to make debugging easier. I already began the work in the bootstrap branch, but step 6 seems to be a bit more work that I won't have time for in the next few weeks.

@rodricels

This comment has been minimized.

Show comment
Hide comment
@rodricels

rodricels Aug 22, 2018

@CubicF FYI, I tried your fork (bootstrap and thunderbird_quantion branches), thanks!

I found:

  • installation works (without restart in bootstrap branch)
  • configuration window doesn't save
  • on bootstrap branch, the "start minimized" doesn't work, maybe because the configuration windows doesn't have icon names (quantion branch have it and works fine)

Thunderbird 60, Ubuntu 18.04 with Cinnamon 3.8

rodricels commented Aug 22, 2018

@CubicF FYI, I tried your fork (bootstrap and thunderbird_quantion branches), thanks!

I found:

  • installation works (without restart in bootstrap branch)
  • configuration window doesn't save
  • on bootstrap branch, the "start minimized" doesn't work, maybe because the configuration windows doesn't have icon names (quantion branch have it and works fine)

Thunderbird 60, Ubuntu 18.04 with Cinnamon 3.8

@jamesrobb

This comment has been minimized.

Show comment
Hide comment
@jamesrobb

jamesrobb Aug 23, 2018

@CubicF I also tried your fork. It installed, but it didn't seem to do anything.

There didn't appear to be any configuration menu available from the add-ons menu, and I didn't see any icons in my system tray. I'm not sure what exactly the expected behaviour should be.

Thunderbird 60, Manjaro Linux 17.1.12 with Gnome 3.28.2

jamesrobb commented Aug 23, 2018

@CubicF I also tried your fork. It installed, but it didn't seem to do anything.

There didn't appear to be any configuration menu available from the add-ons menu, and I didn't see any icons in my system tray. I'm not sure what exactly the expected behaviour should be.

Thunderbird 60, Manjaro Linux 17.1.12 with Gnome 3.28.2

@CubicF

This comment has been minimized.

Show comment
Hide comment
@CubicF

CubicF Aug 24, 2018

@jamesrobb If you tried to install the .xpi file it was presumably not unpacked during installation (at least this was the case for me). Therefore some icons can not be found (as you can see in the error console, which can be found in the "Tools -> developer tools" menu).

As I already mentioned, I tried to circumvent that problem by install the extension via referencing the unpacked sources. But if I do this, Thunderbird crashes at start-up before I can open the error console to see what went wrong.

Despite converting to a boot-strapped extension for better debugging (which would need some time because I have virtually no knowledge of the subject) I'm pretty clueless.

CubicF commented Aug 24, 2018

@jamesrobb If you tried to install the .xpi file it was presumably not unpacked during installation (at least this was the case for me). Therefore some icons can not be found (as you can see in the error console, which can be found in the "Tools -> developer tools" menu).

As I already mentioned, I tried to circumvent that problem by install the extension via referencing the unpacked sources. But if I do this, Thunderbird crashes at start-up before I can open the error console to see what went wrong.

Despite converting to a boot-strapped extension for better debugging (which would need some time because I have virtually no knowledge of the subject) I'm pretty clueless.

@kolinger

This comment has been minimized.

Show comment
Hide comment
@kolinger

kolinger Sep 8, 2018

Support for unpacked extension was removed (https://blog.mozilla.org/addons/2018/02/22/removing-support-unpacked-extensions/). This is why "unpack true" will not work anymore. I tried to load native libraries via ctypes from packed xpi file but this always fails (ctypes.open, error 126/file not found).

https://developer.mozilla.org/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes/ctypes.open
This page is saying that ctypes.open() will load from xpi/jar but it doesn't work. I checked everything. Packed xpi file is okay, libraries are in there, in correct folder. Path is generated exactly as said in documentiation. But it fails. With "jar:" without "jar:". Any combination. Always fails with "not found" error.

Ugly hack can be implemented (like placing native libraries outside xpi, in some predefined path). This will break instalation process and extra steps will be needed. This solution will be unusable for less experienced users. Using unpacked extension in dev mode (via proxy file) is also ugly/not portable hack.

Even if hacked then this may not work for long. Firefox did kill ctypes already (https://bugzilla.mozilla.org/show_bug.cgi?id=1444502). Also firefox will soon (or already did) drop support for "legacy" extensions. WebExtensions is the future. WebExtensions will not support ctypes either https://discourse.mozilla.org/t/ctypes-possible-in-webextensions/12490. Thunderbird slowly follows this path.

I don't see any way how to fix this issue properly. There is no long term solution.


This issues is hard to fix and fix may not work for long. Firefox/Thunderbird is killing powerful utilities for extensions (because of security). And tray extensions need these powerful utilities to work.

This should by implemented in firefox/thunderbird natively. Great solution for everyone. But it won't happen https://bugzilla.mozilla.org/show_bug.cgi?format=default&id=208923.

So Firefox/Thunderbird will not implement this but they remove support for extensions. Yea... We can't do much. This is about direction what Firefox and Thunderbird is heading...

I hope they will change their mind about native implementation. There is no other way.

Prove me wrong. Please.

kolinger commented Sep 8, 2018

Support for unpacked extension was removed (https://blog.mozilla.org/addons/2018/02/22/removing-support-unpacked-extensions/). This is why "unpack true" will not work anymore. I tried to load native libraries via ctypes from packed xpi file but this always fails (ctypes.open, error 126/file not found).

https://developer.mozilla.org/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes/ctypes.open
This page is saying that ctypes.open() will load from xpi/jar but it doesn't work. I checked everything. Packed xpi file is okay, libraries are in there, in correct folder. Path is generated exactly as said in documentiation. But it fails. With "jar:" without "jar:". Any combination. Always fails with "not found" error.

Ugly hack can be implemented (like placing native libraries outside xpi, in some predefined path). This will break instalation process and extra steps will be needed. This solution will be unusable for less experienced users. Using unpacked extension in dev mode (via proxy file) is also ugly/not portable hack.

Even if hacked then this may not work for long. Firefox did kill ctypes already (https://bugzilla.mozilla.org/show_bug.cgi?id=1444502). Also firefox will soon (or already did) drop support for "legacy" extensions. WebExtensions is the future. WebExtensions will not support ctypes either https://discourse.mozilla.org/t/ctypes-possible-in-webextensions/12490. Thunderbird slowly follows this path.

I don't see any way how to fix this issue properly. There is no long term solution.


This issues is hard to fix and fix may not work for long. Firefox/Thunderbird is killing powerful utilities for extensions (because of security). And tray extensions need these powerful utilities to work.

This should by implemented in firefox/thunderbird natively. Great solution for everyone. But it won't happen https://bugzilla.mozilla.org/show_bug.cgi?format=default&id=208923.

So Firefox/Thunderbird will not implement this but they remove support for extensions. Yea... We can't do much. This is about direction what Firefox and Thunderbird is heading...

I hope they will change their mind about native implementation. There is no other way.

Prove me wrong. Please.

@firetray-updates

This comment has been minimized.

Show comment
Hide comment
@firetray-updates

firetray-updates Sep 9, 2018

I continued what CubicF started and got FireTray up and running. The addon seems to work fine, but I barely used it and didn't try everything.

The changes I made are here: https://github.com/firetray-updates/FireTray/tree/thunderbird-57

firetray-updates commented Sep 9, 2018

I continued what CubicF started and got FireTray up and running. The addon seems to work fine, but I barely used it and didn't try everything.

The changes I made are here: https://github.com/firetray-updates/FireTray/tree/thunderbird-57

@kilobyte

This comment has been minimized.

Show comment
Hide comment
@kilobyte

kilobyte Sep 9, 2018

@firetray-updates: your version does show an icon with new mail count, but closing the window kills Thunderbird, and minimizing it keeps it on the task bar. (Debian, xfce)

kilobyte commented Sep 9, 2018

@firetray-updates: your version does show an icon with new mail count, but closing the window kills Thunderbird, and minimizing it keeps it on the task bar. (Debian, xfce)

@YamashitaRen

This comment has been minimized.

Show comment
Hide comment
@YamashitaRen

YamashitaRen Sep 9, 2018

@kilobyte Not having theses issues on Plasma5/SystemTray. Didn't try appindicator.
Using it without appindicator prevents you from getting the new mail count though...

YamashitaRen commented Sep 9, 2018

@kilobyte Not having theses issues on Plasma5/SystemTray. Didn't try appindicator.
Using it without appindicator prevents you from getting the new mail count though...

@firetray-updates

This comment has been minimized.

Show comment
Hide comment
@firetray-updates

firetray-updates Sep 9, 2018

@kilobyte FireTray is disabling the chat plugin here because it's not supported, so I missed the firetray.Messaging.Accounts() there. I updated the code (force-pushed), try it now.

firetray-updates commented Sep 9, 2018

@kilobyte FireTray is disabling the chat plugin here because it's not supported, so I missed the firetray.Messaging.Accounts() there. I updated the code (force-pushed), try it now.

@kilobyte

This comment has been minimized.

Show comment
Hide comment
@kilobyte

kilobyte commented Sep 9, 2018

@firetray-updates: yay it works!

@jamesrobb

This comment has been minimized.

Show comment
Hide comment
@jamesrobb

jamesrobb Sep 9, 2018

@firetray-updates Can confirm! I don't seem to have a way to configure it yet, but the tray icon is indeed back. Thanks!

jamesrobb commented Sep 9, 2018

@firetray-updates Can confirm! I don't seem to have a way to configure it yet, but the tray icon is indeed back. Thanks!

@ZTHawk

This comment has been minimized.

Show comment
Hide comment
@ZTHawk

ZTHawk Sep 9, 2018

Tried it on windows 10. Minimizing TB will keep it in taskbar.
SysTray icon is visible but I cannot interact with that icon.

ZTHawk commented Sep 9, 2018

Tried it on windows 10. Minimizing TB will keep it in taskbar.
SysTray icon is visible but I cannot interact with that icon.

@Thrilleratplay

This comment has been minimized.

Show comment
Hide comment
@Thrilleratplay

Thrilleratplay Sep 9, 2018

@firetray-updates Also can confirm with using XFCE. Thank you for fixing this. Mind publishing this as an official add on?

Thrilleratplay commented Sep 9, 2018

@firetray-updates Also can confirm with using XFCE. Thank you for fixing this. Mind publishing this as an official add on?

@firetray-updates

This comment has been minimized.

Show comment
Hide comment
@firetray-updates

firetray-updates Sep 9, 2018

@ZTHawk I'm sorry, I didn't try this on Windows. I suspect your problem is related to the unpacking issue that CubicF mentioned. I assume it's a Windows specific problem, because I didn't have to do anything special to install the addon.

@Thrilleratplay I'm not planning on supporting this ATM, I just fixed it because I like it and apparently it still needs some changes.

firetray-updates commented Sep 9, 2018

@ZTHawk I'm sorry, I didn't try this on Windows. I suspect your problem is related to the unpacking issue that CubicF mentioned. I assume it's a Windows specific problem, because I didn't have to do anything special to install the addon.

@Thrilleratplay I'm not planning on supporting this ATM, I just fixed it because I like it and apparently it still needs some changes.

@leledumbo

This comment has been minimized.

Show comment
Hide comment
@leledumbo

leledumbo Sep 9, 2018

Nice! At least tray icon appears and close to tray works, clicking it also brings back the app which is all I need for this addon.

leledumbo commented Sep 9, 2018

Nice! At least tray icon appears and close to tray works, clicking it also brings back the app which is all I need for this addon.

@AdmiralAsshat

This comment has been minimized.

Show comment
Hide comment
@AdmiralAsshat

AdmiralAsshat Sep 9, 2018

@firetray-updates, working well on Cinnamon. Thanks!

AdmiralAsshat commented Sep 9, 2018

@firetray-updates, working well on Cinnamon. Thanks!

@light2yellow

This comment has been minimized.

Show comment
Hide comment
@light2yellow

light2yellow Sep 10, 2018

I wonder if Thunderbird contributors ever use Thunderbird themselves, since apparently this has been a feature request since 2003 and nobody in 15 years got uncomfortable enough to implement this core functionality in the application (I have never seen any other application that has "minimize to tray" functionality implemented as an addon, this is hilarious and absurd). Unfortunately, I am useless here, so, please, if you consider developing a new extension like FireTray, instead consider first implementing this in Thunderbird itself, be it AppIndicator, GtkTrayIcon -- basically, whatever at this point, since it will never be accepted upstream (ticket about this was marked as RESOLVED WONTFIX, also absurd), and we can just compile it ourselves.

light2yellow commented Sep 10, 2018

I wonder if Thunderbird contributors ever use Thunderbird themselves, since apparently this has been a feature request since 2003 and nobody in 15 years got uncomfortable enough to implement this core functionality in the application (I have never seen any other application that has "minimize to tray" functionality implemented as an addon, this is hilarious and absurd). Unfortunately, I am useless here, so, please, if you consider developing a new extension like FireTray, instead consider first implementing this in Thunderbird itself, be it AppIndicator, GtkTrayIcon -- basically, whatever at this point, since it will never be accepted upstream (ticket about this was marked as RESOLVED WONTFIX, also absurd), and we can just compile it ourselves.

@kilobyte

This comment has been minimized.

Show comment
Hide comment
@kilobyte

kilobyte Sep 10, 2018

@light2yellow: I for one use Thunderbird because of this functionality, and will look for another mail client the moment it stops working (in Debian, TB52 is still in stable and testing, only unstable has 60). The fix by @CubicF and @firetray-updates is great. My use case for Thunderbird is twofold: 1. glorified biff, 2. something to read that HTML mail from a business critter; for anything else I use mutt. No close-to-tray means the first — my main — use is out. And I receive ~1000 text mails per day (LKML is spammy...) vs maybe 12 HTMLs I elect to even open per year.

The only reason for WONTFIX was that "operating systems deprecate system tray". Except that Windows 10 recommendations explicitly list new mail notifications as valid use of the tray, and the only Linux environment that hypocritically deprecates tray despite using it itself is GNOME.

kilobyte commented Sep 10, 2018

@light2yellow: I for one use Thunderbird because of this functionality, and will look for another mail client the moment it stops working (in Debian, TB52 is still in stable and testing, only unstable has 60). The fix by @CubicF and @firetray-updates is great. My use case for Thunderbird is twofold: 1. glorified biff, 2. something to read that HTML mail from a business critter; for anything else I use mutt. No close-to-tray means the first — my main — use is out. And I receive ~1000 text mails per day (LKML is spammy...) vs maybe 12 HTMLs I elect to even open per year.

The only reason for WONTFIX was that "operating systems deprecate system tray". Except that Windows 10 recommendations explicitly list new mail notifications as valid use of the tray, and the only Linux environment that hypocritically deprecates tray despite using it itself is GNOME.

@ZTHawk

This comment has been minimized.

Show comment
Hide comment
@ZTHawk

ZTHawk Sep 10, 2018

@kilobyte If you found evidence that win10 recommends systray then you should post it on mozilla bug tracker to state the old reason as invalid.

ZTHawk commented Sep 10, 2018

@kilobyte If you found evidence that win10 recommends systray then you should post it on mozilla bug tracker to state the old reason as invalid.

@kilobyte

This comment has been minimized.

Show comment
Hide comment
@kilobyte

kilobyte Sep 10, 2018

" You are not allowed to make an additional comment on this bug. "

Here's Microsoft docs about notifications and systray icons. It lists Outlook as an example of "Correct" purpose of tray icon, and provides a long list of conditions that are required for a permanent icon to be acceptable, Thunderbird matching them all.

As for Linux: GNOME is a lost cause, and I have nothing but pity for its users. People who use any other environment can, and often want to, use systray.

kilobyte commented Sep 10, 2018

" You are not allowed to make an additional comment on this bug. "

Here's Microsoft docs about notifications and systray icons. It lists Outlook as an example of "Correct" purpose of tray icon, and provides a long list of conditions that are required for a permanent icon to be acceptable, Thunderbird matching them all.

As for Linux: GNOME is a lost cause, and I have nothing but pity for its users. People who use any other environment can, and often want to, use systray.

@hajj3

This comment has been minimized.

Show comment
Hide comment
@hajj3

hajj3 Sep 12, 2018

@hajj3: I don't know how to build the xpi, but if you're on Debian (or a derivative like Ubuntu or Mint), here's a package: https://angband.pl/debian/pool/main/f/firetray/ — built after mindlessly applying the diffs. It uses some mozilla-devscripts scheme that I didn't even look inside. Works perfectly for me.

Still no word from the maintainers; if no one says a word I'll propose a NMU shortly.

I'm using Windows 10 unfortunately.

hajj3 commented Sep 12, 2018

@hajj3: I don't know how to build the xpi, but if you're on Debian (or a derivative like Ubuntu or Mint), here's a package: https://angband.pl/debian/pool/main/f/firetray/ — built after mindlessly applying the diffs. It uses some mozilla-devscripts scheme that I didn't even look inside. Works perfectly for me.

Still no word from the maintainers; if no one says a word I'll propose a NMU shortly.

I'm using Windows 10 unfortunately.

@light2yellow

This comment has been minimized.

Show comment
Hide comment
@light2yellow

light2yellow Sep 12, 2018

Here is the xpi from #238 (comment) (with debug symbols): firetray-0.6.1.xpi.zip

To use, unzip it first (github didn't allow to upload .xpi directly).

light2yellow commented Sep 12, 2018

Here is the xpi from #238 (comment) (with debug symbols): firetray-0.6.1.xpi.zip

To use, unzip it first (github didn't allow to upload .xpi directly).

@hajj3

This comment has been minimized.

Show comment
Hide comment
@hajj3

hajj3 Sep 12, 2018

Here is the xpi (with debug symbols): firetray-0.6.1.xpi.zip

To use, unzip it first (github didn't allow to upload .xpi directly).

thanks, unfortunately it won't minimize to the tray or close to the tray, i tried changing the options. I tested using thunderbird 60.0 x64 on win 10 x64.

hajj3 commented Sep 12, 2018

Here is the xpi (with debug symbols): firetray-0.6.1.xpi.zip

To use, unzip it first (github didn't allow to upload .xpi directly).

thanks, unfortunately it won't minimize to the tray or close to the tray, i tried changing the options. I tested using thunderbird 60.0 x64 on win 10 x64.

@firetray-updates

This comment has been minimized.

Show comment
Hide comment
@firetray-updates

firetray-updates Sep 12, 2018

@kilobyte cd src && make ;)

@hajj3 the addon dies as soon as it tries to populate the menu of the tray, which includes the images.

firetray-updates commented Sep 12, 2018

@kilobyte cd src && make ;)

@hajj3 the addon dies as soon as it tries to populate the menu of the tray, which includes the images.

@light2yellow

This comment has been minimized.

Show comment
Hide comment
@light2yellow

light2yellow Sep 12, 2018

thanks, unfortunately it won't minimize to the tray or close to the tray

It didn't work (i.e. installed and launched correctly, just nothing happens) for me in TB 60 either (Arch Linux, XFCE), although I didn't have much hope about it.

The state of desktop mail clients is quite pathetic. Geary and Evolution have numerous bugs and glitches, and don't implement the standard used in XFCE for tray icons, KMail has a tray icon, but it refused to send an email from Gmail account (which is, like, the essential thing). Something like N1 fork (whatever name it has) requires additional cloud account. Mutt[4e] will just take too much time to figure out. There is no middle ground.

light2yellow commented Sep 12, 2018

thanks, unfortunately it won't minimize to the tray or close to the tray

It didn't work (i.e. installed and launched correctly, just nothing happens) for me in TB 60 either (Arch Linux, XFCE), although I didn't have much hope about it.

The state of desktop mail clients is quite pathetic. Geary and Evolution have numerous bugs and glitches, and don't implement the standard used in XFCE for tray icons, KMail has a tray icon, but it refused to send an email from Gmail account (which is, like, the essential thing). Something like N1 fork (whatever name it has) requires additional cloud account. Mutt[4e] will just take too much time to figure out. There is no middle ground.

@kilobyte

This comment has been minimized.

Show comment
Hide comment
@kilobyte

kilobyte Sep 12, 2018

Being broken in Arch+XFCE on TB60 sounds weird — I wouldn't expect Debian's XFCE to be meaningfully different, yet updated firetray (as the package I linked) works fine for me.

kilobyte commented Sep 12, 2018

Being broken in Arch+XFCE on TB60 sounds weird — I wouldn't expect Debian's XFCE to be meaningfully different, yet updated firetray (as the package I linked) works fine for me.

@light2yellow

This comment has been minimized.

Show comment
Hide comment
@light2yellow

light2yellow Sep 12, 2018

So, you said that, and I went digging a little bit further -- just thought it's <=57. Managed to get it working in my environment too. I noticed that while opening the application there was something happening in xfce4-panel's systray: the visual space was allocated for an icon and then instantly deallocated. I gdb'ed the panel and noticed that the icon was the same as the one used for 'notifications' widget.

Then I went to Add-ons -> FireTray and selected a custom icon:

And that fixed it for me. Thanks.

light2yellow commented Sep 12, 2018

So, you said that, and I went digging a little bit further -- just thought it's <=57. Managed to get it working in my environment too. I noticed that while opening the application there was something happening in xfce4-panel's systray: the visual space was allocated for an icon and then instantly deallocated. I gdb'ed the panel and noticed that the icon was the same as the one used for 'notifications' widget.

Then I went to Add-ons -> FireTray and selected a custom icon:

And that fixed it for me. Thanks.

@firetray-updates

This comment has been minimized.

Show comment
Hide comment
@firetray-updates

firetray-updates Sep 15, 2018

I tried the addons on Windows once more. The problem with the icons not loading is due to the fact that the addon is not unpacked, despite the unpack flag set in install.rdf. Apparently Windows needs an unpacked extension: XPI_unpacking. If I manually extract the addon, everything starts working as expected.

The crash I'm experiencing is instead caused by an access violation related to something attachWndProc() does. If I replace this function with a stub, Thunderbird stops crashing. That function should be needed to handle multiple windows and indeed FireTray only handles the main window after the change, but at least it won't crash the application.

firetray-updates commented Sep 15, 2018

I tried the addons on Windows once more. The problem with the icons not loading is due to the fact that the addon is not unpacked, despite the unpack flag set in install.rdf. Apparently Windows needs an unpacked extension: XPI_unpacking. If I manually extract the addon, everything starts working as expected.

The crash I'm experiencing is instead caused by an access violation related to something attachWndProc() does. If I replace this function with a stub, Thunderbird stops crashing. That function should be needed to handle multiple windows and indeed FireTray only handles the main window after the change, but at least it won't crash the application.

@firetray-updates

This comment has been minimized.

Show comment
Hide comment
@firetray-updates

firetray-updates Sep 17, 2018

There's something I forgot to mention. The addon is entirely written in JS, the bits of native code are not used. The Makefile simply packages the xpi taking only the files used while stripping all the log.debug() calls. This means you can just download the source code, rename the src directory to {9533f794-00b4-4354-aa15-c2bbda6989f8} and place it in ~/.thunderbird/PROFILE/extensions (Linux) or %APPDATA%\Roaming\Thunderbird\PROFILE\extensions (Windows). You'll have all the log.debug() lines and some extra files, but that's not a big deal. You may have to restart Thunderbird a couple of times, once to let it find the extension and once more to let it load it.

If you want to test the addon on Windows, I suggest you to comment out this. Not ideal, but at least Thunderbird will not crash.

firetray-updates commented Sep 17, 2018

There's something I forgot to mention. The addon is entirely written in JS, the bits of native code are not used. The Makefile simply packages the xpi taking only the files used while stripping all the log.debug() calls. This means you can just download the source code, rename the src directory to {9533f794-00b4-4354-aa15-c2bbda6989f8} and place it in ~/.thunderbird/PROFILE/extensions (Linux) or %APPDATA%\Roaming\Thunderbird\PROFILE\extensions (Windows). You'll have all the log.debug() lines and some extra files, but that's not a big deal. You may have to restart Thunderbird a couple of times, once to let it find the extension and once more to let it load it.

If you want to test the addon on Windows, I suggest you to comment out this. Not ideal, but at least Thunderbird will not crash.

@bryanmc57

This comment has been minimized.

Show comment
Hide comment
@bryanmc57

bryanmc57 Sep 18, 2018

@firetray-updates Would you be willing to take a minute or two to list the step by step for installing this? Running debian 9 but am not quite sure how to use the api to get firetray back up and running after the latest thunderbird 60 update. Thanks

bryanmc57 commented Sep 18, 2018

@firetray-updates Would you be willing to take a minute or two to list the step by step for installing this? Running debian 9 but am not quite sure how to use the api to get firetray back up and running after the latest thunderbird 60 update. Thanks

@kilobyte

This comment has been minimized.

Show comment
Hide comment
@kilobyte

kilobyte Sep 18, 2018

For Debian, you can take it from the official archive: http://ftp.debian.org/debian/pool/main/f/firetray/xul-ext-firetray_0.6.1+dfsg-1.1_all.deb — for now unstable only, but I asked for inclusion in stable updates.

kilobyte commented Sep 18, 2018

For Debian, you can take it from the official archive: http://ftp.debian.org/debian/pool/main/f/firetray/xul-ext-firetray_0.6.1+dfsg-1.1_all.deb — for now unstable only, but I asked for inclusion in stable updates.

@firetray-updates

This comment has been minimized.

Show comment
Hide comment
@firetray-updates

firetray-updates Sep 18, 2018

@bryanmc57

git clone https://github.com/firetray-updates/FireTray
cd FireTray/src
make build
ls ../build-*/*.xpi    # <-- your xpi, ready to be installed

(you can use a packed extension on Linux, so the xpi is fine)

As I also mentioned in my previous comment, you can just download the source code (even via github), take the src/ directory, rename it to {9533f794-00b4-4354-aa15-c2bbda6989f8} and place it in ~/.thunderbird/PROFILE/extensions. The default profile is something like XXXX.default, read ~/.thunderbird/profiles.ini for the exact name.

firetray-updates commented Sep 18, 2018

@bryanmc57

git clone https://github.com/firetray-updates/FireTray
cd FireTray/src
make build
ls ../build-*/*.xpi    # <-- your xpi, ready to be installed

(you can use a packed extension on Linux, so the xpi is fine)

As I also mentioned in my previous comment, you can just download the source code (even via github), take the src/ directory, rename it to {9533f794-00b4-4354-aa15-c2bbda6989f8} and place it in ~/.thunderbird/PROFILE/extensions. The default profile is something like XXXX.default, read ~/.thunderbird/profiles.ini for the exact name.

@vayulove

This comment has been minimized.

Show comment
Hide comment
@vayulove

vayulove Sep 19, 2018

For Debian, you can take it from the official archive: http://ftp.debian.org/debian/pool/main/f/firetray/xul-ext-firetray_0.6.1+dfsg-1.1_all.deb — for now unstable only, but I asked for inclusion in stable updates.

I had firetray working with Thunderbird 52.4 all along. I had xul-ext-firetray (0.6.1+dfsg-1) installed from debian packages. I'm on sid. I had Thunderbird held, unfortunately I didn't have firetray held. Today I did a system upgrade and this new firetray came in and broke my working firetray. I tried reinstalling the old version but it still doesn't work. I'm severely bummed. How do I get it working again, is there a check for versions somewhere I can override?

vayulove commented Sep 19, 2018

For Debian, you can take it from the official archive: http://ftp.debian.org/debian/pool/main/f/firetray/xul-ext-firetray_0.6.1+dfsg-1.1_all.deb — for now unstable only, but I asked for inclusion in stable updates.

I had firetray working with Thunderbird 52.4 all along. I had xul-ext-firetray (0.6.1+dfsg-1) installed from debian packages. I'm on sid. I had Thunderbird held, unfortunately I didn't have firetray held. Today I did a system upgrade and this new firetray came in and broke my working firetray. I tried reinstalling the old version but it still doesn't work. I'm severely bummed. How do I get it working again, is there a check for versions somewhere I can override?

@vayulove

This comment has been minimized.

Show comment
Hide comment
@vayulove

vayulove Sep 19, 2018

So I've got my old firetray working with Thunderbird 52.4 by adding a config setting: extensions.checkCompatibility.52.4 set to false

My new question is what exactly is the new version of firetray in the sid repository? Does it work for Thunderbird 60? Does it work the same way as the old firetray? Will it use my existing settings? With the compatibility check I just turned off do you think your new firetray will work for Thunderbird 52.4?

vayulove commented Sep 19, 2018

So I've got my old firetray working with Thunderbird 52.4 by adding a config setting: extensions.checkCompatibility.52.4 set to false

My new question is what exactly is the new version of firetray in the sid repository? Does it work for Thunderbird 60? Does it work the same way as the old firetray? Will it use my existing settings? With the compatibility check I just turned off do you think your new firetray will work for Thunderbird 52.4?

@kilobyte

This comment has been minimized.

Show comment
Hide comment
@kilobyte

kilobyte Sep 19, 2018

@vayulove: how come xul-ext-firetray 0.6.1+dfsg-1.1 got upgraded if you had thunderbird held? Its deps are:

Depends: thunderbird (>= 1:57.0) | icedove (>= 1:57.0)
Breaks: icedove (<< 1:57.0), thunderbird (<< 1:57.0)

which should have prevented the upgrade. The new version works with TB60 but not TB52 — at least for me (breakage on Windows doesn't matter for us). I did not notice any regressions within my use cases.

I'm not the maintainer of firetray in Debian but it was me who prepared and uploaded the new version, if something is wrong I'd be very interested in knowing — esp. before my upload gets accepted as a stable update.

kilobyte commented Sep 19, 2018

@vayulove: how come xul-ext-firetray 0.6.1+dfsg-1.1 got upgraded if you had thunderbird held? Its deps are:

Depends: thunderbird (>= 1:57.0) | icedove (>= 1:57.0)
Breaks: icedove (<< 1:57.0), thunderbird (<< 1:57.0)

which should have prevented the upgrade. The new version works with TB60 but not TB52 — at least for me (breakage on Windows doesn't matter for us). I did not notice any regressions within my use cases.

I'm not the maintainer of firetray in Debian but it was me who prepared and uploaded the new version, if something is wrong I'd be very interested in knowing — esp. before my upload gets accepted as a stable update.

@jalalsfs

This comment has been minimized.

Show comment
Hide comment
@jalalsfs

jalalsfs Sep 19, 2018

@firetray-updates, I did what you've mentioned

git clone https://github.com/firetray-updates/FireTray
cd FireTray/src
make build
ls ../build-*/*.xpi    # <-- your xpi, ready to be installed

I am using Fedora 28/XFCE and it works, thank you so much,
There are more bugs reports on https://bugzilla.mozilla.org about tray icon.
Many guys there and on #thunderbird channel on IRC want some programmers to work on tray icon as a native option in TB settings, so if all the programmers who works on tray system plugins put their efforts on making it within TB, I think it would be much much better.
What do you think @firetray-updates ?

jalalsfs commented Sep 19, 2018

@firetray-updates, I did what you've mentioned

git clone https://github.com/firetray-updates/FireTray
cd FireTray/src
make build
ls ../build-*/*.xpi    # <-- your xpi, ready to be installed

I am using Fedora 28/XFCE and it works, thank you so much,
There are more bugs reports on https://bugzilla.mozilla.org about tray icon.
Many guys there and on #thunderbird channel on IRC want some programmers to work on tray icon as a native option in TB settings, so if all the programmers who works on tray system plugins put their efforts on making it within TB, I think it would be much much better.
What do you think @firetray-updates ?

@tumbl3w33d

This comment has been minimized.

Show comment
Hide comment
@tumbl3w33d

tumbl3w33d Sep 19, 2018

For Debian, you can take it from the official archive: http://ftp.debian.org/debian/pool/main/f/firetray/xul-ext-firetray_0.6.1+dfsg-1.1_all.deb — for now unstable only, but I asked for inclusion in stable updates.

Works great in stable with thunderbird 60.0-3~deb9u1 - thank you for the hint!

tumbl3w33d commented Sep 19, 2018

For Debian, you can take it from the official archive: http://ftp.debian.org/debian/pool/main/f/firetray/xul-ext-firetray_0.6.1+dfsg-1.1_all.deb — for now unstable only, but I asked for inclusion in stable updates.

Works great in stable with thunderbird 60.0-3~deb9u1 - thank you for the hint!

@firetray-updates

This comment has been minimized.

Show comment
Hide comment
@firetray-updates

firetray-updates Sep 19, 2018

@jalalsfs I simply fixed an existing extension following these hints, I didn't write it from scratch. I put close to no effort into this, implementing this natively is a completely different matter and not something I feel like doing now. FireTray does the job for now, but I definitely wouldn't mind a native implementation.

firetray-updates commented Sep 19, 2018

@jalalsfs I simply fixed an existing extension following these hints, I didn't write it from scratch. I put close to no effort into this, implementing this natively is a completely different matter and not something I feel like doing now. FireTray does the job for now, but I definitely wouldn't mind a native implementation.

@zorzibaffo

This comment has been minimized.

Show comment
Hide comment
@zorzibaffo

zorzibaffo Sep 20, 2018

For Debian, you can take it from the official archive: http://ftp.debian.org/debian/pool/main/f/firetray/xul-ext-firetray_0.6.1+dfsg-1.1_all.deb — for now unstable only, but I asked for inclusion in stable updates.

Hi. This is good news to have firetray in Debian repositories.

Strangely, I can't get it working. Firetray appears as not compatible in Thunderbird extensions page. If someone can help. Thanks.

zorzibaffo commented Sep 20, 2018

For Debian, you can take it from the official archive: http://ftp.debian.org/debian/pool/main/f/firetray/xul-ext-firetray_0.6.1+dfsg-1.1_all.deb — for now unstable only, but I asked for inclusion in stable updates.

Hi. This is good news to have firetray in Debian repositories.

Strangely, I can't get it working. Firetray appears as not compatible in Thunderbird extensions page. If someone can help. Thanks.

@kilobyte

This comment has been minimized.

Show comment
Hide comment
@kilobyte

kilobyte Sep 20, 2018

@zorzibaffo: can you check the version of your installed firetray and thunderbird? The new version is compatible only with TB60 (package dependencies should ensure that, but per a comment above, there might be something wrong).

Also, please check if you have a locally installed (ie, in Thunderbird's profile) copy? This one may override the system-installed package.

kilobyte commented Sep 20, 2018

@zorzibaffo: can you check the version of your installed firetray and thunderbird? The new version is compatible only with TB60 (package dependencies should ensure that, but per a comment above, there might be something wrong).

Also, please check if you have a locally installed (ie, in Thunderbird's profile) copy? This one may override the system-installed package.

@zorzibaffo

This comment has been minimized.

Show comment
Hide comment
@zorzibaffo

zorzibaffo Sep 20, 2018

@zorzibaffo: can you check the version of your installed firetray and thunderbird? The new version is compatible only with TB60 (package dependencies should ensure that, but per a comment above, there might be something wrong).

Also, please check if you have a locally installed (ie, in Thunderbird's profile) copy? This one may override the system-installed package.

Hello, and thanks for answering. I installed Thunderbird 60 from Debian repos, and Firetray 0.6.1 from Debian repos, too. Where should I check for locally installed copy ?

Edit: I'm sure I had removed previously manually installed firetray 0.6.1

zorzibaffo commented Sep 20, 2018

@zorzibaffo: can you check the version of your installed firetray and thunderbird? The new version is compatible only with TB60 (package dependencies should ensure that, but per a comment above, there might be something wrong).

Also, please check if you have a locally installed (ie, in Thunderbird's profile) copy? This one may override the system-installed package.

Hello, and thanks for answering. I installed Thunderbird 60 from Debian repos, and Firetray 0.6.1 from Debian repos, too. Where should I check for locally installed copy ?

Edit: I'm sure I had removed previously manually installed firetray 0.6.1

@kilobyte

This comment has been minimized.

Show comment
Hide comment
@kilobyte

kilobyte Sep 20, 2018

0.6.1+dfsg-1 or 0.6.1+dfsg-1.1? The former is for TB52 (and lower) only, the latter for TB60.

A localled installed copy can be removed via the "addons" page, a system-wide only disabled.

kilobyte commented Sep 20, 2018

0.6.1+dfsg-1 or 0.6.1+dfsg-1.1? The former is for TB52 (and lower) only, the latter for TB60.

A localled installed copy can be removed via the "addons" page, a system-wide only disabled.

@zorzibaffo

This comment has been minimized.

Show comment
Hide comment
@zorzibaffo

zorzibaffo Sep 20, 2018

0.6.1+dfsg-1 or 0.6.1+dfsg-1.1? The former is for TB52 (and lower) only, the latter for TB60.

A localled installed copy can be removed via the "addons" page, a system-wide only disabled.

You're right. I installed 0.6.1+dfsg-1. It could not work. Maybe we can hope 0.6.1+dfsg-1.1 to be pushed in stable repos soon.
Thanks.

zorzibaffo commented Sep 20, 2018

0.6.1+dfsg-1 or 0.6.1+dfsg-1.1? The former is for TB52 (and lower) only, the latter for TB60.

A localled installed copy can be removed via the "addons" page, a system-wide only disabled.

You're right. I installed 0.6.1+dfsg-1. It could not work. Maybe we can hope 0.6.1+dfsg-1.1 to be pushed in stable repos soon.
Thanks.

@OmegaPhil

This comment has been minimized.

Show comment
Hide comment
@OmegaPhil

OmegaPhil Sep 20, 2018

Devuan Ascii user here with Thunderbird 1:60.0-3~deb9u1 and xul-ext-firetray 0.6.1+dfsg-1.1 installed. Just reporting successful workingness of the 'display new message count' functionality now - the startup after the initial install was lacking icons so no systray appearance (even the Preferences page icon was missing), but disabling restarting and reenabling the addon worked. Thanks for your work kilobyte and firetray-updates.

OmegaPhil commented Sep 20, 2018

Devuan Ascii user here with Thunderbird 1:60.0-3~deb9u1 and xul-ext-firetray 0.6.1+dfsg-1.1 installed. Just reporting successful workingness of the 'display new message count' functionality now - the startup after the initial install was lacking icons so no systray appearance (even the Preferences page icon was missing), but disabling restarting and reenabling the addon worked. Thanks for your work kilobyte and firetray-updates.

@zorzibaffo

This comment has been minimized.

Show comment
Hide comment
@zorzibaffo

zorzibaffo Sep 21, 2018

Yes. it works perfectly. Thanks to firetray-updates and kilobyte.

zorzibaffo commented Sep 21, 2018

Yes. it works perfectly. Thanks to firetray-updates and kilobyte.

@sunandmoonandus

This comment has been minimized.

Show comment
Hide comment
@sunandmoonandus

sunandmoonandus Sep 21, 2018

I also can confirm it works perfectly. There was also the " the startup after the initial install was lacking icons so no systray appearance (even the Preferences page icon was missing), but disabling restarting and reenabling the addon worked. " like OmegaPhil noted it. Disabling restarting and reenabling the addon worked.Thanks so much for your work firetray-updates and kilobyte!
Thunderbird 1:60.0-3~deb9u1 and xul-ext-firetray 0.6.1+dfsg-1.1 , Debian Stretch 9.5, 64Bit

sunandmoonandus commented Sep 21, 2018

I also can confirm it works perfectly. There was also the " the startup after the initial install was lacking icons so no systray appearance (even the Preferences page icon was missing), but disabling restarting and reenabling the addon worked. " like OmegaPhil noted it. Disabling restarting and reenabling the addon worked.Thanks so much for your work firetray-updates and kilobyte!
Thunderbird 1:60.0-3~deb9u1 and xul-ext-firetray 0.6.1+dfsg-1.1 , Debian Stretch 9.5, 64Bit

@Chealer

This comment has been minimized.

Show comment
Hide comment
@Chealer

Chealer Sep 22, 2018

Thank you @kilobyte, I confirm Debian unstable's 0.6.1+dfsg-1.1 works on Debian 9 (with KDE) just like FireTray used to work with Thunderbird 52 and can be installed without any new dependency ( # dpkg -i xul-ext-firetray_0.6.1+dfsg-1.1_all.deb ).

In the long term, I'd agree a solution should be submitted to distributors such as Debian, as Mozilla itself appears hopeless at solving this.

Chealer commented Sep 22, 2018

Thank you @kilobyte, I confirm Debian unstable's 0.6.1+dfsg-1.1 works on Debian 9 (with KDE) just like FireTray used to work with Thunderbird 52 and can be installed without any new dependency ( # dpkg -i xul-ext-firetray_0.6.1+dfsg-1.1_all.deb ).

In the long term, I'd agree a solution should be submitted to distributors such as Debian, as Mozilla itself appears hopeless at solving this.

@YogSottot

This comment has been minimized.

Show comment
Hide comment
@YogSottot

YogSottot Sep 25, 2018

There is released a new standalone system tray new mail notification for Thunderbird.
https://github.com/gyunaev/birdtray - it uses Thunderbird email search database directly, and does not require extensions. Thus it will work even when Thunderbird will drop ctypes support.

YogSottot commented Sep 25, 2018

There is released a new standalone system tray new mail notification for Thunderbird.
https://github.com/gyunaev/birdtray - it uses Thunderbird email search database directly, and does not require extensions. Thus it will work even when Thunderbird will drop ctypes support.

@vayulove

This comment has been minimized.

Show comment
Hide comment
@vayulove

vayulove Oct 5, 2018

@vayulove: how come xul-ext-firetray 0.6.1+dfsg-1.1 got upgraded if you had thunderbird held? Its deps are:

Depends: thunderbird (>= 1:57.0) | icedove (>= 1:57.0)
Breaks: icedove (<< 1:57.0), thunderbird (<< 1:57.0)

Because those aren't the dependencies of the firetray I have installed:
Package: xul-ext-firetray Version: 0.6.1+dfsg-1 Depends: iceweasel (>= 7.0) | firefox (>= 7.0) | firefox-esr (>= 7.0) | thunderbird (>= 7.0) | icedove (>= 7.0)

I also use a non standard Thunderbird. I use one from Plasmazilla on Launchpad. They have it patched to use KDE dialogs. I've been using their Firefox and Thunderbird on debian for years. They're not up to Thunderbird 60 yet. Keep up the good work on firetray, I'll use your version when Plasmazilla gets up to Thunderbird 60. I can't imagine not having taskbar functionality for email and I really don't want kmail and don't see any other alternatives I like.

YogSottot just posted an interesting and hopeful solution.

vayulove commented Oct 5, 2018

@vayulove: how come xul-ext-firetray 0.6.1+dfsg-1.1 got upgraded if you had thunderbird held? Its deps are:

Depends: thunderbird (>= 1:57.0) | icedove (>= 1:57.0)
Breaks: icedove (<< 1:57.0), thunderbird (<< 1:57.0)

Because those aren't the dependencies of the firetray I have installed:
Package: xul-ext-firetray Version: 0.6.1+dfsg-1 Depends: iceweasel (>= 7.0) | firefox (>= 7.0) | firefox-esr (>= 7.0) | thunderbird (>= 7.0) | icedove (>= 7.0)

I also use a non standard Thunderbird. I use one from Plasmazilla on Launchpad. They have it patched to use KDE dialogs. I've been using their Firefox and Thunderbird on debian for years. They're not up to Thunderbird 60 yet. Keep up the good work on firetray, I'll use your version when Plasmazilla gets up to Thunderbird 60. I can't imagine not having taskbar functionality for email and I really don't want kmail and don't see any other alternatives I like.

YogSottot just posted an interesting and hopeful solution.

@NoXPhasma

This comment has been minimized.

Show comment
Hide comment
@NoXPhasma

NoXPhasma Oct 15, 2018

For Debian, you can take it from the official archive: http://ftp.debian.org/debian/pool/main/f/firetray/xul-ext-firetray_0.6.1+dfsg-1.1_all.deb — for now unstable only, but I asked for inclusion in stable updates.

Thank you very much, this works like a charm on Linux Mint 19!

NoXPhasma commented Oct 15, 2018

For Debian, you can take it from the official archive: http://ftp.debian.org/debian/pool/main/f/firetray/xul-ext-firetray_0.6.1+dfsg-1.1_all.deb — for now unstable only, but I asked for inclusion in stable updates.

Thank you very much, this works like a charm on Linux Mint 19!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment