Hi ports,

for those of you who run firefox(or seamonkey), they added since a while
a feature called 'sync' (see https://en.wikipedia.org/wiki/Firefox_Sync)
that allows you to share bookmarks/passwords/history/prefs/add-ons/tabs
across several firefox instances on different oses/devices/computers. By
default, it uses a service provided by mozilla, encrypted and all (see
https://wiki.mozilla.org/Labs/Weave/Developer/FAQ#How_do_users_know_their_data_is_secure.3F)
but as usual, everyone is a crazy paranoid who dont want evil corps to
tamper with its personal data. The good thing is, mozilla provides the
source for the Sync server, and the instructions for how to run it.
http://docs.services.mozilla.com/howtos/run-sync.html

So, here's a WIP port (well, 10 ports...) of a snapshot of the hg tree,
tested here across some ffx on different arch/devices. It stores the
data by default in sqlite dbs, all under /var/mozilla-sync (it also
writes some py templates here, gory details). It _requires_ a vhost, so
i'm running it with paster through a provided rc script, and httpd
does the reverse proxying. YMMV.

<VirtualHost *:80>
        ServerAdmin r...@example.com
        ErrorLog    logs/sync-error
        CustomLog   logs/sync-access combined
        ServerName  sync.example.com
        ProxyRequests Off
        ProxyPass / http://localhost:5000/
        ProxyPassReverse / http://localhost:5000/
</VirtualHost>

You also _need_ to set fallback_node to the full uri of the vhost in
/etc/mozilla-sync/sync.conf. Once running fine, go to
sync.example.com/weave-password-reset, if you see a webform it's
running fine. Now follow the steps in
https://support.mozilla.org/en-US/kb/how-do-i-set-up-firefox-sync, and
dont forget to use your custom server url. Setup other devices with the
'pair a device' code, wait a while, and see other ffx history in awesome
bar or other tabs in about:sync-tabs.

I still need to craft a README, and fix some hardcoded path issues, but
all in all it's not so bad.

Comments/feedback welcome, i'd also welcome a better way to run it
within apache, for some reason FastCgiExternalServer doesnt work..
oks/feedback on the 6 depending ports welcome too!

Landry

Attachment: mozilla-sync-1.tgz
Description: application/tar-gz

Reply via email to