There are a few command line tools for generating time-based one-time passwords. There's no real magic to it, the codes are just generated from running a SHA1 algorithm on a secret string. A QR code is just a silly/inefficient way of communicating that secret string to an app, it's little different to copy/paste.
Have a google around and see what you're comfortable with using.
|