Yubico Authenticator for Desktop (Windows, macOS and Linux) and Android
Go to file
2022-02-21 13:21:12 +01:00
.github/workflows Update workflow for new file name. 2022-01-26 10:51:21 +01:00
assets/product-images Add product images. 2021-11-24 13:28:38 +01:00
doc Update README 2021-11-19 10:55:43 +01:00
lib Use SEVERE instead of WARNING for unparsable log lines. 2022-02-21 13:21:12 +01:00
linux Update build scripts. 2022-02-10 13:38:46 +01:00
macos Update mac build for ykman-rpc. 2022-02-10 14:17:54 +01:00
test Remove executable permission from files. 2021-11-19 09:19:16 +01:00
windows Update build scripts. 2022-02-10 13:38:46 +01:00
ykman-rpc Update ykman and replace submodule with pyproject config. 2022-02-21 10:47:33 +01:00
.gitignore Remove executable permission from files. 2021-11-19 09:19:16 +01:00
.gitmodules Update ykman and replace submodule with pyproject config. 2022-02-21 10:47:33 +01:00
.metadata Remove executable permission from files. 2021-11-19 09:19:16 +01:00
analysis_options.yaml Enable lint check for unawaited_futures. 2022-01-25 12:46:51 +01:00
build-ykman.bat Update ykman and replace submodule with pyproject config. 2022-02-21 10:47:33 +01:00
build-ykman.sh Update ykman and replace submodule with pyproject config. 2022-02-21 10:47:33 +01:00
build.yaml Add start of navigation structure. 2021-11-22 14:00:23 +01:00
pubspec.lock Update dependencies. 2022-01-19 13:57:09 +01:00
pubspec.yaml Update dependencies. 2022-01-19 13:57:09 +01:00
README.adoc Update README 2021-11-19 10:55:43 +01:00

== Yubico Authenticator for Desktop

=== Requirements
You will need the Flutter SDK with enabled desktop support, see:
https://flutter.dev/desktop

Development has been done using the "Install from git" method of installing the
SDK, from the "beta" channel.

You will also need to provide a compiled version of the ykman CLI. This can
either be built locally (see the next section), or manually downloaded and
placed in `build/<os>/ykman/`. Builds are available for download from GitHub
Actions in the `yubikey-manager` project.


=== Building the ykman CLI locally
Requirements: Python >= 3.6 and Poetry.

The GUI requires a compiled version of the ykman CLI to run, which is build
using pyinstaller from the yubikey-manager submodule in this repository. The
`build-ykman.sh` (`build-ykman.bat` on Windows) script in this repository will
take care of this, producing a build in `build/<os>/ykman` which will then be
included in the main GUI. See the `yubikey-manager` project documentation for
any build requirements needed in this step.

For faster development when making modifications to the CLI, you can skip the
re-compilation step and instead set the `_YKMAN_PATH` environment variable to
the location of a `ykman` executable to run:

  _YKMAN_PATH="/path/to/ykman.exe" flutter run -d windows


=== Running the app
To start the app, run:

  flutter run -d <os>

where <os> is "windows", "macos", or "linux". You can add the `--release` flag
to run a release build instead of debug. Builds of the app will be create under
`build/<os>/`.


=== Running tests
Tests can be run with the command:

  flutter test


=== Packaging for MacOS
See link:doc/MacOS_Packaging.adoc[MacOS Packaging].