Patchwork [v3] libsecret: New package

login
register
mail settings
Submitter Markos Chandras
Date Aug. 28, 2013, 10:23 a.m.
Message ID <1377685417-5813-1-git-send-email-markos.chandras@imgtec.com>
Download mbox | patch
Permalink /patch/270428/
State Accepted
Headers show

Comments

Markos Chandras - Aug. 28, 2013, 10:23 a.m.
libsecret is a library for storing and retrieving passwords
and other secrets. It communicates with the "Secret Service"
using DBus. gnome-keyring and ksecretservice are both
implementations of a Secret Service.

libsecret replaces libgnome-keyring.

https://wiki.gnome.org/Libsecret

Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
---
Changes since v2:
- Drop BR2_PACKAGE_LIBSECRET_CRYPTO and enable encryption if
libgcrypt is selected

Changes since v1:
- depend on USE_WCHAR and TOOLCHAIN_HAS_THREADS which are required by libglib2
http://lists.busybox.net/pipermail/buildroot/2013-August/076565.html
---
 package/Config.in              |  1 +
 package/libsecret/Config.in    | 15 +++++++++++++++
 package/libsecret/libsecret.mk | 24 ++++++++++++++++++++++++
 3 files changed, 40 insertions(+)
 create mode 100644 package/libsecret/Config.in
 create mode 100644 package/libsecret/libsecret.mk
Markos Chandras - Sept. 2, 2013, 11:36 a.m.
On 28 August 2013 11:23, Markos Chandras <markos.chandras@imgtec.com> wrote:
> libsecret is a library for storing and retrieving passwords
> and other secrets. It communicates with the "Secret Service"
> using DBus. gnome-keyring and ksecretservice are both
> implementations of a Secret Service.
>
> libsecret replaces libgnome-keyring.
>
> https://wiki.gnome.org/Libsecret
>
> Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
> ---
> Changes since v2:
> - Drop BR2_PACKAGE_LIBSECRET_CRYPTO and enable encryption if
> libgcrypt is selected
>
> Changes since v1:
> - depend on USE_WCHAR and TOOLCHAIN_HAS_THREADS which are required by libglib2
> http://lists.busybox.net/pipermail/buildroot/2013-August/076565.html
> ---
>  package/Config.in              |  1 +
>  package/libsecret/Config.in    | 15 +++++++++++++++
>  package/libsecret/libsecret.mk | 24 ++++++++++++++++++++++++
>  3 files changed, 40 insertions(+)
>  create mode 100644 package/libsecret/Config.in
>  create mode 100644 package/libsecret/libsecret.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index 7069d77..93e280d 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -423,6 +423,7 @@ source "package/libassuan/Config.in"
>  source "package/libmcrypt/Config.in"
>  source "package/libmhash/Config.in"
>  source "package/libnss/Config.in"
> +source "package/libsecret/Config.in"
>  source "package/libsha1/Config.in"
>  source "package/nettle/Config.in"
>  source "package/openssl/Config.in"
> diff --git a/package/libsecret/Config.in b/package/libsecret/Config.in
> new file mode 100644
> index 0000000..a15f995
> --- /dev/null
> +++ b/package/libsecret/Config.in
> @@ -0,0 +1,15 @@
> +config BR2_PACKAGE_LIBSECRET
> +       bool "libsecret"
> +       select BR2_PACKAGE_LIBGLIB2
> +       depends on BR2_USE_WCHAR # gettext dep in libglib2
> +       depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
> +       help
> +         libsecret is a library for storing and retrieving passwords and other
> +         secrets. It communicates with the "Secret Service" using DBus.
> +         gnome-keyring and ksecretservice are both implementations of a Secret
> +         Service.
> +
> +         https://wiki.gnome.org/Libsecret
> +
> +comment "libsecret requires a toolchain with WCHAR and threading support."
> +       depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
> diff --git a/package/libsecret/libsecret.mk b/package/libsecret/libsecret.mk
> new file mode 100644
> index 0000000..ebdfe11
> --- /dev/null
> +++ b/package/libsecret/libsecret.mk
> @@ -0,0 +1,24 @@
> +################################################################################
> +#
> +# libsecret
> +#
> +################################################################################
> +
> +LIBSECRET_VERSION = 0.15
> +LIBSECRET_SITE = http://ftp.gnome.org/pub/GNOME/sources/libsecret/$(LIBSECRET_VERSION)
> +LIBSECRET_SOURCE = libsecret-$(LIBSECRET_VERSION).tar.xz
> +LIBSECRET_LICENSE = LGPLv2.1+
> +LIBSECRET_LICENSE_FILES = COPYING
> +LIBSECRET_INSTALL_STAGING = YES
> +
> +LIBSECRET_DEPENDENCIES = libglib2
> +LIBSECRET_CONF_OPT = --disable-manpages --disable-strict --disable-coverage --enable-vala=no
> +
> +ifeq ($(BR2_PACKAGE_LIBGCRYPT),y)
> +       LIBSECRET_DEPENDENCIES += libgcrypt
> +       LIBSECRET_CONF_OPT += --enable-gcrypt
> +else
> +       LIBSECRET_CONF_OPT += --disable-gcrypt
> +endif
> +
> +$(eval $(autotools-package))
> --
> 1.8.3.2
>
>
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

