diff --git a/Pipfile.lock b/Pipfile.lock index b59df31..c2f4449 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -459,11 +459,11 @@ }, "platformdirs": { "hashes": [ - "sha256:8a1228abb1ef82d788f74139988b137e78692984ec7b08eaa6c65f1723af28f9", - "sha256:b1d5eb14f221506f50d6604a561f4c5786d9e80355219694a1b244bcd96f4567" + "sha256:13b08a53ed71021350c9e300d4ea8668438fb0046ab3937ac9a29913a1a1350a", + "sha256:accc3665857288317f32c7bebb5a8e482ba717b474f3fc1d18ca7f9214be0cef" ], "markers": "python_version >= '3.7'", - "version": "==3.0.0" + "version": "==3.1.0" }, "pluggy": { "hashes": [ @@ -510,11 +510,11 @@ }, "pylint": { "hashes": [ - "sha256:13b2c805a404a9bf57d002cd5f054ca4d40b0b87542bdaba5e05321ae8262c84", - "sha256:ff22dde9c2128cd257c145cfd51adeff0be7df4d80d669055f24a962b351bbe4" + "sha256:0decdf8dfe30298cd9f8d82e9a1542da464db47da60e03641631086671a03621", + "sha256:3e803be66e3a34c76b0aa1a3cf4714b538335e79bd69718d34fcf36d8fff2a2b" ], "index": "pypi", - "version": "==2.16.2" + "version": "==2.16.3" }, "pyproject-hooks": { "hashes": [ @@ -526,11 +526,11 @@ }, "pytest": { "hashes": [ - "sha256:c7c6ca206e93355074ae32f7403e8ea12163b1163c976fee7d4d84027c162be5", - "sha256:d45e0952f3727241918b8fd0f376f5ff6b301cc0777c6f9a556935c92d8a7d42" + "sha256:130328f552dcfac0b1cec75c12e3f005619dc5f874f0a06e8ff7263f0ee6225e", + "sha256:c99ab0c73aceb050f68929bc93af19ab6db0558791c6a0715723abe9d0ade9d4" ], "index": "pypi", - "version": "==7.2.1" + "version": "==7.2.2" }, "pytest-cov": { "hashes": [ @@ -574,11 +574,11 @@ }, "types-protobuf": { "hashes": [ - "sha256:5f4c0ba5840d66a9f32bcfd153a5d41c503f409223eae4fda876cdd6b50a638a", - "sha256:6ecaddcc7aed2c636745a17c1411932cdef7a035304d50ffd4140297b6b882e8" + "sha256:1e59294618c9518f35f17ae1a3d866cdf7e998eb4b9907d41e9ebe5b84fde636", + "sha256:bf2b414d815dc387c0a041d9207db054c7cdb94591bb233d9b71a85243e05efc" ], "index": "pypi", - "version": "==4.21.0.7" + "version": "==4.22.0.0" }, "typing-extensions": { "hashes": [ diff --git a/README.md b/README.md index 4a7184c..feaff32 100644 --- a/README.md +++ b/README.md @@ -747,7 +747,7 @@ FileNotFoundError: Could not find module 'libiconv.dll' (or one of its dependenc ## Related projects * [ZBar](https://github.com/mchehab/zbar) is an open source software suite for reading bar codes from various sources, including webcams. -* [Aegis Authenticator](https://github.com/beemdevelopment/Aegis) is a free, secure and open source 2FA app for Android. +* [Aegis Authenticator](https://github.com/beemdevelopment/Aegis) is a free, secure and open source 2FA app for Android. This app can scan Google export QR codes and export the secrets, e.g. as JSON. However, a second device is required. * [pyzbar](https://github.com/NaturalHistoryMuseum/pyzbar) is a good QR code reader Python module * [OpenCV](https://docs.opencv.org/4.x/) (CV2) Open Source Computer Vision library with [opencv-python](https://github.com/opencv/opencv-python) * [Python QReader](https://github.com/Eric-Canas/QReader) Python QR code readers diff --git a/docs/meta.md b/docs/meta.md new file mode 100644 index 0000000..dfa4a8e --- /dev/null +++ b/docs/meta.md @@ -0,0 +1,3 @@ +## Star History + +[![Star History Chart](https://api.star-history.com/svg?repos=scito/extract_otp_secrets&type=Date)](https://star-history.com/#scito/extract_otp_secrets&Date) diff --git a/src/extract_otp_secrets.py b/src/extract_otp_secrets.py index b239397..18cf387 100644 --- a/src/extract_otp_secrets.py +++ b/src/extract_otp_secrets.py @@ -87,9 +87,8 @@ try: except Exception as e: if not quiet: print(f""" -WARN: Cannot import pyzbar or qreader module. This problem is probably due to the missing zbar shared library. -On Linux and macOS libzbar0 must be installed. -See in README.md for the installation of the libzbar0. +WARN: Cannot import pyzbar module. This problem is probably due to the missing zbar shared library. (The zbar library is optional.) +See in README.md for the installation of the zbar shared library. Exception: {e}\n""", file=sys.stderr) zbar_available = False if debug_mode: