maildev@lists.thunderbird.net

Thunderbird email developers

View all threads

Re: [Maildev] Is there a way to reactivate the Calendar/Lightning distribution extension after installing a beta?

JK
Jörg Knobloch
Sat, Dec 9, 2017 1:24 PM

On 09/12/2017 13:44, MakeMyDay wrote:

Check your prefs for extensions.installedDistroAddon.<extension-id>,
for Lightning, this is:

extensions.installedDistroAddon.{e2fda1a4-762b-4020-b5ad-a41df1933103}

Iirc, if that pref is set and the respective extension is not in the
list stored in extensions.xpiState, the installation of an addon is
prevented in XPIProvider code to prevent a once uninstalled
distributed addon from being installed again. (Unfortunately, there is
not a similar mechanism for disabled addons, which make disabled
Lightning addon to enabled on updates). So removing the pref should
bring your Lightning back on restart.

\o/

Yay, that did the trick. I'm a little surprised that you can remove
distribution add-ons, I thought you can just disable them.

Thanks for the help, I'll keep the solution in mind.

Any suggestions how we could alleviate the search for matching add-ons,
like Lightning and the Gdata Provider?

Jörg.

On 09/12/2017 13:44, MakeMyDay wrote: > Check your prefs for extensions.installedDistroAddon.<extension-id>, > for Lightning, this is: > > extensions.installedDistroAddon.{e2fda1a4-762b-4020-b5ad-a41df1933103} > > Iirc, if that pref is set and the respective extension is not in the > list stored in extensions.xpiState, the installation of an addon is > prevented in XPIProvider code to prevent a once uninstalled > distributed addon from being installed again. (Unfortunately, there is > not a similar mechanism for disabled addons, which make disabled > Lightning addon to enabled on updates). So removing the pref should > bring your Lightning back on restart. \o/ Yay, that did the trick. I'm a little surprised that you can remove distribution add-ons, I thought you can just disable them. Thanks for the help, I'll keep the solution in mind. Any suggestions how we could alleviate the search for matching add-ons, like Lightning and the Gdata Provider? Jörg.
M
MakeMyDay
Sat, Dec 9, 2017 2:18 PM

There are two different ways to include an addons. Addons in
app-dir/distribution get just installed in the user profile, while
addons in app-dir/extensions are working from that place without getting
installed in the user profile and can only be diabled but not
uninstalled by the user (this is the way Lightning is bundled on Daily).
However, you can over-install the latter with any version of the
respective addon, which is then used in the first place would prevent of
making use of changes in the distributed addon (which may or may not be
wanted).

For Lightning, we decided intentionally to use the distribution folder
way for versions other then Daily when starting to bundle Lightning to
allow a for a permanent opt-out with no not-wanted code on your system.
There is a trade-off regarding respecting the user's decision for a part
of the TB population and the ease of updating for the remaining part.

Regarding compatible versions, for Daily, simply remove overinstalled
copies of the addons and you get catered with the up-to-date and
compatible version.

For beta/esr, remove the mentioned pref if you have problems because you
uninstalled Lightning before. After doing so and as long as you don't
install it manually again, updates will happen on TB update
automatically - apart from that, there exists
https://developer.mozilla.org/en-US/docs/Mozilla/Calendar/Calendar_Versions#Development_Snapshots

For Google provider, for Daily the above mentioned applies and for esr,
use amo (or it's successor). For beta would would have to download it
from the beta builds, if there is no respective verion on amo.

Any change to the existing update behaviour would require changes in the
AddonManager or XPIProvider code, which I assume will not be accepted
anymore since legacy addons support is discontinued in FF.

Am 09.12.2017 um 14:24 schrieb Jörg Knobloch:

On 09/12/2017 13:44, MakeMyDay wrote:

Check your prefs for extensions.installedDistroAddon.<extension-id>,
for Lightning, this is:

extensions.installedDistroAddon.{e2fda1a4-762b-4020-b5ad-a41df1933103}

Iirc, if that pref is set and the respective extension is not in the
list stored in extensions.xpiState, the installation of an addon is
prevented in XPIProvider code to prevent a once uninstalled
distributed addon from being installed again. (Unfortunately, there is
not a similar mechanism for disabled addons, which make disabled
Lightning addon to enabled on updates). So removing the pref should
bring your Lightning back on restart.

\o/

Yay, that did the trick. I'm a little surprised that you can remove
distribution add-ons, I thought you can just disable them.

Thanks for the help, I'll keep the solution in mind.

Any suggestions how we could alleviate the search for matching add-ons,
like Lightning and the Gdata Provider?

Jörg.

There are two different ways to include an addons. Addons in app-dir/distribution get just installed in the user profile, while addons in app-dir/extensions are working from that place without getting installed in the user profile and can only be diabled but not uninstalled by the user (this is the way Lightning is bundled on Daily). However, you can over-install the latter with any version of the respective addon, which is then used in the first place would prevent of making use of changes in the distributed addon (which may or may not be wanted). For Lightning, we decided intentionally to use the distribution folder way for versions other then Daily when starting to bundle Lightning to allow a for a permanent opt-out with no not-wanted code on your system. There is a trade-off regarding respecting the user's decision for a part of the TB population and the ease of updating for the remaining part. Regarding compatible versions, for Daily, simply remove overinstalled copies of the addons and you get catered with the up-to-date and compatible version. For beta/esr, remove the mentioned pref if you have problems because you uninstalled Lightning before. After doing so and as long as you don't install it manually again, updates will happen on TB update automatically - apart from that, there exists https://developer.mozilla.org/en-US/docs/Mozilla/Calendar/Calendar_Versions#Development_Snapshots For Google provider, for Daily the above mentioned applies and for esr, use amo (or it's successor). For beta would would have to download it from the beta builds, if there is no respective verion on amo. Any change to the existing update behaviour would require changes in the AddonManager or XPIProvider code, which I assume will not be accepted anymore since legacy addons support is discontinued in FF. Am 09.12.2017 um 14:24 schrieb Jörg Knobloch: > On 09/12/2017 13:44, MakeMyDay wrote: >> Check your prefs for extensions.installedDistroAddon.<extension-id>, >> for Lightning, this is: >> >> extensions.installedDistroAddon.{e2fda1a4-762b-4020-b5ad-a41df1933103} >> >> Iirc, if that pref is set and the respective extension is not in the >> list stored in extensions.xpiState, the installation of an addon is >> prevented in XPIProvider code to prevent a once uninstalled >> distributed addon from being installed again. (Unfortunately, there is >> not a similar mechanism for disabled addons, which make disabled >> Lightning addon to enabled on updates). So removing the pref should >> bring your Lightning back on restart. > > \o/ > > Yay, that did the trick. I'm a little surprised that you can remove > distribution add-ons, I thought you can just disable them. > > Thanks for the help, I'll keep the solution in mind. > > Any suggestions how we could alleviate the search for matching add-ons, > like Lightning and the Gdata Provider? > > Jörg. > >
TP
Tom Prince
Sun, Dec 10, 2017 10:53 PM

On Sat, Dec 9, 2017 at 12:05 PM MakeMyDay makemyday@gmx-topmail.de wrote:

For Lightning, we decided intentionally to use the distribution folder
way for versions other then Daily when starting to bundle Lightning to
allow a for a permanent opt-out with no not-wanted code on your system.
There is a trade-off regarding respecting the user's decision for a part
of the TB population and the ease of updating for the remaining part.

Is that still the right decision? If even people who are being paid to work
on Thunderbird have trouble figuring out how to install and/or active the
calendar, then I think we are making the wrong choice. I'm fine with
allowing people to compile a version of Thunderbird that doesn't include
calendar, but (based partly on Ryan's survey) I think we should switch to
enabling it by default, and install it into app-dir/extension[1].

Related to this, we have a bunch of code to package and localize Lighting
and the gdata provider that needs to be manually kept in sync with upstream
code; to be able to generate separate xpi's that can be installed
separately. Given the confusion around installing things separately, I'd
like to switch to just building the extension for distribution as part of
Thunderbird (at least when enabled at build time), or even remove the code
for building separate extensions entirely.

-- Tom

[1] If I understand your explanation, installing into app-dir/distribution
doesn't actually lead to the code not being present on people's systems,
since at the very least, whenever they update, the code will get
re-installed.

On Sat, Dec 9, 2017 at 12:05 PM MakeMyDay <makemyday@gmx-topmail.de> wrote: > For Lightning, we decided intentionally to use the distribution folder > way for versions other then Daily when starting to bundle Lightning to > allow a for a permanent opt-out with no not-wanted code on your system. > There is a trade-off regarding respecting the user's decision for a part > of the TB population and the ease of updating for the remaining part. > Is that still the right decision? If even people who are being paid to work on Thunderbird have trouble figuring out how to install and/or active the calendar, then I think we are making the wrong choice. I'm fine with allowing people to compile a version of Thunderbird that doesn't include calendar, but (based partly on Ryan's survey) I think we should switch to enabling it by default, and install it into app-dir/extension[1]. Related to this, we have a bunch of code to package and localize Lighting and the gdata provider that needs to be manually kept in sync with upstream code; to be able to generate separate xpi's that can be installed separately. Given the confusion around installing things separately, I'd like to switch to just building the extension for distribution as part of Thunderbird (at least when enabled at build time), or even remove the code for building separate extensions entirely. -- Tom [1] If I understand your explanation, installing into app-dir/distribution doesn't actually lead to the code not being present on people's systems, since at the very least, whenever they update, the code will get re-installed.
MM
Magnus Melin
Mon, Dec 11, 2017 9:29 PM

On 11-12-2017 00:53, Tom Prince wrote:

I think we should switch to enabling it by default,

Lightning is already enabled by default.

 -Magnus

On 11-12-2017 00:53, Tom Prince wrote: > I think we should switch to enabling it by default, Lightning is already enabled by default.  -Magnus
TP
Tom Prince
Mon, Dec 11, 2017 9:44 PM

On Mon, Dec 11, 2017 at 2:29 PM Magnus Melin mkmelin+mozilla@iki.fi wrote:

On 11-12-2017 00:53, Tom Prince wrote:

I think we should switch to enabling it by default,

Lightning is already enabled by default.

It looks like I was testing on nightly, where it is disabled. That may be
because of bug 1414398
https://bugzilla.mozilla.org/show_bug.cgi?id=1414398 though.

On Mon, Dec 11, 2017 at 2:29 PM Magnus Melin <mkmelin+mozilla@iki.fi> wrote: > On 11-12-2017 00:53, Tom Prince wrote: > > I think we should switch to enabling it by default, > > Lightning is already enabled by default. It looks like I was testing on nightly, where it is disabled. That may be because of bug 1414398 <https://bugzilla.mozilla.org/show_bug.cgi?id=1414398> though.