Go to file
Niels De Graef 8f042c24aa Replace some SecretSync with a sync implementation
The idea behind `SecretSync` is a nice thing: it allows use to re-use
our async implementations of methods for the synchronous versions. The
big problem with it, is that it makes debugging issues much harder
(especially with issues related to freezes) since things can seem to be
stuck in `poll()` somewhere.

Even though it adds quite a bit of code, I think it makes sense to
replace some instances with a proper synchronous implementation. Note
that we don't do this for all usages of `SecretSync` though, as some
things will need some kind of main loop interaction anyway (for example,
when waiting for a portal's Response signal)

Another nice advantage is that it's easier to follow the logic in the
sync code than the async version.
2024-06-20 06:25:53 +00:00
.gitlab-ci ci: install packages required for the PAM module 2023-12-10 22:35:55 +05:30
bash-completion Add meson option to override of default bashcompdir 2021-03-21 17:51:24 +00:00
build .gitlab-ci.yml: Add LSan suppressions file 2023-10-19 17:24:40 +09:00
docs Python examples: use gi.require_version("Secret", "1") 2024-06-19 18:58:48 -04:00
egg tests: Remove unnecessary inclusion of <gcrypt.h> 2023-12-11 08:39:58 +09:00
libsecret Replace some SecretSync with a sync implementation 2024-06-20 06:25:53 +00:00
pam pam: add tests for the ported PAM module 2023-12-10 22:35:55 +05:30
po Add Hindi translation 2024-05-07 17:11:35 +00:00
subprojects Port documentation to gi-docgen 2022-02-02 12:19:14 +00:00
tool secret-tool: Fix memory issues in lock command 2023-12-12 12:27:12 +01:00
.dir-locals.el build: Add .dir-locals.el for Emacs 2018-07-20 10:54:30 +02:00
.gitignore Port documentation to gi-docgen 2022-02-02 12:19:14 +00:00
.gitlab-ci.yml CI: Bump image version 2024-02-16 13:16:27 -06:00
COPYING Fix up libsecret licensing 2012-08-06 11:25:08 +02:00
COPYING.TESTS Fix up libsecret licensing 2012-08-06 11:25:08 +02:00
libsecret.doap doap: add myself as maintainer 2024-02-08 12:46:19 +05:30
meson_options.txt pam: port PAM module from gnome-keyring 2023-12-10 22:35:55 +05:30
meson.build Release stable version 0.21.4 2024-02-23 10:53:23 +01:00
NEWS Release stable version 0.21.4 2024-02-23 10:53:23 +01:00
README.md README: replace ninja with meson commands 2023-07-09 20:23:02 +02:00

libsecret

A GObject-based library for accessing the Secret Service API of the freedesktop.org project, a cross-desktop effort to access passwords, tokens and other types of secrets. libsecret provides a convenient wrapper for these methods so consumers do not have to call the low-level DBus methods.

The actual Secret Service API spec can be found at https://specifications.freedesktop.org/secret-service/.

Documentation

You can find the nightly documentation at https://gnome.pages.gitlab.gnome.org/libsecret/.

Building

To build, test and install libsecret, you can use the following commands:

$ meson setup _build
$ meson compile -C _build
$ meson test -C _build
$ meson install -C _build

Contributing

You can browse the code, issues and more at libsecret's GitLab repository.

If you find a bug in libsecret, please file an issue on the issue tracker. Please try to add reproducible steps and the relevant version of libsecret.

If you want to contribute functionality or bug fixes, please open a Merge Request (MR). For more info on how to do this, see GitLab's help pages on MR's.

If libsecret is not translated in your language or you believe that the current translation has errors, you can join one of the various translation teams in GNOME. Translators do not commit directly to Git, but are advised to use our separate translation infrastructure instead. More info can be found at the translation project wiki page.

Releases

The release tarballs use semantic versioning since 0.19.0, which basically means:

  • The major version will be incremented if backward incompatible changes are added
  • The minor version will be incremented if new functionality is added in a backward compatible manner
  • The patch version will be incremented if only backward compatible bug fixes are added

Note that there is no stable/unstable indication in whether the minor version number is even or odd.