git: 3fe3f403deaa - main - textproc/libjcat: Add library for reading and writing JSON catalog files

From: Bernhard Froehlich <decke_at_FreeBSD.org>
Date: Sat, 02 Nov 2024 17:25:41 UTC
The branch main has been updated by decke:

URL: https://cgit.FreeBSD.org/ports/commit/?id=3fe3f403deaa3a2a523d5765420beffb66b29d5f

commit 3fe3f403deaa3a2a523d5765420beffb66b29d5f
Author:     Bernhard Froehlich <decke@FreeBSD.org>
AuthorDate: 2024-11-02 17:23:45 +0000
Commit:     Bernhard Froehlich <decke@FreeBSD.org>
CommitDate: 2024-11-02 17:25:34 +0000

    textproc/libjcat: Add library for reading and writing JSON catalog files
    
    Created by:             norbert.kaminski@3mdeb.com
    Differential Revision:  https://reviews.freebsd.org/D29332 (based on)
---
 textproc/Makefile          |  1 +
 textproc/libjcat/Makefile  | 27 +++++++++++++++++++++++++++
 textproc/libjcat/distinfo  |  3 +++
 textproc/libjcat/pkg-descr |  7 +++++++
 textproc/libjcat/pkg-plist | 37 +++++++++++++++++++++++++++++++++++++
 5 files changed, 75 insertions(+)

diff --git a/textproc/Makefile b/textproc/Makefile
index 7e6e3863febe..9fe078d8ad4f 100644
--- a/textproc/Makefile
+++ b/textproc/Makefile
@@ -400,6 +400,7 @@
     SUBDIR += libfyaml
     SUBDIR += libgepub
     SUBDIR += libixion
+    SUBDIR += libjcat
     SUBDIR += libkmfl
     SUBDIR += libkolabxml
     SUBDIR += libkomparediff2
diff --git a/textproc/libjcat/Makefile b/textproc/libjcat/Makefile
new file mode 100644
index 000000000000..fd1546c81c3f
--- /dev/null
+++ b/textproc/libjcat/Makefile
@@ -0,0 +1,27 @@
+PORTNAME=	libjcat
+DISTVERSION=	0.2.2
+CATEGORIES=	textproc
+
+MAINTAINER=	decke@FreeBSD.org
+COMMENT=	Library for reading and writing JSON catalog files
+WWW=		https://github.com/hughsie/libjcat
+
+LICENSE=	LGPL21
+
+BUILD_DEPENDS=	gobject-introspection>=1.36:devel/gobject-introspection \
+		gtkdocize:textproc/gtk-doc \
+		help2man:misc/help2man \
+		${PYTHON_PKGNAMEPREFIX}elementpath>0:textproc/py-elementpath@${PY_FLAVOR}
+LIB_DEPENDS=	libgnutls.so:security/gnutls \
+		libgpg-error.so:security/libgpg-error \
+		libgpgme.so:security/gpgme \
+		libhogweed.so:security/nettle \
+		libjson-glib-1.0.so:devel/json-glib
+
+USES=		gnome localbase:ldflags meson pkgconfig vala:build python
+USE_GITHUB=	yes
+GH_ACCOUNT=	hughsie
+USE_GNOME=	glib20
+USE_LDCONFIG=	yes
+
+.include <bsd.port.mk>
diff --git a/textproc/libjcat/distinfo b/textproc/libjcat/distinfo
new file mode 100644
index 000000000000..eaac2bdb3522
--- /dev/null
+++ b/textproc/libjcat/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1730567380
+SHA256 (hughsie-libjcat-0.2.2_GH0.tar.gz) = 60fb1d30b16ba1a2dbf48998094d366bc94a082846b71decf9d6ac6bb6aa4800
+SIZE (hughsie-libjcat-0.2.2_GH0.tar.gz) = 79047
diff --git a/textproc/libjcat/pkg-descr b/textproc/libjcat/pkg-descr
new file mode 100644
index 000000000000..c735ac84177e
--- /dev/null
+++ b/textproc/libjcat/pkg-descr
@@ -0,0 +1,7 @@
+This library allows reading and writing gzip-compressed JSON catalog files,
+which can be used to store GPG, PKCS-7 and SHA-256 checksums for each file.  It
+provides equivalent functionality to the catalog files supported in Microsoft
+Windows.  Unlike Microsoft catalog files which are a signed manifest of hashes,
+a Jcat file is a manifest of signatures.  This means it's possible (and
+positively encouraged) to modify the .jcat file to add new signatures or replace
+existing ones.
diff --git a/textproc/libjcat/pkg-plist b/textproc/libjcat/pkg-plist
new file mode 100644
index 000000000000..b4ba06c73be3
--- /dev/null
+++ b/textproc/libjcat/pkg-plist
@@ -0,0 +1,37 @@
+bin/jcat-tool
+include/libjcat-1/jcat.h
+include/libjcat-1/libjcat/jcat-blob.h
+include/libjcat-1/libjcat/jcat-bt-checkpoint.h
+include/libjcat-1/libjcat/jcat-bt-verifier.h
+include/libjcat-1/libjcat/jcat-common.h
+include/libjcat-1/libjcat/jcat-compile.h
+include/libjcat-1/libjcat/jcat-context.h
+include/libjcat-1/libjcat/jcat-engine.h
+include/libjcat-1/libjcat/jcat-file.h
+include/libjcat-1/libjcat/jcat-item.h
+include/libjcat-1/libjcat/jcat-result.h
+include/libjcat-1/libjcat/jcat-version.h
+lib/girepository-1.0/Jcat-1.0.typelib
+lib/libjcat.so
+lib/libjcat.so.1
+lib/libjcat.so.1.0.0
+libdata/pkgconfig/jcat.pc
+libexec/installed-tests/libjcat/jcat-self-test
+share/gir-1.0/Jcat-1.0.gir
+share/installed-tests/libjcat/colorhug/firmware.bin
+share/installed-tests/libjcat/colorhug/firmware.bin.asc
+share/installed-tests/libjcat/colorhug/firmware.bin.ed25519
+share/installed-tests/libjcat/colorhug/firmware.bin.p7b
+share/installed-tests/libjcat/colorhug/firmware.bin.p7c
+share/installed-tests/libjcat/colorhug/firmware.bin.sha256.p7c
+share/installed-tests/libjcat/libjcat.test
+share/installed-tests/libjcat/pki/GPG-KEY-Linux-Vendor-Firmware-Service
+share/installed-tests/libjcat/pki/LVFS-CA.pem
+share/installed-tests/libjcat/pki/test.ed25519
+share/installed-tests/libjcat/pki/test.pem
+share/installed-tests/libjcat/secret.ed25519
+share/installed-tests/libjcat/test.btcheckpoint
+share/installed-tests/libjcat/test.btverifier
+share/man/man1/jcat-tool.1.gz
+share/vala/vapi/jcat.deps
+share/vala/vapi/jcat.vapi