The libsecret package contains a GObject based library for accessing the Secret Service API.
![[Note]](../images/note.png) 
          Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.
Download (HTTP): https://download.gnome.org/sources/libsecret/0.21/libsecret-0.21.7.tar.xz
Download MD5 sum: 7a938a802a3c17df441fbd0358866e99
Download size: 204 KB
Estimated disk space required: 11 MB (with tests)
Estimated build time: 0.3 SBU (with tests)
GLib-2.86.1 (GObject Introspection recommended)
libgcrypt-1.11.2 (or GnuTLS-3.8.10, for cryptography), and Vala-0.56.18
Gi-DocGen-2025.5 and docbook-xml-4.5, docbook-xsl-nons-1.79.2, libxslt-1.1.43 (to build manual pages), Valgrind-3.26.0 (can be used in tests), and tpm2-tss (for TPM support)
D-Bus Python-1.4.0, Gjs-1.84.2, and PyGObject-3.52.3
![[Note]](../images/note.png) 
          Any package requiring libsecret expects GNOME Keyring to be present at runtime.
Install libsecret by running the following commands:
mkdir bld &&
cd    bld &&
meson setup --prefix=/usr       \
            --buildtype=release \
            -D gtk_doc=false    \
            ..                  &&
ninja
        If you have Gi-DocGen-2025.5 installed and wish to build the API documentation for this package, issue:
sed "s/api_version_major/'0.21.7'/"            \
    -i ../docs/reference/libsecret/meson.build &&
meson configure -D gtk_doc=true                &&
ninja
        
          Now, as the root user:
        
ninja install
To test the results, issue: dbus-run-session ninja test.
          --buildtype=release:
          Specify a buildtype suitable for stable releases of the package, as
          the default may produce unoptimized binaries.
        
          -D gtk_doc=false: Allow
          building this package without Gi-DocGen-2025.5 installed. If you have
          Gi-DocGen-2025.5 installed and you
          wish to rebuild and install the API documentation, a meson configure command will
          reset this option.
        
          -D manpage=false: Use this switch if
          you have not installed libxslt-1.1.43
          and DocBook packages.
        
          -D crypto=gnutls: Use this switch if
          you want to use GnuTLS-3.8.10 for cryptography instead of
          libgcrypt-1.11.2.
        
          -D crypto=disabled: Use this switch if
          you don't have GnuTLS-3.8.10 or libgcrypt-1.11.2 installed. Note that
          disabling transport encryption support by doing this is not
          recommended.