Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is there any support for roaming profiles? #728

Open
simonhughxyz opened this issue Aug 19, 2024 · 5 comments
Open

Is there any support for roaming profiles? #728

simonhughxyz opened this issue Aug 19, 2024 · 5 comments

Comments

@simonhughxyz
Copy link

I have a somewhat unusual situation, I have a DIY roaming profile set up using Thunderbird on various machines and a GPO that syncs users Thunderbird profile on logon.

However, I recently figured out that TBSync requires a DeviceID to be unique for each machine as stated in #716 and when the roaming Thunderbird profile is synced to a new machine it conflicts with the old machine due to said DeviceID being the same.

I was wondering if there is any possible solution to this? Is there a config option to get TBSync to auto generate a new DeviceID or some other way?

Any help would be greatly appreciated and thank you for your good work.

@jobisoft
Copy link
Owner

If the entire profile is synced, then it also has the exact same state data. It should work on this scenario, except if some files of the profile are not synced. Or are you using those roaming profiles in parallel, so the states can indeed run into conflicts?

This should work:

  1. machine A downloads the profile, syncs stuff, uploads the modified profile and shuts down
  2. machine B downloads the profile, syncs stuff, uploads the modified profile and shuts down
  3. machine A downloads the profile, syncs stuff, uploads the modified profile and shuts down
  4. machine C downloads the profile, syncs stuff, uploads the modified profile and shuts down

@simonhughxyz
Copy link
Author

Yes some users will be using the roaming profile in parallel, which is where I was having the issues.

Also, not all files are synced, only some of the files that contain the user configuration, not their data (I don't have the exact files in front of me right now).

It is a little hacky, but works fine as long as a user does not use more then one machine.

Is there any possible way to get it to work with two machines logged on at the same time using the same profile?

@jobisoft
Copy link
Owner

Is there any possible way to get it to work with two machines logged on at the same time using the same profile?

Unfortunately, this is not possible. For other reasons, this should actually be prevented altogether. Thunderbird itself expects exclusive access to the profile.

@simonhughxyz
Copy link
Author

Is there any possible way to get it to work with two machines logged on at the same time using the same profile?

Unfortunately, this is not possible. For other reasons, this should actually be prevented altogether. Thunderbird itself expects exclusive access to the profile.

Sorry, I did not make myself clear. I don't mean for two instances of Thunderbird to use the same profile.
But rather that two separate instances of Thunderbird use two separate local (To the computer) copies of the Thunderbird profile. However the two local copies are clones of a profile which is kept on a network share per user, so they have the same TBSync DeviceID

To clarify:

  • There is a master profile for each user in \\server\users\user.name\AppData\Roaming\Thunderbird
  • User logs into machine A, a GPO copies the master profile into the local AppData
  • User logs into machine B, a GPO copies the master profile into the local AppData
  • The wo local profiles are exact copies of each other and the master profile with the same DeviceID
  • Each instance of thunderbird on each machine has its own local copy of the profile
  • The problem occurs when TBsync from two different machines connect to the server using the same DeviceID

@jobisoft
Copy link
Owner

Ok, thanks for the clarification.

Is the master profile updated by one of the clients, or is it only used as a template for first setup on a new machine?

The clientID needs to be transmitted to the EAS server during first setup and cannot change, the template profile therefore may not have a fully setup TbSync account, but must be setup on each cloned profile. We could add a preference, which contains setup information and TbSync reads the pref and runs an auto-setup during startup, creating an new clientID and auto-selecting the to-be-synced resources. I would accept a PR for this, but do not know how much work I can put into this myself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants