OtterBrowser / otter-browser

Otter Browser aims to recreate the best aspects of the classic Opera (12.x) UI using Qt5
https://otter-browser.org
GNU General Public License v3.0
1.83k stars 277 forks source link

Allow to sync resources using existing services #307

Open lollox opened 10 years ago

lollox commented 10 years ago

I put these links here just for future references when the synchronization feature will be developed... I don't know if they can be really useful but who knows ? :p

http://remotestorage.io/ http://blog.ziade.org/2014/05/23/data-decentralization-amp-mozilla/ https://blog.mozilla.org/warner/2014/05/23/the-new-sync-protocol/

bye :)

Cqoicebordel commented 10 years ago

I'll had http://syncthing.net/

Frenzie commented 8 years ago

Syncthing is a Dropbox alternative. There's nothing wrong with that, of course, but there are two distinctly different scenarios at play.

  1. Dedicated browser-related sync, such as Firefox Sync and similar. Firefox Sync is an obvious choice over proprietary alternatives because you can run your own server. A list of other self-hosted implementations of possible interest can be found here, but I think only Firefox Sync implements one of Opera/Otter's greatest somewhat hidden features, keywords.[1]
  2. File synchronization services like Syncthing and Owncloud.[2] In this case Otter would be taking care of the sync logic independently. The aforementioned remoteStorage sounds quite interesting in this regard, especially because it has the potential to be more generic akin to Firefox Sync, but there are other potential sources of inspiration like certain Tomboy-related implementations.

In spite of its limitations, I'm more in favor of the first approach for its practicality, even if it has a few downsides like potentially not supporting Otter-specific niceties. An Otter-specific approach is presumably not only significantly harder to implement, but it also wouldn't enable happy cooperation with other browsers on other systems, most notably on mobile devices.

[1] Not just in the addressbar, but perhaps even more so the actions exposed by default under F2 and Shift+F2. [2] Although Owncloud includes bookmarks, for the most part they don't sync with browsers (except with Firefox). Also see OwnCloud issue #14.

pierreporte commented 7 years ago

Lately, I have been thinking of the ideal synchronisation system for Otter Browser. Since we aim to let the users have as much control as possible on what they do, we need two separate systems:

  1. Something big for multiple users. Would be a complete server application with complete authentication. There would be one installation available at sync.otter-browser.org for users to easily have access to the feature. It should be possible to self-host it somewhere.
  2. Something super light for single users like a single PHP file in a directory. It does the same thing but it is really easy to self-host it even on free limited services. It is for a single user but it could be possible to have multiple directories in parallel. I believe it is essential to provide such a solution so that it is easy to have full control of your data. For upload, simple POST requests should do the job.

In both cases, Otter will upload or download local configuration files (~/.config/otter under linux) depending on the timestamps. Additional checks could be made (browser version, extensions, etc.).

This is a mockup of the synchronisation dialog:

s lection_555

When the free service we provide is selected, there are 3 cases:

For custom multi-user services, it could be an option to activate to allow user to create accounts directly with the browser or not.

Frenzie commented 7 years ago

@pierreporte How did you create your mockup?

pierreporte commented 7 years ago

@Frenzie I use Moqups. You don’t need to have an account to use a not so limited version of the full product (just click on the “try it now for free” button). There are a lot of alternatives, but you generally have to create an account or to pay on top of that. It does the job for posting here.

landroni commented 7 years ago

I'd use a sync service ONLY if it provided local encryption and no private keys on the server like SpiderOak. Unfortunately I can't recommend the SpiderOak Sync as it's been working rather erratically for me over the years...

Emdek commented 7 years ago

@landroni, yeah, we could use generic FTP with (optionally) encrypted files as basic backend, since it should cover most use cases anyway. Once that one would be ready we could think about other, specialized backends.

e-alfred commented 7 years ago

There is also FSyncMS which is a lightweight Firefox Sync 1.1 (Weave) compatible sync server for bookmarks, tabs, password, history and preferences (currently only used by Pale Moon):

https://github.com/MoonchildProductions/FSyncMS

There is also a Nextcloud/Owncloud app that still works with the latest releases:

https://github.com/owncloudarchive/mozilla_sync

The APIs are described here:

https://mozilla-services.readthedocs.io/en/latest/reg/apis.html https://mozilla-services.readthedocs.io/en/latest/storage/apis-1.1.html

JulianGro commented 3 years ago

Passwords could be synced with bitwarden. For generally syncing data, maybe something like cozy cloud could be interesting? https://cozy.io/en/ They also have a bitwarden compatible password manager, and seem to generally be aimed towards putting basically everything you can think of into one cloud.