Opened 3 years ago

Closed 4 months ago

#20083 closed enhancement (wontfix)

`app.update.enabled` should remove updater UI elements when set to false.

Reported by: yawning Owned by: tbb-team
Priority: Medium Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-sandboxing, tbb-usability, tbb-update
Cc: brade, mcs, tseretni-rmd Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

I have a use case that requires setting app.update.enabled to false.

This mostly works as I expect, however the UI element for forcing a manual update check in the Help->About Tor Browser dialog still remains visible and functional. If the updater is disabled, the UI elements associated with it should be hidden.

On a side note, it would be nice if the built in updater could be force disabled at launch time via an env var as well, for those most special of snowflakes.

Child Tickets

Change History (13)

comment:1 Changed 3 years ago by mcs

Cc: brade mcs added

Unfortunately, app.update.enabled = false really just means "Never check for updates automatically" and so, as you point out, it does not remove the UI entirely (app.update.auto means automatically check, download, and install). Since I don't think we should change the meaning of existing Firefox preferences, we will need to add a new pref such as app.update.hideui or app.update.manual.allowed. Better suggestions are welcome.

Also, as far as I know, there is no runtime support in the Mozilla code for hiding the UI or completely disabling the updater, so we will need to add that logic too.

comment:2 Changed 3 years ago by yawning

Keywords: tbb-sandboxing added

This also applies to the Tor Button menu entry Check for Tor Browser Update and the about:tor built in version check with the black arrow of doom.

Not sure what the best way to approach this is. Preferably all of this will be env var driven so the Linux sandbox doesn't need to write out a prefs.js file on bundle install, but I'm flexible at this point.

comment:3 in reply to:  description ; Changed 3 years ago by bugzilla

Keywords: tbb-usability added

Replying to yawning:

If the updater is disabled, the UI elements associated with it should be hidden.

app.update.enabled is about "update", not "updater", so everything is fine with it.
Why do you want to disable auto-updates? Mozilla even made a MozillaMaintananceService to circumvent different "sandboxes" in order to update "sandboxed" browser. And you just want to go back to manual updates. Or do you have something better?

comment:4 in reply to:  3 ; Changed 3 years ago by yawning

Replying to bugzilla:

Replying to yawning:

If the updater is disabled, the UI elements associated with it should be hidden.

app.update.enabled is about "update", not "updater", so everything is fine with it.

I don't care what the pref is called, or if it's a separate pref, env var, or whatever, as long as it's possible.

Why do you want to disable auto-updates? Mozilla even made a MozillaMaintananceService to circumvent different "sandboxes" in order to update "sandboxed" browser.

Because a sandbox that lets the sandboxed app re-write itself is terrible.

And you just want to go back to manual updates.

No.

Or do you have something better?

Yes.

ps: *plonk*

comment:5 in reply to:  4 Changed 3 years ago by bugzilla

Replying to yawning:

Replying to bugzilla:

Replying to yawning:

If the updater is disabled, the UI elements associated with it should be hidden.

app.update.enabled is about "update", not "updater", so everything is fine with it.

I don't care what the pref is called, or if it's a separate pref, env var, or whatever, as long as it's possible.

You don't care about Mozilla's prefs, they don't care about your needs ;)

Why do you want to disable auto-updates? Mozilla even made a MozillaMaintananceService to circumvent different "sandboxes" in order to update "sandboxed" browser.

Because a sandbox that lets the sandboxed app re-write itself is terrible.

Not itself: browser asks the updater, updater asks for permissions, service or user grant them, and updater updates sandboxed browser. (Oh, what you've written is even more funny: every polymorphic virus re-writes itself in a sandbox :)

And you just want to go back to manual updates.

No.

Phew.

Or do you have something better?

Yes.

Another one updater?

ps: *plonk*

P.S.: cheap wine of inferior quality? ;)

comment:6 Changed 13 months ago by dmr

Cc: dmr added

comment:7 Changed 13 months ago by dmr

Cc: dmr removed

comment:8 Changed 13 months ago by tseretni-rmd

Cc: tseretni-rmd added

comment:9 Changed 4 months ago by gk

Keywords: tbb-updater added

comment:10 Changed 4 months ago by gk

Keywords: tbb-update added; tbb-updater removed

Renaming keyword to make it a bit broader

comment:11 Changed 4 months ago by Thorin

Note that app.update.enabled was removed in FF63+ (https://bugzilla.mozilla.org/1420514), so I wouldn't waste any resources on coding around this. Also, OP has misunderstood the pref. It has only ever meant to disable AUTO-update CHECKING, not the actual ability to update.

The pref to stop auto-updating (after the auto-check) is app.update.auto. In FF65+ this pref is no longer used in Windows (but the UI setting is still kept, the value of the pref is kept elsewhere). I believe https://bugzilla.mozilla.org/show_bug.cgi?id=1458308 is the ticket

comment:12 Changed 4 months ago by yawning

I don't really care about this anymore, since the project I wanted this for hasn't been developed for years.

Also, OP has misunderstood the pref. It has only ever meant to disable AUTO-update CHECKING, not the actual ability to update.

As people have pointed out two years ago. This was more of a general request for "give me a way to hide every single update related UI element", but, again it's a moot point for me personally (though likely still something that's nice to have for someone out there).

comment:13 Changed 4 months ago by brade

Resolution: wontfix
Status: newclosed

Resolving as wontfix because this is not currently needed.

Note: See TracTickets for help on using tickets.