All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-oe][PATCH v2 1/2] libfido2-initial: new recipe
@ 2026-03-16 22:30 Dan McGregor
  2026-03-16 22:30 ` [meta-oe][PATCH v2 2/2] redis 8: Update licence Dan McGregor
  0 siblings, 1 reply; 2+ messages in thread
From: Dan McGregor @ 2026-03-16 22:30 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Dan McGregor

From: Dan McGregor <danmcgr@protonmail.com>

Use this recipe to break a circular dependency between libfido2 and
systemd when systemd's fido PACKAGECONFIG is enabled. systemd depends
on libfido2, and libfido2 depends on udev provided by systemd. However,
systemd only depends on the headers provided by libfido2 and its pkgconf
data. systemd uses only the datatypes provided, and opportunistically
enables fido support if libfido2 is found.

This recipe provides only the headers and pkgconf data. This is
sufficient to allow systemd to build support for libfido2.

It only works with a related change I've submitted to openembedded core.

Signed-off-by: Dan McGregor <danmcgr@protonmail.com>
---
 .../libfido2/libfido2-initial_1.16.0.bb       | 40 +++++++++++++++++++
 1 file changed, 40 insertions(+)
 create mode 100644 meta-oe/recipes-support/libfido2/libfido2-initial_1.16.0.bb

diff --git a/meta-oe/recipes-support/libfido2/libfido2-initial_1.16.0.bb b/meta-oe/recipes-support/libfido2/libfido2-initial_1.16.0.bb
new file mode 100644
index 00000000000..7d9838b003b
--- /dev/null
+++ b/meta-oe/recipes-support/libfido2/libfido2-initial_1.16.0.bb
@@ -0,0 +1,40 @@
+SUMMARY = "FIDO 2.0 support library"
+DESCRIPTION = "libfido2 provides library functionality and command-line tools to \
+communicate with a FIDO device over USB, and to verify attestation and \
+assertion signatures."
+HOMEPAGE = "https://developers.yubico.com/libfido2"
+LICENSE = "BSD-2-Clause"
+SECTION = "libs/network"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=20be19aaa222f71738712b26f7f8717b"
+
+SRC_URI = "https://developers.yubico.com/${BPN}/Releases/${BPN}-${PV}.tar.gz"
+SRC_URI[sha256sum] = "8c2b6fb279b5b42e9ac92ade71832e485852647b53607c43baaafbbcecea04e4"
+
+inherit nopackages
+
+PACKAGES = ""
+
+# The purpose of this recipe is to break a circular dependency between libfido2 and
+# systemd. libfido2 depends on udev (provided by systemd) to build, while systemd
+# depends on libfido2 if the fido feature is enabled. However, systemd doesn't
+# actually link against libfido2. It only needs the headers in place and a dummy
+# shared library. It opportunistically dlopens libfido2 if it's present, but
+# for that to work it needs the headers in place.
+# Just fake enough to make systemd happy, and have it RRECOMMEND the real libfido2.
+do_install() {
+    mkdir -p ${D}${includedir}/libfido2-initial/fido
+    mkdir -p ${D}${datadir}/pkgconfig
+
+    install -m 644 ${S}/src/fido.h ${D}${includedir}/libfido2-initial
+    install -m 644 ${S}/src/fido/* ${D}${includedir}/libfido2-initial/fido/
+
+    # Real libfido2 installs its pkg conf file in ${libdir}.
+    sed -e 's,@CMAKE_INSTALL_PREFIX@,${exec_prefix},' \
+        -e 's,@CMAKE_INSTALL_LIBDIR@,${baselib}/libfido2-initial,' \
+        -e 's,@FIDO_VERSION@,${PV},' \
+        -e 's,@PROJECT_NAME@,${BPN},' \
+        -e '/^Cflags/s,$,/libfido2-initial,' \
+        ${S}/src/libfido2.pc.in > ${D}${datadir}/pkgconfig/libfido2.pc
+
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [meta-oe][PATCH v2 2/2] redis 8: Update licence
  2026-03-16 22:30 [meta-oe][PATCH v2 1/2] libfido2-initial: new recipe Dan McGregor
@ 2026-03-16 22:30 ` Dan McGregor
  0 siblings, 0 replies; 2+ messages in thread
From: Dan McGregor @ 2026-03-16 22:30 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Daniel McGregor

From: Daniel McGregor <daniel.mcgregor@vecima.com>

Redis 8.0 and later are tri-licensed, the licence options are:
* Redis Source Available License v2
* Server Side Public License v1.0
* GNU Affero GPL v3.0

Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com>
---
 meta-oe/licenses/RSAL-2                       | 163 ++++++++++++++++++
 meta-oe/recipes-extended/redis/redis_8.0.6.bb |   2 +-
 2 files changed, 164 insertions(+), 1 deletion(-)
 create mode 100644 meta-oe/licenses/RSAL-2

diff --git a/meta-oe/licenses/RSAL-2 b/meta-oe/licenses/RSAL-2
new file mode 100644
index 00000000000..4a37cf41364
--- /dev/null
+++ b/meta-oe/licenses/RSAL-2
@@ -0,0 +1,163 @@
+1. Redis Source Available License 2.0 (RSALv2) Agreement
+========================================================
+
+Last Update: December 30, 2023
+
+Acceptance
+----------
+
+This Agreement sets forth the terms and conditions on which the Licensor
+makes available the Software. By installing, downloading, accessing,
+Using, or distributing any of the Software, You agree to all of the
+terms and conditions of this Agreement.
+
+If You are receiving the Software on behalf of Your Company, You
+represent and warrant that You have the authority to agree to this
+Agreement on behalf of such entity.
+
+The Licensor reserves the right to update this Agreement from time to
+time.
+
+The terms below have the meanings set forth below for purposes of this
+Agreement:
+
+Definitions
+-----------
+
+Agreement: this Redis Source Available License 2.0 Agreement.
+
+Control: ownership, directly or indirectly, of substantially all the
+assets of an entity, or the power to direct its management and policies
+by vote, contract, or otherwise.
+
+License: the License as described in the License paragraph below.
+
+Licensor: the entity offering these terms, which includes Redis Ltd. on
+behalf of itself and its subsidiaries and affiliates worldwide.
+
+Modify, Modified, or Modification: copy from or adapt all or part of the
+work in a fashion requiring copyright permission other than making an
+exact copy. The resulting work is called a Modified version of the
+earlier work.
+
+Redis: the Redis software as described in redis.com redis.io.
+
+Software: certain Software components designed to work with Redis and
+provided to You under this Agreement.
+
+Trademark: the trademarks, service marks, and any other similar rights.
+
+Use: anything You do with the Software requiring one of Your Licenses.
+
+You: the recipient of the Software, the individual or entity on whose
+behalf You are agreeing to this Agreement.
+
+Your Company: any legal entity, sole proprietorship, or other kind of
+organization that You work for, plus all organizations that have control
+over, are under the control of, or are under common control with that
+organization.
+
+Your Licenses: means all the Licenses granted to You for the Software
+under this Agreement.
+
+License
+-------
+
+The Licensor grants You a non-exclusive, royalty-free, worldwide,
+non-sublicensable, non-transferable license to use, copy, distribute,
+make available, and prepare derivative works of the Software, in each
+case subject to the limitations and conditions below.
+
+Limitations
+-----------
+
+You may not make the functionality of the Software or a Modified version
+available to third parties as a service or distribute the Software or a
+Modified version in a manner that makes the functionality of the
+Software available to third parties.
+
+Making the functionality of the Software or Modified version available
+to third parties includes, without limitation, enabling third parties to
+interact with the functionality of the Software or Modified version in
+distributed form or remotely through a computer network, offering a
+product or service, the value of which entirely or primarily derives
+from the value of the Software or Modified version, or offering a
+product or service that accomplishes for users the primary purpose of
+the Software or Modified version.
+
+You may not alter, remove, or obscure any licensing, copyright, or other
+notices of the Licensor in the Software. Any use of the Licensor's
+Trademarks is subject to applicable law.
+
+Patents
+-------
+
+The Licensor grants You a License, under any patent claims the Licensor
+can License, or becomes able to License, to make, have made, use, sell,
+offer for sale, import and have imported the Software, in each case
+subject to the limitations and conditions in this License. This License
+does not cover any patent claims that You cause to be infringed by
+Modifications or additions to the Software. If You or Your Company make
+any written claim that the Software infringes or contributes to
+infringement of any patent, your patent License for the Software granted
+under this Agreement ends immediately. If Your Company makes such a
+claim, your patent License ends immediately for work on behalf of Your
+Company.
+
+Notices
+-------
+
+You must ensure that anyone who gets a copy of any part of the Software
+from You also gets a copy of the terms and conditions in this Agreement.
+
+If You modify the Software, You must include in any Modified copies of
+the Software prominent notices stating that You have Modified the
+Software.
+
+No Other Rights
+---------------
+
+The terms and conditions of this Agreement do not imply any Licenses
+other than those expressly granted in this Agreement.
+
+Termination
+-----------
+
+If You Use the Software in violation of this Agreement, such Use is not
+Licensed, and Your Licenses will automatically terminate. If the
+Licensor provides You with a notice of your violation, and You cease all
+violations of this License no later than 30 days after You receive that
+notice, Your Licenses will be reinstated retroactively. However, if You
+violate this Agreement after such reinstatement, any additional
+violation of this Agreement will cause your Licenses to terminate
+automatically and permanently.
+
+No Liability
+------------
+
+As far as the law allows, the Software comes as is, without any
+warranty or condition, and the Licensor will not be liable to You for
+any damages arising out of this Agreement or the Use or nature of the
+Software, under any kind of legal claim.
+
+Governing Law and Jurisdiction
+------------------------------
+
+If You are located in Asia, Pacific, Americas, or other jurisdictions
+not listed below, the Agreement will be construed and enforced in all
+respects in accordance with the laws of the State of California, U.S.A.,
+without reference to its choice of law rules. The courts located in the
+County of Santa Clara, California, have exclusive jurisdiction for all
+purposes relating to this Agreement.
+
+If You are located in Israel, the Agreement will be construed and
+enforced in all respects in accordance with the laws of the State of
+Israel without reference to its choice of law rules. The courts located
+in the Central District of the State of Israel have exclusive
+jurisdiction for all purposes relating to this Agreement.
+
+If You are located in Europe, United Kingdom, Middle East or Africa, the
+Agreement will be construed and enforced in all respects in accordance
+with the laws of England and Wales without reference to its choice of
+law rules. The competent courts located in London, England, have
+exclusive jurisdiction for all purposes relating to this Agreement.
diff --git a/meta-oe/recipes-extended/redis/redis_8.0.6.bb b/meta-oe/recipes-extended/redis/redis_8.0.6.bb
index 9a947c075d3..f6866747ebd 100644
--- a/meta-oe/recipes-extended/redis/redis_8.0.6.bb
+++ b/meta-oe/recipes-extended/redis/redis_8.0.6.bb
@@ -2,7 +2,7 @@ SUMMARY = "Redis key-value store"
 DESCRIPTION = "Redis is an open source, advanced key-value store."
 HOMEPAGE = "http://redis.io"
 SECTION = "libs"
-LICENSE = "AGPL-3.0-only | SSPL-1.0"
+LICENSE = "RSAL-2 | AGPL-3.0-only | SSPL-1"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=9f1da87999fb281d8a9e3e3b2d0403b4"
 DEPENDS = "readline lua ncurses"
 


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-03-16 22:30 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-16 22:30 [meta-oe][PATCH v2 1/2] libfido2-initial: new recipe Dan McGregor
2026-03-16 22:30 ` [meta-oe][PATCH v2 2/2] redis 8: Update licence Dan McGregor

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.