The store build has its own id, so the native-messaging manifest refused it and the extension reported the app as not running. Chrome now allows the store id and the unpacked development id, in the NSIS hook and in both install scripts; --chrome-id / -ChromeId take a list. Co-Authored-By: Claude Opus 5.5 <[email protected]>
32 lines
1.9 KiB
Markdown
32 lines
1.9 KiB
Markdown
# Native messaging manifests
|
|
|
|
`install.sh` (Linux, macOS) and `install.ps1` (Windows) fill in the placeholders and register the
|
|
manifests for the current user. Chrome allows two ids by default: the Chrome Web Store build
|
|
(`pmhfoafjoogobhfadaicklhkldgnafmk`) and the unpacked development build, pinned to
|
|
`kogapfibnnpeapfcjkkpgjddbhnjfein` by the manifest key in kestrove-browser. Firefox uses `[email protected]`.
|
|
Pass `--chrome-id a,b` / `-ChromeId a,b` to allow other ids instead.
|
|
|
|
```bash
|
|
native-messaging/install.sh # every browser with a profile dir, host from target/
|
|
native-messaging/install.sh --browsers chrome --nmh /opt/kestrove/kestrove-nmh
|
|
native-messaging/install.sh --user-data-dir /tmp/profile # a Chromium started with --user-data-dir (tests)
|
|
native-messaging/install.sh --uninstall
|
|
```
|
|
|
|
| Browser | macOS (dev only; the Apple app ships its own host) |
|
|
|---|---|
|
|
| Chrome | `~/Library/Application Support/Google/Chrome/NativeMessagingHosts/` |
|
|
| Edge / Brave / Chromium | `~/Library/Application Support/{Microsoft Edge,BraveSoftware/Brave-Browser,Chromium}/NativeMessagingHosts/` |
|
|
| Firefox | `~/Library/Application Support/Mozilla/NativeMessagingHosts/` |
|
|
|
|
|
|
| Browser | Linux | Windows |
|
|
|---|---|---|
|
|
| Chrome | `~/.config/google-chrome/NativeMessagingHosts/app.kestrove.nmh.json` | `HKCU\Software\Google\Chrome\NativeMessagingHosts\app.kestrove.nmh` → path to json |
|
|
| Edge | `~/.config/microsoft-edge/NativeMessagingHosts/` | `HKCU\Software\Microsoft\Edge\NativeMessagingHosts\app.kestrove.nmh` |
|
|
| Firefox | `~/.mozilla/native-messaging-hosts/app.kestrove.nmh.json` | `HKCU\Software\Mozilla\NativeMessagingHosts\app.kestrove.nmh` |
|
|
| Brave | `~/.config/BraveSoftware/Brave-Browser/NativeMessagingHosts/` | same key as Chrome |
|
|
|
|
`allowed_origins` / `allowed_extensions` pin the host to **your** extension id.
|
|
That is the first line of defense against other extensions (docs/04 A8).
|