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]>
37 lines
2.5 KiB
NSIS
37 lines
2.5 KiB
NSIS
; Kestrove NSIS installer hooks (tauri.conf.json → bundle.windows.nsis.installerHooks).
|
|
; Registers the browser extension's native messaging host for the current user (HKCU, no admin), like
|
|
; native-messaging/install.ps1: a manifest next to kestrove-nmh.exe ("path" relative to the manifest, which
|
|
; Chrome and Firefox allow on Windows) and one registry key per browser.
|
|
; Extension ids: keep in sync with kestrove-apple/App/BrowserIntegration.swift (NativeHostRegistration).
|
|
; Chrome: the Chrome Web Store build, then the unpacked development build (pinned by the manifest key).
|
|
|
|
!define KV_HOST "app.kestrove.nmh"
|
|
!define KV_CHROME_ORIGINS '"chrome-extension://pmhfoafjoogobhfadaicklhkldgnafmk/", "chrome-extension://kogapfibnnpeapfcjkkpgjddbhnjfein/"'
|
|
!define KV_FIREFOX_IDS '"[email protected]"'
|
|
|
|
!macro NSIS_HOOK_POSTINSTALL
|
|
FileOpen $0 "$INSTDIR\${KV_HOST}.chrome.json" w
|
|
FileWrite $0 '{"name": "${KV_HOST}", "description": "Kestrove", "path": "kestrove-nmh.exe", "type": "stdio", "allowed_origins": [${KV_CHROME_ORIGINS}]}'
|
|
FileClose $0
|
|
FileOpen $0 "$INSTDIR\${KV_HOST}.firefox.json" w
|
|
FileWrite $0 '{"name": "${KV_HOST}", "description": "Kestrove", "path": "kestrove-nmh.exe", "type": "stdio", "allowed_extensions": [${KV_FIREFOX_IDS}]}'
|
|
FileClose $0
|
|
WriteRegStr HKCU "Software\Google\Chrome\NativeMessagingHosts\${KV_HOST}" "" "$INSTDIR\${KV_HOST}.chrome.json"
|
|
WriteRegStr HKCU "Software\Chromium\NativeMessagingHosts\${KV_HOST}" "" "$INSTDIR\${KV_HOST}.chrome.json"
|
|
WriteRegStr HKCU "Software\Microsoft\Edge\NativeMessagingHosts\${KV_HOST}" "" "$INSTDIR\${KV_HOST}.chrome.json"
|
|
WriteRegStr HKCU "Software\BraveSoftware\Brave-Browser\NativeMessagingHosts\${KV_HOST}" "" "$INSTDIR\${KV_HOST}.chrome.json"
|
|
WriteRegStr HKCU "Software\Vivaldi\NativeMessagingHosts\${KV_HOST}" "" "$INSTDIR\${KV_HOST}.chrome.json"
|
|
WriteRegStr HKCU "Software\Mozilla\NativeMessagingHosts\${KV_HOST}" "" "$INSTDIR\${KV_HOST}.firefox.json"
|
|
!macroend
|
|
|
|
!macro NSIS_HOOK_PREUNINSTALL
|
|
DeleteRegKey HKCU "Software\Google\Chrome\NativeMessagingHosts\${KV_HOST}"
|
|
DeleteRegKey HKCU "Software\Chromium\NativeMessagingHosts\${KV_HOST}"
|
|
DeleteRegKey HKCU "Software\Microsoft\Edge\NativeMessagingHosts\${KV_HOST}"
|
|
DeleteRegKey HKCU "Software\BraveSoftware\Brave-Browser\NativeMessagingHosts\${KV_HOST}"
|
|
DeleteRegKey HKCU "Software\Vivaldi\NativeMessagingHosts\${KV_HOST}"
|
|
DeleteRegKey HKCU "Software\Mozilla\NativeMessagingHosts\${KV_HOST}"
|
|
Delete "$INSTDIR\${KV_HOST}.chrome.json"
|
|
Delete "$INSTDIR\${KV_HOST}.firefox.json"
|
|
!macroend
|