#!/bin/bash # Description: A browser plugin for the pass password store set -e function _browserpass { local browser=$1 local _prefix=$HOME/.local case $_PLATFORM in darwin) _prefix=/usr/local/opt/browserpass ;; arch) _prefix=/usr ;; esac _run "[browserpass] Installing native messaging host to $browser" \ make PREFIX=$_prefix hosts-$browser-user \ -f $_prefix/lib/browserpass/Makefile } case $_PLATFORM in darwin) _recipe brew _brew_tap amar1729/formulae _brew browserpass test -e /Applications/Google\ Chrome.app && _browserpass chrome test -e /Applications/Firefox.app && _browserpass firefox ;; arch) _recipe _arch if command -v chromium 2>&1 >/dev/null \ || command -v google-chrome 2>&1 >/dev/null \ || command -v google-chrome-stable 2>&1 >/dev/null; then _pacman browserpass-chromium fi if command -v firefox 2>&1 >/dev/null \ || command -v firedragon 2>&1 >/dev/null; then _pacman browserpass-firefox fi if command -v google-chrome 2>&1 >/dev/null \ || command -v google-chrome-stable 2>&1 >/dev/null; then _browserpass chrome fi ;; *) if ! test -d ~/.local/lib/browserpass; then echo "[curl] Downloading browserpass native" local tempdir=$(mktemp -d) curl -sL https://github.com/browserpass/browserpass-native/releases/download/3.0.6/browserpass-linux64-3.0.6.tar.gz \ | tar xz -C "$tempdir" --strip-components=1 pushd "$tempdir" >/dev/null _run "[make] Install browserpass" make PREFIX=$HOME/.local BIN=browserpass-linux64 configure install popd >/dev/null rm -rf "$tempdir" fi command -v chromium-browser 2>&1 >/dev/null && _browserpass chromium command -v google-chrome 2>&1 >/dev/null && _browserpass chrome command -v firefox 2>&1 >/dev/null && _browserpass firefox esac