au2001 / icloud-passwords-firefox

Firefox extension which lets you use your passwords stored on iCloud Keychain®.
https://addons.mozilla.org/en-US/firefox/addon/icloud-passwords/
Apache License 2.0
76 stars 5 forks source link

Availability in Firefox extension directory #30

Closed hacketiwack closed 5 months ago

hacketiwack commented 5 months ago

I think this extension is a real benefit for the end user of Firefox on macOS. Therefore, I wanted to install it but couldn't find it anymore in the official Firefox extension directory. Is there something that could be done to publish the extension automatically from GitHub to the Firefox official website?

au2001 commented 5 months ago

The extension has currently been disabled by Mozilla due to a DMCA notice received from Apple for the similarity with their Chrome extension. I'm working with both of them to get it restored ASAP (if at all possible) and I will have their final decision by the end of next week (Jan 26th). If it all goes well, the extension will be available again automatically and will receive the latest updates from GitHub. This is currently a manual process, but I will automate it with GitHub Actions soon™.

hacketiwack commented 5 months ago

Amazing! Thanks. I unfortunately don't have anymore access to Apple support to fast forward the process on Apple side.

UsernamesLame commented 5 months ago

Is it possible to just rename it?

au2001 commented 5 months ago

@UsernamesLame Unfortunately not, the issue is presumably regarding the code itself. I've rewritten all of it in version 1.1.0, hoping it can be reinstated. The extension cannot be republished in the mean time under a different name as the exact extension ID password-manager-firefox-extension@apple.com is required for it to work properly.

UsernamesLame commented 5 months ago

@UsernamesLame Unfortunately not, the issue is presumably regarding the code itself. I've rewritten all of it in version 1.1.0, hoping it can be reinstated. The extension cannot be republished in the mean time under a different name as the exact extension ID password-manager-firefox-extension@apple.com is required for it to work properly.

Is there any specific reason for password-manager-firefox-extension@apple.com?

I haven't looked at the source code at all. I'm going to now to see if I can think of a creative solution.

EDIT:

https://github.com/au2001/icloud-passwords-firefox/blob/433ff9c1190b60325cd39a0df7352d9accbf850d/meta/manifest.json#L28

Are you just trying to ensure you don't break it for people who used to have it installed? I would just break the old installs to restore it and not get DMCAd.

But to understand correctly,

https://github.com/au2001/icloud-passwords-firefox/blob/433ff9c1190b60325cd39a0df7352d9accbf850d/src/api.ts

chrome.runtime.connectNative("com.apple.passwordmanager")).

You're connecting to a I assume unix socket?

au2001 commented 5 months ago

But to understand correctly,

https://github.com/au2001/icloud-passwords-firefox/blob/433ff9c1190b60325cd39a0df7352d9accbf850d/src/api.ts

chrome.runtime.connectNative("com.apple.passwordmanager")).

You're connecting to a I assume unix socket?

Correct, that's a native messaging port. Here is its manifest as installed by macOS Sonoma as of 14.2.1: /Library/Application Support/Mozilla/NativeMessagingHosts/com.apple.passwordmanager.json

{
    "name": "com.apple.passwordmanager",
    "description": "PasswordManagerBrowserExtensionHelper",
    "path": "/System/Cryptexes/App/System/Library/CoreServices/PasswordManagerBrowserExtensionHelper.app/Contents/MacOS/PasswordManagerBrowserExtensionHelper",
    "type": "stdio",
    "allowed_extensions": [
        "password-manager-firefox-extension@apple.com"
    ]
}

Are you just trying to ensure you don't break it for people who used to have it installed? I would just break the old installs to restore it and not get DMCAd.

Because of the allowed_extensions above, the extension would not work at all if it was republished as-is.\ It would require an install script ran on macOS (e.g. in the Terminal) to add the new extension ID to this manifest.

au2001 commented 5 months ago

The extension has been restored on addons.mozilla.org as of today. GitHub Actions implementation will be tracked separately in #31.