One day Authy for desktop was deprecated and all of a sudden I was forced to always have my smartphone with me, which I was struggling to replace with a dumbphone. To this day, I have no way out of owning an smartphone for this very reason
Same when I got my Yubikeys: I gradually moved the OTP seeds to them, wasn't that painful.
I just use a simple shell script with dmenu/xclip/oathtool:
#!/bin/zsh
typeset -A opt=(
Docker ABC
GitHub DEF
# ...
)
k=$(print -l ${(ko)opt} | dmenu -i)
[[ $k != "" ]] && oathtool --totp --base32 $opt[$k] | xclip -rmlastnl