Ping? :) This package is needed for newer webkits which I intend to
submit a patch for it when libsecret package
is committed.
Thomas Petazzoni - Sept. 2, 2013, 11:52 a.m.
Dear Markos Chandras,

On Mon, 2 Sep 2013 12:36:04 +0100, Markos Chandras wrote:

> Ping? :) This package is needed for newer webkits which I intend to
> submit a patch for it when libsecret package
> is committed.

You can always submit series of patches that include both libsecret and
the webkit bump, for example.

But anyway, this package looks good. Peter, can you commit this?

Thomas
Markos Chandras - Sept. 2, 2013, 4:20 p.m.
On 2 September 2013 12:52, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Markos Chandras,
>
> On Mon, 2 Sep 2013 12:36:04 +0100, Markos Chandras wrote:
>
>> Ping? :) This package is needed for newer webkits which I intend to
>> submit a patch for it when libsecret package
>> is committed.
>
> You can always submit series of patches that include both libsecret and
> the webkit bump, for example.

Hi Thomas,

Well yeah, but webkit is a bit messy so I was hoping to do it in a
clean patchset without including other dependencies in it :)

>
> But anyway, this package looks good. Peter, can you commit this?

Thanks!
Peter Korsgaard - Sept. 2, 2013, 8:42 p.m.
>>>>> "Markos" == Markos Chandras <markos.chandras@imgtec.com> writes:

 Markos> libsecret is a library for storing and retrieving passwords
 Markos> and other secrets. It communicates with the "Secret Service"
 Markos> using DBus. gnome-keyring and ksecretservice are both
 Markos> implementations of a Secret Service.

 Markos> libsecret replaces libgnome-keyring.

 Markos> https://wiki.gnome.org/Libsecret

 Markos> Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
 Markos> ---
 Markos> Changes since v2:
 Markos> - Drop BR2_PACKAGE_LIBSECRET_CRYPTO and enable encryption if
 Markos> libgcrypt is selected

 Markos> Changes since v1:
 Markos> - depend on USE_WCHAR and TOOLCHAIN_HAS_THREADS which are required by libglib2
 Markos> http://lists.busybox.net/pipermail/buildroot/2013-August/076565.html
 Markos> ---
 Markos>  package/Config.in              |  1 +
 Markos>  package/libsecret/Config.in    | 15 +++++++++++++++
 Markos>  package/libsecret/libsecret.mk | 24 ++++++++++++++++++++++++
 Markos>  3 files changed, 40 insertions(+)
 Markos>  create mode 100644 package/libsecret/Config.in
 Markos>  create mode 100644 package/libsecret/libsecret.mk

 Markos> diff --git a/package/Config.in b/package/Config.in
 Markos> index 7069d77..93e280d 100644
 Markos> --- a/package/Config.in
 Markos> +++ b/package/Config.in
 Markos> @@ -423,6 +423,7 @@ source "package/libassuan/Config.in"
 Markos>  source "package/libmcrypt/Config.in"
 Markos>  source "package/libmhash/Config.in"
 Markos>  source "package/libnss/Config.in"
 Markos> +source "package/libsecret/Config.in"
 Markos>  source "package/libsha1/Config.in"
 Markos>  source "package/nettle/Config.in"
 Markos>  source "package/openssl/Config.in"
 Markos> diff --git a/package/libsecret/Config.in b/package/libsecret/Config.in
 Markos> new file mode 100644
 Markos> index 0000000..a15f995
 Markos> --- /dev/null
 Markos> +++ b/package/libsecret/Config.in
 Markos> @@ -0,0 +1,15 @@
 Markos> +config BR2_PACKAGE_LIBSECRET
 Markos> +	bool "libsecret"
 Markos> +	select BR2_PACKAGE_LIBGLIB2
 Markos> +	depends on BR2_USE_WCHAR # gettext dep in libglib2
 Markos> +	depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
 Markos> +	help
 Markos> +	  libsecret is a library for storing and retrieving passwords and other
 Markos> +	  secrets. It communicates with the "Secret Service" using DBus.
 Markos> +	  gnome-keyring and ksecretservice are both implementations of a Secret
 Markos> +	  Service.

