18 lines
418 B
Nix
18 lines
418 B
Nix
{ pkgs }:
|
|
let
|
|
ykman = "${pkgs.yubikey-manager}/bin/ykman";
|
|
sk = "${pkgs.skim}/bin/sk";
|
|
wl-copy = "${pkgs.wl-clipboard}/bin/wl-copy";
|
|
in
|
|
pkgs.writeShellScriptBin "otp" ''
|
|
skim_command=("${sk}")
|
|
|
|
if [ -n "$*" ]; then
|
|
skim_command+=(-q "$*")
|
|
fi
|
|
|
|
account=$(${ykman} oath accounts list | "''${skim_command[@]}")
|
|
[ -z "$account" ] && exit 1
|
|
${ykman} oath accounts code -s "$account" | ${wl-copy} -n
|
|
''
|