Closed Bug 1404956 Opened 2 years ago Closed 2 years ago

Regression: 1Password no longer recognizes Firefox Nightly due to changed bundle identifier

Categories

(Firefox :: Untriaged, defect)

All
macOS
defect
Not set

Tracking

()

VERIFIED FIXED
Tracking Status
firefox56 --- unaffected
firefox57 --- unaffected
firefox58 --- verified

People

(Reporter: jamie, Unassigned)

References

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Safari/604.1.38

Steps to reproduce:

* Install Firefox Nightly 58
* Install 1Password and the 1Password add-on in Firefox Nightly 58

Notes:
This is similar to Bug 1404823, but it affects Firefox Nightly's identity on the system. Firefox's bundle identifier in Info.plist is set based on MOZ_APP_DISPLAYNAME, which is changed as part of Bug 1378834 (See first patch). Instead, I would propose basing the bundle identifier off BrandFullNameInternal instead, but perhaps there is a better way.


Actual results:

1Password no longer recognizes Firefox 58


Expected results:

1Password recognizes Firefox 58
Hey Jamie, sounds like bug 1404796 addresses this, can you confirm?
Depends on: 1404796
(In reply to Kev Needham [:kev] from comment #1)
> Hey Jamie, sounds like bug 1404796 addresses this, can you confirm?

I don't think so, Kevin. Previously, the bundle identifier was org.mozilla.nightly. Now, with the change to MOZ_APP_DISPLAY_NAME, it is org.mozilla.firefoxnightly.

And actually, the patch in bug 1404796 will only make things worse. The code that sets the bundle identifier simply uses `tr` to downcase the MOZ_APP_DISPLAY_NAME value:

    MOZ_MACBUNDLE_ID=`echo $MOZ_APP_DISPLAYNAME | tr '[A-Z]' '[a-z]'`

Adding the space will make the bundle identifier entirely invalid because spaces are not allowed: https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/uid/TP40009249-102070-TPXREF105
> Adding the space will make the bundle identifier entirely invalid because spaces are not allowed
For this, we could also remove the space in the MOZ_MACBUNDLE_ID variable.
We could also change the definition of MOZ_MACBUNDLE_ID to be org.mozilla.nightly as it was.
I think changing it back to org.mozilla.nightly is the path of least disruption.
Stephen, do you agree?
Flags: needinfo?(spohl.mozilla.bugs)
Clearing n-i as this is being backed out for now.
Flags: needinfo?(spohl.mozilla.bugs)
This issue was fixed by the backed out changes from bug 1378834.
Status: UNCONFIRMED → RESOLVED
Closed: 2 years ago
Depends on: 1378834
OS: Unspecified → Mac OS X
Hardware: Unspecified → All
Resolution: --- → FIXED
Depends on: 1406662
See Also: → 1417826
osascript -e 'id of app "Firefox Nightly"'
org.mozilla.nightly

Also, 1Password seems now to properly identify Firefox Nightly correctly. Not sure if this suffices in order  to mark this issue as verified, or if there is anything that should be additionally checked. 
Jamie, Sylvestre, thoughts on any specific tests related to the bundle identifier that should be ran before marking this issue as verified or areas of risk?
Flags: needinfo?(sledru)
Flags: needinfo?(jamie)
After the initial kerfuffle, things have calmed down on this front. Basically, 1Password will not allow any connection or offer any functionality if the bundle identifier is not an expected value. 1Password understands the following values for a few different Firefox variants:

* org.mozilla.firefox
* org.mozilla.aurora
* org.mozilla.firefoxdeveloperedition
* org.mozilla.nightly

The issue here was that the bundle id changed unexpectedly. Now that it's back to just .nightly, I think we're in good shape.
Flags: needinfo?(jamie)
Flags: needinfo?(sledru)
Then based on comment 8 and comment 9, marking it as verified fixed.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.