diff options
Diffstat (limited to 'app-crypt/libsecret')
-rw-r--r-- | app-crypt/libsecret/Manifest | 3 | ||||
-rw-r--r-- | app-crypt/libsecret/libsecret-0.20.2.ebuild | 94 | ||||
-rw-r--r-- | app-crypt/libsecret/libsecret-0.20.3.ebuild | 94 | ||||
-rw-r--r-- | app-crypt/libsecret/libsecret-0.21.1.ebuild | 152 | ||||
-rw-r--r-- | app-crypt/libsecret/metadata.xml | 16 |
5 files changed, 164 insertions, 195 deletions
diff --git a/app-crypt/libsecret/Manifest b/app-crypt/libsecret/Manifest index a5df5463410c..a5f494cc9f2d 100644 --- a/app-crypt/libsecret/Manifest +++ b/app-crypt/libsecret/Manifest @@ -1,2 +1 @@ -DIST libsecret-0.20.2.tar.xz 526224 BLAKE2B cae93962480f65d2c91b1c26a23321d19c256692754ef37c658e346a6cb6b91cdebe134516c3c8652c5ee502b8f7a070a8d519ed878b2f6dfc124ea7b032613f SHA512 89143c8ccc8f6fa0cda2c98baef92e8cbf9b319a984826a09c527125e14712023ee65cada42a2c9232524528da8c1c3d2235ecbcb93e2f06e94121a601c22857 -DIST libsecret-0.20.3.tar.xz 526388 BLAKE2B ae2e64af61c269eb109fa7840cc7ff2362ac69eab4b452074c2cb3a80b26cc88e8d341a7649e0f16fa73541943d968dfbd6f3cc802d99a37f3a7d91e8b20cfe3 SHA512 020e1954e0965f33ee15f35e1f439b6c1650322a9112078f7a3e265cee83ad99d217ae3b363fbadc06c5cb0941f7e544d91da72e5be1c6b96992c071e6170c22 +DIST libsecret-0.21.1.tar.xz 190796 BLAKE2B 862c2aac0c519d2607c1c5b057d1e0d00d3d5bce06744ab8c6e074393ede2f154af9ab3ee988820c936c8c22dba205ee7bd570287aaa47e64fde21ae3a7dfc2b SHA512 e201b2292280c355d08f8bd2d90d6d785d7b618c82e731eb9c051599a24d8f6a0cc3e271b1876d738f4a15aab24c2b6607b6d15d4335a990e74bb0371fe941ae diff --git a/app-crypt/libsecret/libsecret-0.20.2.ebuild b/app-crypt/libsecret/libsecret-0.20.2.ebuild deleted file mode 100644 index be5c5bb142f5..000000000000 --- a/app-crypt/libsecret/libsecret-0.20.2.ebuild +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -PYTHON_COMPAT=( python3_{6,7} ) -VALA_USE_DEPEND=vapigen - -inherit gnome2 multilib-minimal python-any-r1 vala virtualx - -DESCRIPTION="GObject library for accessing the freedesktop.org Secret Service API" -HOMEPAGE="https://wiki.gnome.org/Projects/Libsecret" - -LICENSE="LGPL-2.1+ Apache-2.0" # Apache-2.0 license is used for tests only -SLOT="0" - -IUSE="+crypt +introspection test +vala" -RESTRICT="!test? ( test )" -# Tests fail with USE=-introspection, https://bugs.gentoo.org/655482 -REQUIRED_USE="test? ( introspection ) - vala? ( introspection )" - -KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 sparc x86" - -RDEPEND=" - >=dev-libs/glib-2.44:2[${MULTILIB_USEDEP}] - crypt? ( >=dev-libs/libgcrypt-1.2.2:0=[${MULTILIB_USEDEP}] ) - introspection? ( >=dev-libs/gobject-introspection-1.29:= ) -" -PDEPEND=">=gnome-base/gnome-keyring-3 -" -# PDEPEND to avoid circular dep (bug #547456) -# gnome-keyring needed at runtime as explained at https://bugs.gentoo.org/475182#c2 -# Add ksecrets to PDEPEND when it's added to portage -DEPEND="${RDEPEND} - dev-libs/libxslt - dev-util/gdbus-codegen - >=dev-util/gtk-doc-am-1.9 - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - test? ( - $(python_gen_any_dep ' - dev-python/mock[${PYTHON_USEDEP}] - dev-python/dbus-python[${PYTHON_USEDEP}] - introspection? ( dev-python/pygobject:3[${PYTHON_USEDEP}] )') - introspection? ( >=dev-libs/gjs-1.32 ) - ) - vala? ( $(vala_depend) ) -" - -python_check_deps() { - if use introspection; then - has_version --host-root "dev-python/pygobject:3[${PYTHON_USEDEP}]" || return - fi - has_version --host-root "dev-python/mock[${PYTHON_USEDEP}]" && - has_version --host-root "dev-python/dbus-python[${PYTHON_USEDEP}]" -} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_prepare() { - use vala && vala_src_prepare - gnome2_src_prepare - - # Drop unwanted CFLAGS modifications - sed -e 's/CFLAGS="$CFLAGS -\(g\|O0\|O2\)"//' -i configure || die -} - -multilib_src_configure() { - local ECONF_SOURCE=${S} - gnome2_src_configure \ - --enable-manpages \ - --disable-strict \ - --disable-coverage \ - --disable-static \ - $(use_enable crypt gcrypt) \ - $(multilib_native_use_enable introspection) \ - $(multilib_native_use_enable vala) \ - LIBGCRYPT_CONFIG="${EPREFIX}/usr/bin/${CHOST}-libgcrypt-config" - - if multilib_is_native_abi; then - ln -s "${S}"/docs/reference/libsecret/html docs/reference/libsecret/html || die - fi -} - -multilib_src_test() { - # tests fail without gobject-introspection - multilib_is_native_abi && virtx emake check -} - -multilib_src_install() { - gnome2_src_install -} diff --git a/app-crypt/libsecret/libsecret-0.20.3.ebuild b/app-crypt/libsecret/libsecret-0.20.3.ebuild deleted file mode 100644 index e5125875d2b1..000000000000 --- a/app-crypt/libsecret/libsecret-0.20.3.ebuild +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -PYTHON_COMPAT=( python3_{6,7} ) -VALA_USE_DEPEND=vapigen - -inherit gnome2 multilib-minimal python-any-r1 vala virtualx - -DESCRIPTION="GObject library for accessing the freedesktop.org Secret Service API" -HOMEPAGE="https://wiki.gnome.org/Projects/Libsecret" - -LICENSE="LGPL-2.1+ Apache-2.0" # Apache-2.0 license is used for tests only -SLOT="0" - -IUSE="+crypt +introspection test +vala" -RESTRICT="!test? ( test )" -# Tests fail with USE=-introspection, https://bugs.gentoo.org/655482 -REQUIRED_USE="test? ( introspection ) - vala? ( introspection )" - -KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~sparc x86" - -RDEPEND=" - >=dev-libs/glib-2.44:2[${MULTILIB_USEDEP}] - crypt? ( >=dev-libs/libgcrypt-1.2.2:0=[${MULTILIB_USEDEP}] ) - introspection? ( >=dev-libs/gobject-introspection-1.29:= ) -" -PDEPEND=">=gnome-base/gnome-keyring-3 -" -# PDEPEND to avoid circular dep (bug #547456) -# gnome-keyring needed at runtime as explained at https://bugs.gentoo.org/475182#c2 -# Add ksecrets to PDEPEND when it's added to portage -DEPEND="${RDEPEND} - dev-libs/libxslt - dev-util/gdbus-codegen - >=dev-util/gtk-doc-am-1.9 - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - test? ( - $(python_gen_any_dep ' - dev-python/mock[${PYTHON_USEDEP}] - dev-python/dbus-python[${PYTHON_USEDEP}] - introspection? ( dev-python/pygobject:3[${PYTHON_USEDEP}] )') - introspection? ( >=dev-libs/gjs-1.32 ) - ) - vala? ( $(vala_depend) ) -" - -python_check_deps() { - if use introspection; then - has_version --host-root "dev-python/pygobject:3[${PYTHON_USEDEP}]" || return - fi - has_version --host-root "dev-python/mock[${PYTHON_USEDEP}]" && - has_version --host-root "dev-python/dbus-python[${PYTHON_USEDEP}]" -} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_prepare() { - use vala && vala_src_prepare - gnome2_src_prepare - - # Drop unwanted CFLAGS modifications - sed -e 's/CFLAGS="$CFLAGS -\(g\|O0\|O2\)"//' -i configure || die -} - -multilib_src_configure() { - local ECONF_SOURCE=${S} - gnome2_src_configure \ - --enable-manpages \ - --disable-strict \ - --disable-coverage \ - --disable-static \ - $(use_enable crypt gcrypt) \ - $(multilib_native_use_enable introspection) \ - $(multilib_native_use_enable vala) \ - LIBGCRYPT_CONFIG="${EPREFIX}/usr/bin/${CHOST}-libgcrypt-config" - - if multilib_is_native_abi; then - ln -s "${S}"/docs/reference/libsecret/html docs/reference/libsecret/html || die - fi -} - -multilib_src_test() { - # tests fail without gobject-introspection - multilib_is_native_abi && virtx emake check -} - -multilib_src_install() { - gnome2_src_install -} diff --git a/app-crypt/libsecret/libsecret-0.21.1.ebuild b/app-crypt/libsecret/libsecret-0.21.1.ebuild new file mode 100644 index 000000000000..5b17eac59d1e --- /dev/null +++ b/app-crypt/libsecret/libsecret-0.21.1.ebuild @@ -0,0 +1,152 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{10..12} ) + +inherit bash-completion-r1 gnome2 meson-multilib python-any-r1 vala virtualx + +DESCRIPTION="GObject library for accessing the freedesktop.org Secret Service API" +HOMEPAGE="https://wiki.gnome.org/Projects/Libsecret" + +LICENSE="LGPL-2.1+ Apache-2.0" # Apache-2.0 license is used for tests only +SLOT="0" + +IUSE="+crypt gtk-doc +introspection test test-rust tpm +vala" +RESTRICT="!test? ( test )" +REQUIRED_USE=" + vala? ( introspection ) + gtk-doc? ( crypt ) +" + +KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86" + +DEPEND=" + >=dev-libs/glib-2.44:2[${MULTILIB_USEDEP}] + crypt? ( >=dev-libs/libgcrypt-1.2.2:0=[${MULTILIB_USEDEP}] ) + tpm? ( >=app-crypt/tpm2-tss-3.0.3:= ) + introspection? ( >=dev-libs/gobject-introspection-1.54:= ) +" +RDEPEND="${DEPEND}" +PDEPEND="virtual/secret-service" +BDEPEND=" + app-text/docbook-xml-dtd:4.2 + dev-libs/libxslt + dev-util/gdbus-codegen + dev-util/glib-utils + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + gtk-doc? ( + app-text/docbook-xml-dtd:4.1.2 + >=dev-util/gi-docgen-2021.7 + ) + test? ( + $(python_gen_any_dep ' + dev-python/dbus-python[${PYTHON_USEDEP}] + introspection? ( dev-python/pygobject:3[${PYTHON_USEDEP}] )') + test-rust? ( introspection? ( >=dev-libs/gjs-1.32 ) ) + tpm? ( + app-crypt/swtpm + app-crypt/tpm2-abrmd + >=app-crypt/tpm2-tss-3.2.0:= + ) + ) + vala? ( $(vala_depend) ) +" + +dbus_run() { + ( + # start isolated dbus session bus + dbus_data=$(dbus-launch --sh-syntax) || exit + eval "${dbus_data}" + + $@ + ret=${?} + + kill "${DBUS_SESSION_BUS_PID}" + exit "${ret}" + ) || die +} + +tpm2_run_with_emulator() { + export XDG_CONFIG_HOME=${T}/.config/swtpm + "${BROOT}"/usr/share/swtpm/swtpm-create-user-config-files --overwrite || die + + mkdir -p ${XDG_CONFIG_HOME}/mytpm1 || die + swtpm_setup_args=( + --tpm2 + --tpmstate ${XDG_CONFIG_HOME}/mytpm1 + --createek + --allow-signing + --decryption + --create-ek-cert + --create-platform-cert + --lock-nvram + --overwrite + --display + ) + swtpm_setup "${swtpm_setup_args[@]}" || die + + swtpm_socket_args=( + --tpm2 + --tpmstate dir=${XDG_CONFIG_HOME}/mytpm1 + --flags startup-clear + --ctrl type=unixio,path=${XDG_CONFIG_HOME}/mytpm1/swtpm.socket.ctrl + --server type=unixio,path=${XDG_CONFIG_HOME}/mytpm1/swtpm.socket + --pid file=${XDG_CONFIG_HOME}/mytpm1/swtpm.pid + --daemon + ) + swtpm socket "${swtpm_socket_args[@]}" || die + + tpm2_abrmd_args=( + --logger=stdout + --tcti=swtpm:path=${XDG_CONFIG_HOME}/mytpm1/swtpm.socket + --session + --flush-all + ) + tpm2-abrmd "${tpm2_abrmd_args[@]}" & + export TCTI=tabrmd:bus_type=session + + $@ || die + + # When swtpm dies, tmp2-abrmd will exit + kill $(< ${XDG_CONFIG_HOME}/mytpm1/swtpm.pid) || die +} + +python_check_deps() { + if use introspection; then + python_has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]" || return + fi + python_has_version "dev-python/dbus-python[${PYTHON_USEDEP}]" +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_prepare() { + use vala && vala_setup + default +} + +multilib_src_configure() { + local emesonargs=( + $(meson_native_true manpage) + $(meson_use crypt gcrypt) + $(meson_native_use_bool vala vapi) + $(meson_native_use_bool gtk-doc gtk_doc) + $(meson_native_use_bool introspection) + -Dbashcompdir="$(get_bashcompdir)" + $(meson_native_enabled bash_completion) + $(meson_native_use_bool tpm tpm2) + ) + meson_src_configure +} + +multilib_src_test() { + if use tpm; then + dbus_run tpm2_run_with_emulator virtx meson test -C "${BUILD_DIR}" + else + virtx dbus-run-session meson test -C "${BUILD_DIR}" + fi +} diff --git a/app-crypt/libsecret/metadata.xml b/app-crypt/libsecret/metadata.xml index 996e7cacd217..3d7258d053bc 100644 --- a/app-crypt/libsecret/metadata.xml +++ b/app-crypt/libsecret/metadata.xml @@ -1,8 +1,14 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="project"> - <email>gnome@gentoo.org</email> - <name>Gentoo GNOME Desktop</name> - </maintainer> + <maintainer type="project"> + <email>gnome@gentoo.org</email> + <name>Gentoo GNOME Desktop</name> + </maintainer> + <use> + <flag name="tpm">Enable Trusted Platform Module support via <pkg>app-crypt/tpm2-tss</pkg></flag> + </use> + <upstream> + <remote-id type="gnome-gitlab">GNOME/libsecret</remote-id> + </upstream> </pkgmetadata> |