Yubico Authenticator for Desktop (Windows, macOS and Linux) and Android
Go to file
2021-11-19 13:14:21 +01:00
.github/workflows Prefer single quotes (as per Flutter style guide). 2021-11-19 11:20:57 +01:00
doc Update README 2021-11-19 10:55:43 +01:00
lib Initialize rpc on startup. 2021-11-19 13:02:25 +01:00
linux Add ykman build to Windows and Linux (Mac still needed). 2021-11-19 12:58:16 +01:00
macos Add ykman build to MacOS. 2021-11-19 13:14:21 +01:00
test Remove executable permission from files. 2021-11-19 09:19:16 +01:00
windows Add ykman build to Windows and Linux (Mac still needed). 2021-11-19 12:58:16 +01:00
yubikey-manager@739f3122a4 Add rpc submodule. 2021-11-19 09:08:04 +01:00
.gitignore Remove executable permission from files. 2021-11-19 09:19:16 +01:00
.gitmodules Add rpc submodule. 2021-11-19 09:08:04 +01:00
.metadata Remove executable permission from files. 2021-11-19 09:19:16 +01:00
analysis_options.yaml Prefer single quotes (as per Flutter style guide). 2021-11-19 11:20:57 +01:00
build-ykman.bat Add rpc submodule. 2021-11-19 09:08:04 +01:00
build-ykman.sh Add rpc submodule. 2021-11-19 09:08:04 +01:00
pubspec.lock Add basic dependencies. 2021-11-19 11:04:08 +01:00
pubspec.yaml Add basic dependencies. 2021-11-19 11:04:08 +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].