User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:33.0) Gecko/20100101 Firefox/33.0 Build ID: 20141011015303 Steps to reproduce: Install extensions. Some common to all your Firefox's. Some at your work, for your work (LocalLink, FoxyProxy, for example). Actual results: All my extensions are synced in the other places. Expected results: I'd like to say, for each extension, if I want to sync them with the other instances or not.
If you want different add-ons installed on different devices, then that sounds very much like you should turn off add-on sync. Having per-add-on settings would be significant additional complexity.
Well, it's a bit like games in Steam... you can choose, per game, if you want to store the saves in the cloud or not, so that the saves can be loaded when you connect to your account on another device. It doesn't seem extremely complex to me: if add-on sync is turned on, by default the add-on data are synced, but if the user turned it off for this add-on, then the data aren't synchronized.
UX wise, it can simply be a cloud icon next to each add-on in the add-ons list, if the cloud icon is colored, sync is on, if the cloud icon grayed, sync is off.
(In reply to Creak from comment #3) > It doesn't seem extremely complex to me: if add-on sync is turned on, by > default the add-on data are synced, but if the user turned it off for this > add-on, then the data aren't synchronized. Sync doesn't sync add-on _data_, it syncs the list of installed add-ons. I suspect you haven't thought through the user experience here. When I turn on add-on sync on my device, do all of my add-ons automatically get opted-in? Do we need to prompt? Prompts are bad. When I install a new add-on, does it get opted in? Do we need to prompt? Prompts are bad. What happens if I check the box next to an add-on. Does it get automatically installed on other devices? Does it enter some kind of pending state? What happens if I uncheck the box. On other devices, does it get uninstalled? Disabled? Removed from the list? Do I need to remove it by hand on each device? If we do automatically opt-in new add-ons, and I realize I made a mistake and quickly uncheck the box, do I need to go manually clean up my other devices? The only set of choices that is feasible in Sync and comes close to a good UX is for no add-ons to sync by default, for checking the box to force-install everywhere, and for unchecking to not uninstall everywhere. But that makes the new user flow very fiddly and potentially confusing, it reduces the value of add-on sync without extensive UX work, and there are edge cases. Sync is primarily intended to be a simple, one-switch "keep everything the same" service. You'll notice that you also can't choose to sync only some of your bookmarks, or some logins, or sync in one direction, all of which have been requested by technical users. The more configuration there is, the harder it is to make Sync work correctly, and the less likely it is that users will understand it. Given that users don't change their add-ons much, most users don't have two desktops, and installing add-ons in Firefox is really easy — use Send Tab to send the AMO page to your other device! — having configurability here is simply not worth the complexity.
Thanks for this answer. And, well, I agree with most of what you said, and I indeed didn't think it through, I'm sorry. I'm also a big fan of keeping things simple and not provide useless options to the users since it mostly ends up with users not using them, and developers with much more work to do in order to test all the code paths. My mistake was that I thought that add-on data was already synced (like bookmarks or history), but only its being installed is synced. That being said, I also think that where UX shines is when an application intelligently hides unnecessary options to the new users, but allow more technical users to still be able to get the maximum out of it. So maybe this feature isn't worth the investment, but I won't say that it adds complexity for the user, because it could be quite transparent to the user until he notices it (by default, add-on would be synced like it is right now). But again, I understand the rationale.