Code Monkey home page Code Monkey logo

otpgen's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

otpgen's Issues

System libs cmake switches

Issue template

Thanks for using my software. If you think you found a bug or experience
a problem make sure to work through this checklist first.

For feature suggestions ignore this list.

  • Operating System

  • Compiler

  • CMake version

  • CMake build options used and the console output

  • When using the GUI: version of Qt

  • zlib: bundled or shared

  • QR Code Support enabled?

  • A description of the issue

  • If possible, how to reproduce the problem

I'm packaging OTPGen for NixOS here and it would be much preferred if we could have the choice of using system libs instead of the bundled libs (with cmake options for example).

[idea] v2 rewrite

This codebase is an unholy mess, but I use this application myself everyday and some other people have shown interest in it too. I definitely won't continue improving this existing codebase. I consider a complete rewrite from scratch and tag it as version 2 instead.

Interesting libraries to check out:

  • zbar as QR Code backend. TODO: Check if the library supports reading from regular image files. Having shit like V4L2 support is nice, but my application must be able to decode QR codes from files stored on disk and not a realtime webcam source.

Thoughts:

  • Drop the CLI version. I never finished the CLI version in this version so it most likely will not happen in v2 either.

  • Don't implement custom client-side window decorations and themes!! It's a mess to implement this and keep up with it and most people will just complain about why the application doesn't follow their configured theme anyway.

  • Continue using Qt for the GUI. Keep the core free from Qt specific code to keep it usable for other non-Qt frontends.

  • Reduce amount of dependencies wherever possible.

  • Create a new database format and write a migration tool to transfer over the v0.9.3 database. I don't plan to keep either of those 2 formats.

The rewrite is happening in a new repository -> https://github.com/magiruuvelvet/OTPGen2

Support

This software is still supported by me and I fix bugs and keep it working with recent versions of unbundled dependencies, but no features are added anymore anytime soon.

Support patches can be found in the dist directory of this repository.

Make sure to use the latest release tag and not the master branch.

`QObjectUserData` was removed in Qt 5.14

The alternative PROPERTY uses QVariant which doesn't support raw pointers. ๐Ÿ˜ญ The undocumented USERDATA used raw pointers which were a nice hack to transfer data between unrelated functions and objects.

/usr/include/qt5/QtCore/qvariant.h:497:12: note: 'QVariant' has been explicitly marked deleted here
    inline QVariant(void *) = delete;

Just replacing all function calls didn't went so well. To fix this issue I need an additional layer of wrapping the pointer into a class and use that for QVariant.

This is what you get for using undocumented private APIs -> pain and suffering.

Migration tools Libcrypto++ pkg-name instead of libcryptopp

Issue template

Same issue as in pull request 3 but in Migration Tool's CMakeLists.txt file

  • Operating System

  • Compiler

  • CMake version

  • CMake build options used and the console output

  • When using the GUI: version of Qt

  • zlib: bundled or shared

  • QR Code Support enabled?

  • A description of the issue

  • If possible, how to reproduce the problem

https://github.com/SCOTT-HAMILTON/OTPGen/blob/fix-libcrypto%2B%2B-to-libcryptopp/Source/MigrationTool/CMakeLists.txt#L31

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.