Open Bug 1792230 Opened 2 years ago Updated 6 months ago

Make it possible to import bookmarks data from the DuckDuckGo browser

Categories

(Firefox :: Migration, enhancement)

47 Branch
enhancement

Tracking

()

People

(Reporter: mconley, Unassigned)

References

(Depends on 1 open bug, Blocks 2 open bugs)

Details

Attachments

(2 files)

Steps to reproduce:

I tried to import data from another browser.

Actual results:

DuckDuckGo isn't listed.

Expected results:

DuckDuckGo should be listed.

Assignee: nobody → brianpt1106

What we'd like you to do Brian is to install a copy of the DuckDuckGo browser and study it a bit. Is it based on Chromium? Or (as I think I've heard recently) does it use the OS's built-in web engine?

Assignee: brianpt1106 → angelvillalobos1995
Assignee: angelvillalobos1995 → nobody
Assignee: nobody → alew7

This browser has just launched in the Apple App Store: https://apps.apple.com/gb/app/duckduckgo-private-browser/

Assignee: alew7 → nobody
Summary: Make it possible import data from the DuckDuckGo browser → Make it possible to import bookmarks data from the DuckDuckGo browser
Assignee: nobody → alew7

Alvin's notes: https://docs.google.com/document/d/1m9aP4UohphFuzi6oSGTcFNziNSqX6txqjjbXwsyiXbI/edit?usp=sharing

Great research, Alvin! Here's how we can get started on this:

  1. Create a new file called browser/components/migration/DuckDuckGoProfileMigrator.sys.mjs, and then hg add it to tracking.

  2. Put this boilerplate in the file (see attachment)

  3. Then add the migrator to MigrationUtils here, above EdgeProfileMigrator: https://searchfox.org/mozilla-central/rev/7939a5150dcd96915bccf1c819433ad489a5edc9/browser/components/migration/MigrationUtils.sys.mjs#37. Remember, it should only be available for the macosx platform.

  4. Add the DuckDuckGo string to migrationWizard.ftl - something like:

migration-wizard-migrator-display-name-duckduckgo = DuckDuckGo

above here: https://searchfox.org/mozilla-central/rev/7939a5150dcd96915bccf1c819433ad489a5edc9/browser/locales/en-US/browser/migrationWizard.ftl#38

Then, if you do ./mach build faster, I think you should see DuckDuckGo show up in the list of things that can be migrated from in the new migration wizard.

That'll get you started - the real work will be to access the SQLite database inside of that GetBookmarksResource function, and read the bookmarks out. Then we'll need to construct the right structure for calling MigrationUtils.insertManyBookmarksWrapper.

  1. Finally, enable the migrator by default by adding pref("browser.migrate.duckduckgo.enabled", true); in this list: https://searchfox.org/mozilla-central/rev/7939a5150dcd96915bccf1c819433ad489a5edc9/browser/app/profile/firefox.js#2160
Attached file Boilerplate

I haven't tested this, but from inspection, I think it should work.

Ah, one thing I forgot to include in the instructions - we need to package the .mjs file so that it can be imported.

Please add DuckDuckGoProfileMigrator.sys.mjs to this list here: https://searchfox.org/mozilla-central/rev/53631b0cfb807325b85394a340cc1c5a8dc2de4f/browser/components/migration/moz.build#68

Attachment #9328702 - Attachment description: WIP: Bug 1792230 - Make it possible to import bookmarks data from the DuckDuckGo browser. r?mconley → Bug 1792230 - Make it possible to import bookmarks data from the DuckDuckGo browser. r?mconley
Depends on: 1831950

The bug assignee is inactive on Bugzilla, so the assignee is being reset.

Assignee: alew7 → nobody
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: