otp plugin now uses the following logic for its home: - If $OTP_HOME is set by the user, use that value - If ~/.otp dir already exists, use that value - If XDG_DATA_HOME is set, use $XDG_DATA_HOME/otp - Else fallback to ~/.otp |
||
|---|---|---|
| .. | ||
| otp.plugin.zsh | ||
| README.md | ||
otp plugin
This plugin allows you to create one-time passwords using oathtool,
able to replace MFA devices. The oathtool key is kept in a GPG-encrypted file so the codes
can only be generated by a user able to decrypt it.
To use it, add otp to the plugins array in your zshrc file:
plugins=(... otp)
Provided aliases:
-
otp_add_device: creates a new encrypted storage for an oathtool key and stores it on the disk. For encrypting the key, it will ask for a GPG user ID (your GPG key's email address). Then the OTP key needs to be pasted, followed by a CTRL+D character inserted on an empty line. -
ot: generates a MFA code based on the given key and copies it to the clipboard (on Linux it relies on xsel, on MacOS X it uses pbcopy instead).
The plugin stores its internal files in $OTP_HOME, which can be set in your zshrc.
If $OTP_HOME is not set it defaults to either $HOME/.otp or $XDG_DATA_HOME/otp,
depending on whether ~/.otp already exists, or whether $XDG_DATA_HOME is set.