The current build configuration uses a timestamp as build id. This is a problem if you move your profile between devices, because thunderbird will not let you open a profile with the old version when it has been openend with a newer version of thunderbird (even if it is the same version just another build). This information is saved in the user profile file .thunderbird/<profile>.default/compatibility.ini. One solution would be to use a MOZ_BUILDID specified by the environment (e.g. "gentoo"?). See this link here: https://bugzilla.mozilla.org/show_bug.cgi?id=1553554 There is also a patch available that enables this, I will attach it to this bug. One needs to specify MOZ_BUILDID though. Reproducible: Always Steps to Reproduce: 1. Open profile in thunderbird that has been compiled at a later date, see it "upgraded". 2. Share profile between machines (e.g. via rsync). 3. Open profile in thunderbird that has been compiled at an earlier date. Actual Results: Thunderbird refuses to open the profile. Expected Results: Thunderbird opens the profile.
Created attachment 593764 [details, diff] thunderbird-build-id.patch
I believe this was no problem before thunderbird-68.
I agree that using pure timestamp is a bad indicator. I.e. this would prevent usage of the same profile on two systems which were built from the same Gentoo repository version. However, we need to ensure to include $PVR value because it might be possible that we rev bump because we added a patch which makes an incompatible profile change and the check in place should prevent exactly that.
*Bump* At the moment, I am using the patch and set e.g. MOZ_BUILDID="20191201000000" manually, so far it works fine. However, it would be great to have this patch or maybe something better in portage.
I am closing this as WONTFIX: It's working as intended, see my comment #3. In the meanwhile, upstream introduced "--allow-downgrade" which should already be available in TB 68.x. So if you don't care about profile protection, update your shortcuts to set this option which will address your use case.