diff --git a/Makefile b/Makefile index 662e2a5..7b253af 100644 --- a/Makefile +++ b/Makefile @@ -11,7 +11,53 @@ install: all uninstall: rm -f $(PREFIX)/bw-agent $(PREFIX)/bw-proxy +launchd: + mkdir -p $(HOME)/Library/LaunchAgents + sed 's|/Users/USER/.local/bin|$(PREFIX)|' docs/com.bitwarden.agent.plist \ + > $(HOME)/Library/LaunchAgents/com.bitwarden.agent.plist + launchctl load $(HOME)/Library/LaunchAgents/com.bitwarden.agent.plist + +launchd-unload: + launchctl unload $(HOME)/Library/LaunchAgents/com.bitwarden.agent.plist 2>/dev/null || true + rm -f $(HOME)/Library/LaunchAgents/com.bitwarden.agent.plist + +systemd: + mkdir -p $(HOME)/.config/systemd/user + sed 's|%h/.local/bin|$(PREFIX)|' docs/bw-agent.service \ + > $(HOME)/.config/systemd/user/bw-agent.service + systemctl --user daemon-reload + systemctl --user enable --now bw-agent + +systemd-unload: + systemctl --user disable --now bw-agent 2>/dev/null || true + rm -f $(HOME)/.config/systemd/user/bw-agent.service + systemctl --user daemon-reload + +NM_NAME = com.8bit.bitwarden.json + +nm-firefox: +ifeq ($(shell uname),Darwin) + mkdir -p $(HOME)/Library/Application\ Support/Mozilla/NativeMessagingHosts + sed 's|/Users/USER/.local/bin|$(PREFIX)|' docs/$(NM_NAME).firefox \ + > $(HOME)/Library/Application\ Support/Mozilla/NativeMessagingHosts/$(NM_NAME) +else + mkdir -p $(HOME)/.mozilla/native-messaging-hosts + sed 's|/Users/USER/.local/bin|$(PREFIX)|' docs/$(NM_NAME).firefox \ + > $(HOME)/.mozilla/native-messaging-hosts/$(NM_NAME) +endif + +nm-chromium: +ifeq ($(shell uname),Darwin) + mkdir -p $(HOME)/Library/Application\ Support/Google/Chrome/NativeMessagingHosts + sed 's|/Users/USER/.local/bin|$(PREFIX)|' docs/$(NM_NAME).chromium \ + > $(HOME)/Library/Application\ Support/Google/Chrome/NativeMessagingHosts/$(NM_NAME) +else + mkdir -p $(HOME)/.config/google-chrome/NativeMessagingHosts + sed 's|/Users/USER/.local/bin|$(PREFIX)|' docs/$(NM_NAME).chromium \ + > $(HOME)/.config/google-chrome/NativeMessagingHosts/$(NM_NAME) +endif + clean: cargo clean -.PHONY: all install uninstall clean +.PHONY: all install uninstall launchd launchd-unload systemd systemd-unload nm-firefox nm-chromium clean diff --git a/docs/com.8bit.bitwarden.json.chromium b/docs/com.8bit.bitwarden.json.chromium new file mode 100644 index 0000000..3618806 --- /dev/null +++ b/docs/com.8bit.bitwarden.json.chromium @@ -0,0 +1,7 @@ +{ + "name": "com.8bit.bitwarden", + "description": "Bitwarden desktop proxy", + "path": "/Users/USER/.local/bin/bw-proxy", + "type": "stdio", + "allowed_origins": ["chrome-extension://nngceckbapebfimnlniiiahkandclblb/"] +} diff --git a/docs/com.8bit.bitwarden.json.firefox b/docs/com.8bit.bitwarden.json.firefox new file mode 100644 index 0000000..5fec160 --- /dev/null +++ b/docs/com.8bit.bitwarden.json.firefox @@ -0,0 +1,7 @@ +{ + "name": "com.8bit.bitwarden", + "description": "Bitwarden desktop proxy", + "path": "/Users/USER/.local/bin/bw-proxy", + "type": "stdio", + "allowed_extensions": ["{446900e4-71c2-419f-a6a7-df9c091e268b}"] +}