Make it possible to import from other browsers when Firefox is installed as a Snap package
Categories
(Firefox :: Migration, enhancement)
Tracking
()
People
(Reporter: mconley, Assigned: mconley)
References
(Blocks 3 open bugs)
Details
(Whiteboard: [FIDEFE])
Attachments
(4 files)
Bug 1818237 - Make it possible to request permission to access Chrome-browser profiles. r?mstriemer!
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
Spinning this out from bug 1467094. Bug 1467094 focused itself by making it possible to find and import from Chromium when Chromium is installed as a Snap package, but Firefox is not.
When Firefox is installed as a Snap package, the permissions that it has to access the file system changes greatly. As a sandboxed application, it no longer has direct read access to the user's home directory to pull in things like history, bookmarks or passwords from other browsers.
We can, however, stat files to detect the presence of other browsers, and then use the native file picker to get temporary read access to those files. This is what we do for Safari. This bug is about using that same technique here when Firefox is installed as a Snap package.
Assignee | ||
Updated•1 year ago
|
Comment 1•1 year ago
|
||
It's worth noting that our first-run experience does have some dialogs that actively encourage users to try importing data from other browsers -- I just encountered these in the Snap version of Firefox, and clicked through, only to find that it couldn't find any other browsers (when I do in fact have Chrome installed, which a non-snap firefox build is able to find).
It's obviously not-great to be pushing users towards trying something that doesn't work, so if this ends up being something that we can't fix in the near term, we might consider suppressing any data-importation call-to-action dialogs for snappified Firefox, as a temporary mitigation to avoid causing user confusion/bother.
Assignee | ||
Updated•1 year ago
|
Updated•9 months ago
|
Updated•9 months ago
|
Assignee | ||
Comment 3•7 months ago
|
||
We're unblocked here. We're using the feature detection from bug 1852839 to do a runtime determination if we can get access to the data with the native file picker, and if so, offer the user instructions on how to do that.
Assignee | ||
Comment 4•7 months ago
|
||
This is needed for Ubuntu Linux when Firefox is installed as a Snap package.
Under those conditions, Firefox doesn't have the ability to read the contents
of the other browsers' data directories.
We work around by showing the user a native file picker and instructing them
to browse to that data directory in folder picker mode - doing so tends to give
the Firefox process access to the folder.
Updated•7 months ago
|
Assignee | ||
Comment 5•7 months ago
|
||
The front-end needs to know sometimes when the browser is installed as a Snap
in order to know what strategies it should use to gain read permissions on
other browsers data during browser migration.
Assignee | ||
Comment 6•7 months ago
|
||
Depends on D189840
Updated•7 months ago
|
Assignee | ||
Comment 7•7 months ago
|
||
Depends on D188874
Updated•7 months ago
|
Assignee | ||
Comment 8•7 months ago
|
||
I'm going to land the nsIGIOService part now, as that'll mean that folks applying the other patches won't require full binary builds to test them out after the first part merges.
Pushed by mconley@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/b69fa06f2cc5 Expose whether or not the browser is installed as a Snap package through nsIGIOService. r=Gijs
Comment 10•7 months ago
|
||
bugherder |
Comment 11•7 months ago
|
||
Pushed by mconley@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/f9fc3ecfa2a7 MockFilePicker should be able to return the nsIFile for a selected directory. r=Gijs
Comment 12•7 months ago
|
||
bugherder |
Assignee | ||
Updated•7 months ago
|
Comment 13•6 months ago
|
||
Pushed by mconley@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/477292e081b3 Make it possible to request permission to access Chrome-browser profiles. r=mstriemer,fluent-reviewers,desktop-theme-reviewers https://hg.mozilla.org/integration/autoland/rev/a8584f57dc7c Add automated tests for requesting migrator permissions. r=mstriemer
Comment 14•6 months ago
|
||
Backed out for causing mochitest/xpc failures on browser/components/migration/tests/browser/browser_safari_permissions.js / browser/components/migration/tests/unit/test_Chrome_passwords_emptySource.js
Backout link: https://hg.mozilla.org/integration/autoland/rev/f12f713898e7357b91adbc42f64690b5701d10ec
Comment 15•6 months ago
|
||
Pushed by mconley@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/87f67f05c8a8 Make it possible to request permission to access Chrome-browser profiles. r=mstriemer,fluent-reviewers,desktop-theme-reviewers https://hg.mozilla.org/integration/autoland/rev/e5d78a9ddcb4 Add automated tests for requesting migrator permissions. r=mstriemer
Comment 16•6 months ago
|
||
Backed out for causing xpc failures on browser/components/migration/tests/unit/test_Chrome_permissions.js
Backout link: https://hg.mozilla.org/integration/autoland/rev/b2becf3e4cd5c851c8bac5f040cfcc0a1baeea97
Comment 17•6 months ago
|
||
Pushed by mconley@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/0da2d5295ccf Make it possible to request permission to access Chrome-browser profiles. r=mstriemer,fluent-reviewers,desktop-theme-reviewers https://hg.mozilla.org/integration/autoland/rev/2b8519877767 Add automated tests for requesting migrator permissions. r=mstriemer
Comment 18•6 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/0da2d5295ccf
https://hg.mozilla.org/mozilla-central/rev/2b8519877767
Assignee | ||
Comment 19•6 months ago
|
||
Release Note Request (optional, but appreciated)
[Why is this notable]:
Users on Ubuntu Linux that install Firefox as a Snap package have historically been unable to import from other installed browsers. This patch makes it possible to import from Chromium when Firefox and Chromium are both installed as Snap packages.
[Affects Firefox for Android]:
No.
[Suggested wording]:
Users on Ubuntu Linux now have the ability to import from Chromium when both are installed as Snap packages.
[Links (documentation, blog post, etc)]:
None.
Comment 20•6 months ago
|
||
Added to 120 nightly release notes: https://www.mozilla.org/en-US/firefox/120.0a1/releasenotes/
Description
•