{ pkgs, inputs }: let yubikey-manager = inputs.nixpkgs-unstable.legacyPackages.${pkgs.system}.yubikey-manager; ykman = "${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 ''