This ticket tracks making Firefox schedule the background task that actually downloads and stages updates, using the in-Gecko background task machinery of Bug 1667276 for actually doing the update logic and the task scheduler machinery of Bug 1676296 for scheduling (at least, on Windows).
This obsoletes, I think, Bug 1458283. I'm not a proponent of superceding old tickets in general, but the latter has a lot of discussion of using
PostUpdateTask that isn't the technical approach I intend to pursue with the new background task machinery. In particular, I expect to schedule the update tasks from within Firefox itself, and only when the default browsing profile is in use, so that we have the "correct" set of prefs and extensions (langpacks) to determine eligibility. Thus, this ticket also incorporates determining the first version of eligibility for background updates. From my notes, the criteria should include:
- has an
app.update.background pref flipped on (or is otherwise opted in)
- does not have
app.update.auto in default profile (on Windows, this is any profile)
- has an install (on Windows)
- has an omnijar (there's no sense trying to update developer builds)
- either does not have
app.update.langpack.enabled in default profile, or has no langpacks in default profile
This ticket incorporates Bug 1568287, most likely, since we'll need to land on some schedule for running the background update task.