Just like Arnout I wonder if this does anything useful without dbus? If
not, I think we should select dbus even if it is only a runtime
dependency.


 Markos> +
 Markos> +	  https://wiki.gnome.org/Libsecret
 Markos> +
 Markos> +comment "libsecret requires a toolchain with WCHAR and threading support."
 Markos> +	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
 Markos> diff --git a/package/libsecret/libsecret.mk b/package/libsecret/libsecret.mk
 Markos> new file mode 100644
 Markos> index 0000000..ebdfe11
 Markos> --- /dev/null
 Markos> +++ b/package/libsecret/libsecret.mk
 Markos> @@ -0,0 +1,24 @@
 Markos> +################################################################################
 Markos> +#
 Markos> +# libsecret
 Markos> +#
 Markos> +################################################################################
 Markos> +
 Markos> +LIBSECRET_VERSION = 0.15
 Markos> +LIBSECRET_SITE = http://ftp.gnome.org/pub/GNOME/sources/libsecret/$(LIBSECRET_VERSION)
 Markos> +LIBSECRET_SOURCE = libsecret-$(LIBSECRET_VERSION).tar.xz
 Markos> +LIBSECRET_LICENSE = LGPLv2.1+
 Markos> +LIBSECRET_LICENSE_FILES = COPYING
 Markos> +LIBSECRET_INSTALL_STAGING = YES
 Markos> +
 Markos> +LIBSECRET_DEPENDENCIES = libglib2

It also needs host-intltool.

Committed with this fixed, thanks.

Patch

diff --git a/package/Config.in b/package/Config.in
index 7069d77..93e280d 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -423,6 +423,7 @@  source "package/libassuan/Config.in"
 source "package/libmcrypt/Config.in"
 source "package/libmhash/Config.in"
 source "package/libnss/Config.in"
+source "package/libsecret/Config.in"
 source "package/libsha1/Config.in"
 source "package/nettle/Config.in"
 source "package/openssl/Config.in"
diff --git a/package/libsecret/Config.in b/package/libsecret/Config.in
new file mode 100644
index 0000000..a15f995
--- /dev/null
+++ b/package/libsecret/Config.in
@@ -0,0 +1,15 @@ 
+config BR2_PACKAGE_LIBSECRET
+	bool "libsecret"
+	select BR2_PACKAGE_LIBGLIB2
+	depends on BR2_USE_WCHAR # gettext dep in libglib2
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
+	help
+	  libsecret is a library for storing and retrieving passwords and other
+	  secrets. It communicates with the "Secret Service" using DBus.
+	  gnome-keyring and ksecretservice are both implementations of a Secret
+	  Service.
+
+	  https://wiki.gnome.org/Libsecret
+
+comment "libsecret requires a toolchain with WCHAR and threading support."
+	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/libsecret/libsecret.mk b/package/libsecret/libsecret.mk
new file mode 100644
index 0000000..ebdfe11
--- /dev/null
+++ b/package/libsecret/libsecret.mk
@@ -0,0 +1,24 @@ 
+################################################################################
+#
+# libsecret
+#
+################################################################################
+
+LIBSECRET_VERSION = 0.15
+LIBSECRET_SITE = http://ftp.gnome.org/pub/GNOME/sources/libsecret/$(LIBSECRET_VERSION)
+LIBSECRET_SOURCE = libsecret-$(LIBSECRET_VERSION).tar.xz
+LIBSECRET_LICENSE = LGPLv2.1+
+LIBSECRET_LICENSE_FILES = COPYING
+LIBSECRET_INSTALL_STAGING = YES
+
+LIBSECRET_DEPENDENCIES = libglib2
+LIBSECRET_CONF_OPT = --disable-manpages --disable-strict --disable-coverage --enable-vala=no
+
+ifeq ($(BR2_PACKAGE_LIBGCRYPT),y)
+	LIBSECRET_DEPENDENCIES += libgcrypt
+	LIBSECRET_CONF_OPT += --enable-gcrypt
+else
+	LIBSECRET_CONF_OPT += --disable-gcrypt
+endif
+
+$(eval $(autotools-package))