From d636b3f526fc17deb51ab4cd7e0290eb12105b58 Mon Sep 17 00:00:00 2001 From: Wladimir <39450980+SobolevWladimir@users.noreply.github.com> Date: Fri, 27 Jan 2023 15:44:02 +0300 Subject: [PATCH] Added yandex browser support (#133) --- Makefile | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 4 ++++ 2 files changed, 60 insertions(+) diff --git a/Makefile b/Makefile index d437617..d7bdbef 100644 --- a/Makefile +++ b/Makefile @@ -241,6 +241,34 @@ hosts-vivaldi-user: *) echo "The operating system $(OS) is not supported"; exit 1 ;; \ esac +.PHONY: hosts-yandex +hosts-yandex: + @case $(OS) in \ + Linux) mkdir -p "/etc/opt/yandex-browser/native-messaging-hosts/"; \ + ln -sfv "$(LIB_DIR)/browserpass/hosts/chromium/$(APP_ID).json" "/etc/opt/yandex-browser/native-messaging-hosts/$(APP_ID).json"; \ + [ -e "/etc/opt/yandex-browser/native-messaging-hosts/$(APP_ID).json" ] || echo "Error: the symlink points to a non-existent location" >&2; \ + ;; \ + Darwin) mkdir -p "/Library/Application Support/Yandex/NativeMessagingHosts/"; \ + ln -sfv "$(LIB_DIR)/browserpass/hosts/chromium/$(APP_ID).json" "/Library/Application Support/Yandex/NativeMessagingHosts/$(APP_ID).json"; \ + [ -e "/Library/Application Support/Yandex/NativeMessagingHosts/$(APP_ID).json" ] || echo "Error: the symlink points to a non-existent location" >&2; \ + ;; \ + *) echo "The operating system $(OS) is not supported"; exit 1 ;; \ + esac + +.PHONY: hosts-yandex-user +hosts-yandex-user: + @case $(OS) in \ + Linux|*BSD) mkdir -p "$(XDG_CONFIG_HOME)/yandex-browser/NativeMessagingHosts/"; \ + ln -sfv "$(LIB_DIR)/browserpass/hosts/chromium/$(APP_ID).json" "$(XDG_CONFIG_HOME)/yandex-browser/NativeMessagingHosts/$(APP_ID).json"; \ + [ -e "$(XDG_CONFIG_HOME)/yandex-browser/NativeMessagingHosts/$(APP_ID).json" ] || echo "Error: the symlink points to a non-existent location" >&2; \ + ;; \ + Darwin) mkdir -p "${HOME}/Library/Application Support/Yandex/NativeMessagingHosts/"; \ + ln -sfv "$(LIB_DIR)/browserpass/hosts/chromium/$(APP_ID).json" "${HOME}/Library/Application Support/Yandex/NativeMessagingHosts/$(APP_ID).json"; \ + [ -e "${HOME}/Library/Application Support/Yandex/NativeMessagingHosts/$(APP_ID).json" ] || echo "Error: the symlink points to a non-existent location" >&2; \ + ;; \ + *) echo "The operating system $(OS) is not supported"; exit 1 ;; \ + esac + .PHONY: hosts-brave hosts-brave: @case $(OS) in \ @@ -486,6 +514,34 @@ policies-vivaldi-user: *) echo "The operating system $(OS) is not supported"; exit 1 ;; \ esac +.PHONY: policies-yandex +policies-yandex: + @case $(OS) in \ + Linux) mkdir -p "/etc/opt/yandex-browser/policies/managed/"; \ + ln -sfv "$(LIB_DIR)/browserpass/policies/chromium/$(APP_ID).json" "/etc/opt/yandex-browser/policies/managed/$(APP_ID).json"; \ + [ -e "/etc/opt/yandex-browser/policies/managed/$(APP_ID).json" ] || echo "Error: the symlink points to a non-existent location" >&2; \ + ;; \ + Darwin) mkdir -p "/Library/Application Support/Yandex/policies/managed/"; \ + ln -sfv "$(LIB_DIR)/browserpass/policies/chromium/$(APP_ID).json" "/Library/Application Support/Yandex/policies/managed/$(APP_ID).json"; \ + [ -e "/Library/Application Support/Yandex/policies/managed/$(APP_ID).json" ] || echo "Error: the symlink points to a non-existent location" >&2; \ + ;; \ + *) echo "The operating system $(OS) is not supported"; exit 1 ;; \ + esac + +.PHONY: policies-yandex-user +policies-yandex-user: + @case $(OS) in \ + Linux|*BSD) mkdir -p "$(XDG_CONFIG_HOME)/yandex-browser/policies/managed/"; \ + ln -sfv "$(LIB_DIR)/browserpass/policies/chromium/$(APP_ID).json" "$(XDG_CONFIG_HOME)/yandex-browser/policies/managed/$(APP_ID).json"; \ + [ -e "$(XDG_CONFIG_HOME)/yandex-browser/policies/managed/$(APP_ID).json" ] || echo "Error: the symlink points to a non-existent location" >&2; \ + ;; \ + Darwin) mkdir -p "${HOME}/Library/Application Support/Yandex/policies/managed/"; \ + ln -sfv "$(LIB_DIR)/browserpass/policies/chromium/$(APP_ID).json" "${HOME}/Library/Application Support/Yandex/policies/managed/$(APP_ID).json"; \ + [ -e "${HOME}/Library/Application Support/Yandex/policies/managed/$(APP_ID).json" ] || echo "Error: the symlink points to a non-existent location" >&2; \ + ;; \ + *) echo "The operating system $(OS) is not supported"; exit 1 ;; \ + esac + .PHONY: policies-brave policies-brave: @case $(OS) in \ diff --git a/README.md b/README.md index 43c4cae..b9f3187 100644 --- a/README.md +++ b/README.md @@ -171,6 +171,7 @@ If you provided `PREFIX` and/or `DESTDIR` while running `make install`, remember | `make hosts-brave-user` | Configure browserpass for Brave browser, for the current user only | | `make hosts-iridium-user` | Configure browserpass for Iridium browser, for the current user only | | `make hosts-vivaldi-user` | Configure browserpass for Vivaldi browser, for the current user only | +| `make hosts-yandex-user` | Configure browserpass for Yandex browser, for the current user only | | `make hosts-slimjet-user` | Configure browserpass for Slimjet browser, for the current user only | | `sudo make hosts-chromium` | Configure browserpass for Chromium browser, system-wide | | `sudo make hosts-firefox` | Configure browserpass for Firefox browser, system-wide | @@ -180,6 +181,7 @@ If you provided `PREFIX` and/or `DESTDIR` while running `make install`, remember | `sudo make hosts-brave` | Configure browserpass for Brave browser, system-wide | | `sudo make hosts-iridium` | Configure browserpass for Iridium browser, system-wide | | `sudo make hosts-vivaldi` | Configure browserpass for Vivaldi browser, system-wide | +| `sudo make hosts-yandex` | Configure browserpass for Yandex browser, system-wide | | `sudo make hosts-slimjet` | Configure browserpass for Slimjet browser, system-wide | In addition, Chromium-based browsers support the following `make` goals: @@ -193,6 +195,7 @@ In addition, Chromium-based browsers support the following `make` goals: | `make policies-iridium-user` | Automatically install browser extension from Web Store for Iridium browser, for the current user only | | `make policies-slimjet-user` | Automatically install browser extension from Web Store for Slimjet browser, for the current user only | | `make policies-vivaldi-user` | Automatically install browser extension from Web Store for Vivaldi browser, for the current user only | +| `make policies-yandex-user` | Automatically install browser extension from Web Store for Yandex browser, for the current user only | | `sudo make policies-chromium` | Automatically install browser extension from Web Store for Chromium browser, system-wide | | `sudo make policies-chrome` | Automatically install browser extension from Web Store for Google Chrome browser, system-wide | | `sudo make policies-edge` | Automatically install browser extension from Web Store for Microsoft Edge browser, system-wide | @@ -200,6 +203,7 @@ In addition, Chromium-based browsers support the following `make` goals: | `sudo make policies-iridium` | Automatically install browser extension from Web Store for Iridium browser, system-wide | | `sudo make policies-slimjet` | Automatically install browser extension from Web Store for Slimjet browser, system-wide | | `sudo make policies-vivaldi` | Automatically install browser extension from Web Store for Vivaldi browser, system-wide | +| `sudo make policies-yandex` | Automatically install browser extension from Web Store for Yandex browser, system-wide | ## Building the app