From 4107de019efe67f861acc2500154361022916c44 Mon Sep 17 00:00:00 2001 From: Greg Weber <1183+gregwebs@users.noreply.github.com> Date: Mon, 29 Aug 2022 11:29:01 -0500 Subject: [PATCH] add a devbox.json to convenientally run this see https://github.com/jetpack-io/devbox --- .gitignore | 1 + README.md | 36 +++++++++++++++++++++++------------- devbox.json | 7 +++++++ 3 files changed, 31 insertions(+), 13 deletions(-) create mode 100644 devbox.json diff --git a/.gitignore b/.gitignore index f026826..797ad06 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ venv/ *.csv *.json +!devbox.json diff --git a/README.md b/README.md index 434ad54..1425e4d 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ Extract two-factor authentication (2FA, TFA) secret keys from export QR codes of python extract_otp_secret_keys.py -p example_export.txt -## Requirement +## Dependencies The protobuf package of Google for proto3 is required for running this script. protobuf >= 3.14 is recommended. @@ -28,18 +28,6 @@ For printing QR codes, the qrcode module is required pip install qrcode[pil] -### Alternative installation method - -Alternatively, you can use a python virtual env for the dependencies: - - python -m venv venv - . venv/bin/activate - pip install -r requirements-buildenv.txt - pip install -r requirements.txt - -The requirements\*.txt files contain all the dependencies (also the optional ones). -To leave the python virtual env just call `deactivate`. - ## Technical background The export QR code of "Google Authenticator" contains the URL `otpauth-migration://offline?data=...`. @@ -53,3 +41,25 @@ Command for regeneration of Python code from proto3 message definition file (onl * Proto3 documentation: https://developers.google.com/protocol-buffers/docs/pythontutorial * Template code: https://github.com/beemdevelopment/Aegis/pull/406 + +## Alternative installation methods + +### venv + +Alternatively, you can use a python virtual env for the dependencies: + + python -m venv venv + . venv/bin/activate + pip install -r requirements-buildenv.txt + pip install -r requirements.txt + +The requirements\*.txt files contain all the dependencies (also the optional ones). +To leave the python virtual env just call `deactivate`. + +### devbox + +Install [devbox](https://github.com/jetpack-io/devbox), which is a wrapper for nix. Then enter the environment with Python and the packages installed with: + +``` +devbox shell +``` diff --git a/devbox.json b/devbox.json new file mode 100644 index 0000000..d8e9b57 --- /dev/null +++ b/devbox.json @@ -0,0 +1,7 @@ +{ + "packages": [ + "python310", + "python310Packages.protobuf", + "python310Packages.qrcode" + ] +} \ No newline at end of file