🔐 keyring-lib
High-level API for keyring, a cross-platform library to manage secrets.
This library can be seen as a convenient wrapper around keyring:
- No cargo feature is exposed (this library uses internally the keyring one
linux-secret-service-rt-tokio-crypto-rust) secret-serviceis included in this library, which prevents build issues.- The service name is changed globally instead, using the function
keyring::set_global_service_name. - The entry has a new function
find_secretthat returns aResult<Option<String>>. - Every functions are logged using the log crate.
See the full API documentation and some examples.
Development
The development environment is managed by Nix. Running nix-shell will spawn a shell with everything you need to get started with the lib: cargo, cargo-watch, rust-bin, rust-analyzer…
# Start a Nix shell
$ nix-shell
# then build the lib
$ cargo build -p keyring-lib
Contributing
If you want to report a bug that does not exist yet, please send an email at ~soywod/pimalaya@todo.sr.ht.
If you want to propose a feature or fix a bug, please send a patch at ~soywod/pimalaya@lists.sr.ht using git send-email. Follow this guide to configure git properly.
If you just want to discuss about the project, feel free to join the Matrix workspace #pimalaya.general or contact me directly @soywod. You can also use the mailing list [send an email|subscribe|unsubscribe].
Sponsoring
Special thanks to the NLnet foundation and the European Commission that helped the project to receive financial support from:
- NGI Assure in 2022
- NGI Zero Untrust in 2023
If you appreciate the project, feel free to donate using one of the following providers:
