From 01b48b3cd44cd08612c6b033b50feae2c96ff6e8 Mon Sep 17 00:00:00 2001 From: Grégoire Duchêne Date: Sat, 19 Jun 2021 09:27:27 +0100 Subject: zsh: Move the ‘vault’ function to dotfiles-darwin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dotfiles-darwin/zsh/functions/_vault | 3 +++ dotfiles-darwin/zsh/functions/vault | 19 +++++++++++++++++++ dotfiles-darwin/zsh/rc | 2 ++ 3 files changed, 24 insertions(+) create mode 100644 dotfiles-darwin/zsh/functions/_vault create mode 100644 dotfiles-darwin/zsh/functions/vault (limited to 'dotfiles-darwin') diff --git a/dotfiles-darwin/zsh/functions/_vault b/dotfiles-darwin/zsh/functions/_vault new file mode 100644 index 0000000..5cab4e5 --- /dev/null +++ b/dotfiles-darwin/zsh/functions/_vault @@ -0,0 +1,3 @@ +#compdef vault + +_arguments ": :(close open)" ": :_path_files" diff --git a/dotfiles-darwin/zsh/functions/vault b/dotfiles-darwin/zsh/functions/vault new file mode 100644 index 0000000..8196772 --- /dev/null +++ b/dotfiles-darwin/zsh/functions/vault @@ -0,0 +1,19 @@ +# -*- mode: sh -*- + +case $1 in + close) + hdiutil unmount -quiet $2 + ;; + open) + local session=$(op signin --raw) + if [[ -z ${session} ]]; then + return 1 + fi + op get item ${2:t} --fields password --session ${session} \ + | hdiutil attach -quiet -stdinpass $2 + op signout --session ${session} + ;; + *) + return 1 + ;; +esac diff --git a/dotfiles-darwin/zsh/rc b/dotfiles-darwin/zsh/rc index 0971457..b36f8ae 100644 --- a/dotfiles-darwin/zsh/rc +++ b/dotfiles-darwin/zsh/rc @@ -1,5 +1,7 @@ # -*- mode: shell-script -*- +autoload -Uz vault + alias df='df -Ph' alias ls='ls -G' alias lsh='du -a | sort -h' -- cgit v1.2.3-70-g09d2