Page MenuHomeFreeBSD

D29332.id87711.diff
No OneTemporary

D29332.id87711.diff

Index: devel/Makefile
===================================================================
--- devel/Makefile
+++ devel/Makefile
@@ -1219,6 +1219,7 @@
SUBDIR += libgta
SUBDIR += libgtop
SUBDIR += libgudev
+ SUBDIR += libgusb
SUBDIR += libgutenfetch
SUBDIR += libhash
SUBDIR += libhid
Index: devel/libgusb/Makefile
===================================================================
--- /dev/null
+++ devel/libgusb/Makefile
@@ -0,0 +1,26 @@
+# $FreeBSD$
+
+PORTNAME= libgusb
+DISTVERSION= 0.3.6
+CATEGORIES= devel
+
+MAINTAINER= norbert.kaminski@3mdeb.com
+COMMENT= GObject wrapper for libusb1
+
+LICENSE= LGPL21
+
+BUILD_DEPENDS= gobject-introspection>=1.36:devel/gobject-introspection \
+ gtkdocize:textproc/gtk-doc \
+ vala:lang/vala
+
+USES= gnome meson pkgconfig python:3.7+
+USE_GITHUB= yes
+GH_ACCOUNT= hughsie
+USE_GNOME= glib20
+USE_LDCONFIG= yes
+
+OPTIONS_DEFINE= DOCS
+
+DOCS_MESON_TRUE= docs
+
+.include <bsd.port.mk>
Index: devel/libgusb/distinfo
===================================================================
--- /dev/null
+++ devel/libgusb/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1616118227
+SHA256 (hughsie-libgusb-0.3.6_GH0.tar.gz) = b81b4587243beaafd304fec6047cb803b47f5df382911d4f722ffcfe7239bd59
+SIZE (hughsie-libgusb-0.3.6_GH0.tar.gz) = 48572
Index: devel/libgusb/files/patch-gusb_gusb-context.c
===================================================================
--- /dev/null
+++ devel/libgusb/files/patch-gusb_gusb-context.c
@@ -0,0 +1,53 @@
+--- gusb/gusb-context.c.orig 2021-03-12 16:08:58 UTC
++++ gusb/gusb-context.c
+@@ -444,6 +444,7 @@ g_usb_context_rescan (GUsbContext *context)
+ libusb_free_device_list (dev_list, 1);
+ }
+
++#ifndef __FreeBSD__
+ static gboolean
+ g_usb_context_rescan_cb (gpointer user_data)
+ {
+@@ -451,6 +452,7 @@ g_usb_context_rescan_cb (gpointer user_data)
+ g_usb_context_rescan (context);
+ return TRUE;
+ }
++#endif
+
+
+ /**
+@@ -516,12 +518,14 @@ g_usb_context_enumerate (GUsbContext *context)
+ return;
+
+ g_usb_context_rescan (context);
++#ifndef __FreeBSD__
+ if (!libusb_has_capability (LIBUSB_CAP_HAS_HOTPLUG)) {
+ g_debug ("platform does not do hotplug, using polling");
+ priv->hotplug_poll_id = g_timeout_add_seconds (1,
+ g_usb_context_rescan_cb,
+ context);
+ }
++#endif
+ priv->done_enumerate = TRUE;
+ }
+
+@@ -616,7 +620,9 @@ g_usb_context_initable_init (GInitable *initable,
+ context);
+
+ /* watch for add/remove */
++#ifndef __FreeBSD__
+ if (libusb_has_capability (LIBUSB_CAP_HAS_HOTPLUG)) {
++#endif
+ rc = libusb_hotplug_register_callback (priv->ctx,
+ LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED |
+ LIBUSB_HOTPLUG_EVENT_DEVICE_LEFT,
+@@ -631,7 +637,9 @@ g_usb_context_initable_init (GInitable *initable,
+ g_warning ("Error creating a hotplug callback: %s",
+ g_usb_strerror (rc));
+ }
++#ifndef __FreeBSD__
+ }
++#endif
+
+ return TRUE;
+ }
Index: devel/libgusb/files/patch-gusb_gusb-device.c
===================================================================
--- /dev/null
+++ devel/libgusb/files/patch-gusb_gusb-device.c
@@ -0,0 +1,147 @@
+--- gusb/gusb-device.c.orig 2021-03-12 16:08:58 UTC
++++ gusb/gusb-device.c
+@@ -38,6 +38,7 @@ struct _GUsbDevicePrivate
+ GUsbContext *context;
+ libusb_device *device;
+ libusb_device_handle *handle;
++ GArray *port_numbers;
+ struct libusb_device_descriptor desc;
+ };
+
+@@ -84,6 +85,7 @@ g_usb_device_dispose (GObject *object)
+ GUsbDevice *device = G_USB_DEVICE (object);
+ GUsbDevicePrivate *priv = device->priv;
+
++ g_clear_pointer (&priv->port_numbers, g_array_unref);
+ g_clear_pointer (&priv->device, libusb_unref_device);
+ g_clear_object (&priv->context);
+
+@@ -202,25 +204,20 @@ g_usb_device_init (GUsbDevice *device)
+ device->priv = g_usb_device_get_instance_private (device);
+ }
+
+-static void
+-g_usb_device_build_parent_port_number (GString *str, libusb_device *dev)
+-{
+- libusb_device *parent = libusb_get_parent (dev);
+- if (parent != NULL)
+- g_usb_device_build_parent_port_number (str, parent);
+- g_string_append_printf (str, "%02x:", libusb_get_port_number (dev));
+-}
+-
+ static gchar *
+-g_usb_device_build_platform_id (struct libusb_device *dev)
++g_usb_device_build_platform_id (GUsbDevice *device)
+ {
++ GUsbDevicePrivate *priv = device->priv;
+ GString *platform_id;
++ guint i;
+
+ /* build a topology of the device */
+- platform_id = g_string_new ("usb:");
+- g_string_append_printf (platform_id, "%02x:", libusb_get_bus_number (dev));
+- g_usb_device_build_parent_port_number (platform_id, dev);
+- g_string_truncate (platform_id, platform_id->len - 1);
++ platform_id = g_string_new ("usb");
++ g_string_append_printf (platform_id, ":%02x",
++ libusb_get_bus_number (priv->device));
++ for (i = 0; i < priv->port_numbers->len; i++)
++ g_string_append_printf (platform_id, ":%02x",
++ g_array_index (priv->port_numbers, guint8, i));
+ return g_string_free (platform_id, FALSE);
+ }
+
+@@ -251,8 +248,32 @@ g_usb_device_initable_init (GInitable *initable,
+ return FALSE;
+ }
+
++ /* Store port number values to ease parent device finding on FreeBSD.
++ * FreeBSD's libusb requires a device to be opened before calling
++ * libusb_get_port_numbers because it needs the fd to call ioctl. */
++#define PORT_NUMBER_MAX 64
++ priv->port_numbers = g_array_new (FALSE, FALSE, sizeof (guint8));
++#ifdef __FreeBSD__
++ g_return_val_if_fail (priv->handle == NULL, FALSE);
++ if (libusb_open (priv->device, &priv->handle) == LIBUSB_SUCCESS) {
++#endif
++ guint8 ports[PORT_NUMBER_MAX];
++ gint port_count;
++ port_count = libusb_get_port_numbers (priv->device, ports,
++ PORT_NUMBER_MAX);
++ if (port_count > 0) {
++ g_array_set_size (priv->port_numbers, port_count);
++ memcpy (priv->port_numbers->data, ports, port_count);
++ }
++#ifdef __FreeBSD__
++ libusb_close (priv->handle);
++ priv->handle = NULL;
++ }
++#endif
++#undef PORT_NUMBER_MAX
++
+ /* this does not change on plug->unplug->plug */
+- priv->platform_id = g_usb_device_build_platform_id (priv->device);
++ priv->platform_id = g_usb_device_build_platform_id (device);
+
+ return TRUE;
+ }
+@@ -1608,6 +1629,41 @@ g_usb_device_get_platform_id (GUsbDevice *device)
+ return device->priv->platform_id;
+ }
+
++static libusb_device *
++g_usb_device_get_parent_libusb_device (GUsbDevice *device)
++{
++#ifdef __FreeBSD__
++ GPtrArray *devices = NULL;
++ GUsbDevice *device_tmp;
++ gboolean found = FALSE;
++ guint i;
++
++ if (device->priv->port_numbers->len == 0)
++ return NULL;
++
++ devices = g_usb_context_get_devices (device->priv->context);
++ for (i = 0; devices->len; i++) {
++ device_tmp = g_ptr_array_index (devices, i);
++ if (g_usb_device_get_bus (device) ==
++ g_usb_device_get_bus (device_tmp) &&
++ device->priv->port_numbers->len - 1 ==
++ device_tmp->priv->port_numbers->len &&
++ memcmp (device->priv->port_numbers->data,
++ device_tmp->priv->port_numbers->data,
++ device_tmp->priv->port_numbers->len) == 0) {
++ found = TRUE;
++ break;
++ }
++ }
++
++ g_ptr_array_unref (devices);
++
++ return found ? device_tmp->priv->device : NULL;
++#else
++ return libusb_get_parent (device->priv->device);
++#endif
++}
++
+ /**
+ * g_usb_device_get_parent:
+ * @device: a #GUsbDevice instance
+@@ -1624,7 +1680,7 @@ g_usb_device_get_parent (GUsbDevice *device)
+ GUsbDevicePrivate *priv = device->priv;
+ libusb_device *parent;
+
+- parent = libusb_get_parent (priv->device);
++ parent = g_usb_device_get_parent_libusb_device (device);
+ if (parent == NULL)
+ return NULL;
+
+@@ -1658,7 +1714,7 @@ g_usb_device_get_children (GUsbDevice *device)
+ devices = g_usb_context_get_devices (priv->context);
+ for (i = 0; i < devices->len; i++) {
+ device_tmp = g_ptr_array_index (devices, i);
+- if (priv->device == libusb_get_parent (device_tmp->priv->device))
++ if (priv->device == g_usb_device_get_parent_libusb_device (device_tmp))
+ g_ptr_array_add (children, g_object_ref (device_tmp));
+ }
+
Index: devel/libgusb/files/patch-gusb_gusb-self-test.c
===================================================================
--- /dev/null
+++ devel/libgusb/files/patch-gusb_gusb-self-test.c
@@ -0,0 +1,37 @@
+--- gusb/gusb-self-test.c.orig 2021-03-12 16:08:58 UTC
++++ gusb/gusb-self-test.c
+@@ -32,8 +32,15 @@ gusb_device_func (void)
+ g_assert_cmpint (array->len, >, 0);
+ device = G_USB_DEVICE (g_ptr_array_index (array, 0));
+
+- g_assert_cmpint (g_usb_device_get_vid (device), >, 0x0000);
+- g_assert_cmpint (g_usb_device_get_pid (device), >, 0x0000);
++ /* Root hubs on FreeBSD have vid and pid set to zero */
++#ifdef __FreeBSD__
++ if (g_usb_device_get_parent (device) != NULL) {
++#endif
++ g_assert_cmpint (g_usb_device_get_vid (device), >, 0x0000);
++ g_assert_cmpint (g_usb_device_get_pid (device), >, 0x0000);
++#ifdef __FreeBSD__
++ }
++#endif
+
+ g_ptr_array_unref (array);
+ }
+@@ -88,8 +95,14 @@ gusb_context_func (void)
+ for (i = 0; i < array->len; i++) {
+ device = G_USB_DEVICE (g_ptr_array_index (array, i));
+
+- g_assert_cmpint (g_usb_device_get_vid (device), >, 0x0000);
+- g_assert_cmpint (g_usb_device_get_pid (device), >, 0x0000);
++#ifdef __FreeBSD__
++ if (g_usb_device_get_parent (device) != NULL) {
++#endif
++ g_assert_cmpint (g_usb_device_get_vid (device), >, 0x0000);
++ g_assert_cmpint (g_usb_device_get_pid (device), >, 0x0000);
++#ifdef __FreeBSD__
++ }
++#endif
+
+ /* Needed for g_usb_device_get_string_descriptor below,
+ not error checked to allow running basic tests without
Index: devel/libgusb/files/patch-gusb_meson.build
===================================================================
--- /dev/null
+++ devel/libgusb/files/patch-gusb_meson.build
@@ -0,0 +1,11 @@
+--- gusb/meson.build.orig 2021-03-19 02:26:26 UTC
++++ gusb/meson.build
+@@ -147,7 +147,7 @@ libgusb_gir = libgusb_girtarget[0]
+ libgusb_typelib = libgusb_girtarget[1]
+
+ pymod = import('python')
+-py_installation = pymod.find_installation('python3')
++py_installation = import('python').find_installation()
+
+ # Verify the map file is correct -- note we can't actually use the generated
+ # file for two reasons:
Index: devel/libgusb/files/patch-meson.build
===================================================================
--- /dev/null
+++ devel/libgusb/files/patch-meson.build
@@ -0,0 +1,18 @@
+--- meson.build.orig 2021-03-12 16:08:58 UTC
++++ meson.build
+@@ -93,8 +93,14 @@ add_project_link_arguments(
+ language: 'c'
+ )
+
++if host_machine.system() == 'freebsd'
++ libusb_version = '>= 1.0.9'
++else
++ libusb_version = '>= 1.0.19'
++endif
++
+ libgio = dependency('gio-2.0', version : '>= 2.44.0')
+-libusb = dependency('libusb-1.0', version : '>= 1.0.19')
++libusb = dependency('libusb-1.0', version : libusb_version)
+ if libusb.version().version_compare ('>= 1.0.22')
+ conf.set('HAVE_LIBUSB_1_0_22', '1')
+ endif
Index: devel/libgusb/pkg-descr
===================================================================
--- /dev/null
+++ devel/libgusb/pkg-descr
@@ -0,0 +1,10 @@
+XML is slow to parse and strings inside the document cannot be memory mapped as
+they do not have a trailing NUL char. The libxmlb library takes XML source, and
+converts it to a structured binary representation with a deduplicated string
+table -- where the strings have the NULs included.
+
+This allows an application to mmap the binary XML file, do an XPath query and
+return some strings without actually parsing the entire document. This is all
+done using (almost) zero allocations and no actual copying of the binary data.
+
+WWW: https://github.com/hughsie/libxmlb
Index: devel/libgusb/pkg-plist
===================================================================
--- /dev/null
+++ devel/libgusb/pkg-plist
@@ -0,0 +1,44 @@
+bin/gusbcmd
+include/gusb-1/gusb.h
+include/gusb-1/gusb/gusb-autocleanups.h
+include/gusb-1/gusb/gusb-context-private.h
+include/gusb-1/gusb/gusb-context.h
+include/gusb-1/gusb/gusb-device-list.h
+include/gusb-1/gusb/gusb-device-private.h
+include/gusb-1/gusb/gusb-device.h
+include/gusb-1/gusb/gusb-endpoint-private.h
+include/gusb-1/gusb/gusb-endpoint.h
+include/gusb-1/gusb/gusb-interface-private.h
+include/gusb-1/gusb/gusb-interface.h
+include/gusb-1/gusb/gusb-source.h
+include/gusb-1/gusb/gusb-util.h
+include/gusb-1/gusb/gusb-version.h
+lib/girepository-1.0/GUsb-1.0.typelib
+lib/libgusb.so
+lib/libgusb.so.2
+lib/libgusb.so.2.0.10
+libdata/pkgconfig/gusb.pc
+share/gir-1.0/GUsb-1.0.gir
+%%PORTDOCS%%share/gtk-doc/html/gusb/faq.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/gusb-GUsbContext.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/gusb-GUsbDevice.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/gusb-GUsbDeviceList.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/gusb-gusb-interface.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/gusb-gusb-source.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/gusb-gusb-version.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/gusb.devhelp2
+%%PORTDOCS%%share/gtk-doc/html/gusb/home.png
+%%PORTDOCS%%share/gtk-doc/html/gusb/index.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/introduction.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/left-insensitive.png
+%%PORTDOCS%%share/gtk-doc/html/gusb/left.png
+%%PORTDOCS%%share/gtk-doc/html/gusb/libgusb-helpers.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/libgusb.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/right-insensitive.png
+%%PORTDOCS%%share/gtk-doc/html/gusb/right.png
+%%PORTDOCS%%share/gtk-doc/html/gusb/specification.html
+%%PORTDOCS%%share/gtk-doc/html/gusb/style.css
+%%PORTDOCS%%share/gtk-doc/html/gusb/up-insensitive.png
+%%PORTDOCS%%share/gtk-doc/html/gusb/up.png
+share/vala/vapi/gusb.deps
+share/vala/vapi/gusb.vapi
Index: sysutils/Makefile
===================================================================
--- sysutils/Makefile
+++ sysutils/Makefile
@@ -422,6 +422,7 @@
SUBDIR += fusefs-zip
SUBDIR += fvcool
SUBDIR += fwup
+ SUBDIR += fwupd
SUBDIR += gaffitter
SUBDIR += ganglia-monitor-core
SUBDIR += ganglia-webfrontend
Index: sysutils/fwupd/Makefile
===================================================================
--- /dev/null
+++ sysutils/fwupd/Makefile
@@ -0,0 +1,52 @@
+# Created by: Norbert Kamiński <norbert.kaminski@3mdeb.com>
+# $FreeBSD$
+
+PORTNAME= fwupd
+DISTVERSION= 1.5.9
+GH_TAGNAME= 58fbbc2
+CATEGORIES= sysutils
+
+MAINTAINER= norbert.kaminski@3mdeb.com
+COMMENT= Update firmware automatically, safely, and reliably
+
+LICENSE= LGPL21
+
+BUILD_DEPENDS= gtkdoc-scan:textproc/gtk-doc \
+ help2man:misc/help2man \
+ vala:lang/vala
+LIB_DEPENDS= libcurl.so:ftp/curl \
+ libelf.so:devel/libelf \
+ libgcab-1.0.so:archivers/gcab \
+ libgnutls.so:security/gnutls \
+ libgpg-error.so:security/libgpg-error \
+ libgpgme.so:security/gpgme \
+ libgusb.so:devel/libgusb \
+ libjcat.so:textproc/libjcat \
+ libjson-glib-1.0.so:devel/json-glib \
+ libxmlb.so:textproc/libxmlb
+
+USES= gnome libarchive meson pkgconfig python:3.7+ shebangfix sqlite
+USE_GITHUB= yes
+USE_GNOME= glib20 introspection:build
+INSTALLS_ICONS= yes
+USE_LDCONFIG= yes
+
+SHEBANG_GLOB= *.py
+
+MESON_ARGS= -Dgudev=false \
+ -Dplugin_altos=false \
+ -Dplugin_amt=false \
+ -Dplugin_dell=false \
+ -Dplugin_emmc=false \
+ -Dplugin_nvme=false \
+ -Dplugin_redfish=false \
+ -Dplugin_synaptics_mst=false \
+ -Dplugin_synaptics_rmi=false \
+ -Dplugin_thunderbolt=false \
+ -Dplugin_tpm=false \
+ -Dplugin_uefi_capsule=false \
+ -Dpolkit=false \
+ -Dsystemd=false \
+ -Dtests=false
+
+.include <bsd.port.mk>
Index: sysutils/fwupd/distinfo
===================================================================
--- /dev/null
+++ sysutils/fwupd/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1618840241
+SHA256 (fwupd-fwupd-1.5.9-58fbbc2_GH0.tar.gz) = 0731f5e8f38d728ad5b40e9a7abe6bb349ce81c9553f7171a1f29f90b4e2254d
+SIZE (fwupd-fwupd-1.5.9-58fbbc2_GH0.tar.gz) = 3758499
Index: sysutils/fwupd/pkg-descr
===================================================================
--- /dev/null
+++ sysutils/fwupd/pkg-descr
@@ -0,0 +1,9 @@
+Make firmware updates automatic, safe, and reliable.
+
+fwupd is a simple daemon to allow session software to update device firmware on
+your local machine. It is designed for desktops, but also usable on phones and
+headless servers. You can either use a GUI software manager like GNOME Software
+to view and apply updates, the command-line tool, or the system D-Bus interface
+directly.
+
+WWW: https://fwupd.org/
Index: sysutils/fwupd/pkg-plist
===================================================================
--- /dev/null
+++ sysutils/fwupd/pkg-plist
@@ -0,0 +1,192 @@
+bin/fwupdagent
+bin/fwupdmgr
+bin/fwupdtool
+%%ETCDIR%%/daemon.conf
+%%ETCDIR%%/remotes.d/lvfs-testing.conf
+%%ETCDIR%%/remotes.d/lvfs.conf
+%%ETCDIR%%/remotes.d/vendor-directory.conf
+%%ETCDIR%%/remotes.d/vendor.conf
+etc/pki/fwupd-metadata/GPG-KEY-Linux-Foundation-Metadata
+etc/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service
+etc/pki/fwupd-metadata/LVFS-CA.pem
+etc/pki/fwupd/GPG-KEY-Linux-Foundation-Firmware
+etc/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service
+etc/pki/fwupd/LVFS-CA.pem
+include/fwupd-1/fwupd.h
+include/fwupd-1/fwupdplugin.h
+include/fwupd-1/libfwupd/fwupd-client-sync.h
+include/fwupd-1/libfwupd/fwupd-client.h
+include/fwupd-1/libfwupd/fwupd-common.h
+include/fwupd-1/libfwupd/fwupd-deprecated.h
+include/fwupd-1/libfwupd/fwupd-device.h
+include/fwupd-1/libfwupd/fwupd-enums.h
+include/fwupd-1/libfwupd/fwupd-error.h
+include/fwupd-1/libfwupd/fwupd-plugin.h
+include/fwupd-1/libfwupd/fwupd-release.h
+include/fwupd-1/libfwupd/fwupd-remote.h
+include/fwupd-1/libfwupd/fwupd-security-attr.h
+include/fwupd-1/libfwupd/fwupd-version.h
+include/fwupd-1/libfwupdplugin/fu-archive.h
+include/fwupd-1/libfwupdplugin/fu-bluez-device.h
+include/fwupd-1/libfwupdplugin/fu-cabinet.h
+include/fwupd-1/libfwupdplugin/fu-chunk.h
+include/fwupd-1/libfwupdplugin/fu-common-cab.h
+include/fwupd-1/libfwupdplugin/fu-common-guid.h
+include/fwupd-1/libfwupdplugin/fu-common-version.h
+include/fwupd-1/libfwupdplugin/fu-common.h
+include/fwupd-1/libfwupdplugin/fu-context.h
+include/fwupd-1/libfwupdplugin/fu-deprecated.h
+include/fwupd-1/libfwupdplugin/fu-device-locker.h
+include/fwupd-1/libfwupdplugin/fu-device-metadata.h
+include/fwupd-1/libfwupdplugin/fu-device.h
+include/fwupd-1/libfwupdplugin/fu-dfu-firmware.h
+include/fwupd-1/libfwupdplugin/fu-dfuse-firmware.h
+include/fwupd-1/libfwupdplugin/fu-efi-signature-list.h
+include/fwupd-1/libfwupdplugin/fu-efi-signature.h
+include/fwupd-1/libfwupdplugin/fu-efivar.h
+include/fwupd-1/libfwupdplugin/fu-firmware-common.h
+include/fwupd-1/libfwupdplugin/fu-firmware.h
+include/fwupd-1/libfwupdplugin/fu-fmap-firmware.h
+include/fwupd-1/libfwupdplugin/fu-hid-device.h
+include/fwupd-1/libfwupdplugin/fu-hwids.h
+include/fwupd-1/libfwupdplugin/fu-ihex-firmware.h
+include/fwupd-1/libfwupdplugin/fu-io-channel.h
+include/fwupd-1/libfwupdplugin/fu-plugin-vfuncs.h
+include/fwupd-1/libfwupdplugin/fu-plugin.h
+include/fwupd-1/libfwupdplugin/fu-quirks.h
+include/fwupd-1/libfwupdplugin/fu-security-attrs.h
+include/fwupd-1/libfwupdplugin/fu-smbios.h
+include/fwupd-1/libfwupdplugin/fu-srec-firmware.h
+include/fwupd-1/libfwupdplugin/fu-udev-device.h
+include/fwupd-1/libfwupdplugin/fu-usb-device.h
+include/fwupd-1/libfwupdplugin/fu-volume.h
+lib/fwupd-plugins-3/libfu_plugin_bcm57xx.so
+lib/fwupd-plugins-3/libfu_plugin_ccgx.so
+lib/fwupd-plugins-3/libfu_plugin_colorhug.so
+lib/fwupd-plugins-3/libfu_plugin_cpu.so
+lib/fwupd-plugins-3/libfu_plugin_cros_ec.so
+lib/fwupd-plugins-3/libfu_plugin_dell_dock.so
+lib/fwupd-plugins-3/libfu_plugin_ebitdo.so
+lib/fwupd-plugins-3/libfu_plugin_ep963x.so
+lib/fwupd-plugins-3/libfu_plugin_fastboot.so
+lib/fwupd-plugins-3/libfu_plugin_fresco_pd.so
+lib/fwupd-plugins-3/libfu_plugin_goodixmoc.so
+lib/fwupd-plugins-3/libfu_plugin_hailuck.so
+lib/fwupd-plugins-3/libfu_plugin_jabra.so
+lib/fwupd-plugins-3/libfu_plugin_msr.so
+lib/fwupd-plugins-3/libfu_plugin_nitrokey.so
+lib/fwupd-plugins-3/libfu_plugin_rts54hid.so
+lib/fwupd-plugins-3/libfu_plugin_rts54hub.so
+lib/fwupd-plugins-3/libfu_plugin_solokey.so
+lib/fwupd-plugins-3/libfu_plugin_steelseries.so
+lib/fwupd-plugins-3/libfu_plugin_synaptics_cxaudio.so
+lib/fwupd-plugins-3/libfu_plugin_synaptics_prometheus.so
+lib/fwupd-plugins-3/libfu_plugin_system76_launch.so
+lib/fwupd-plugins-3/libfu_plugin_uefi_pk.so
+lib/fwupd-plugins-3/libfu_plugin_vli.so
+lib/fwupd-plugins-3/libfu_plugin_wacom_usb.so
+lib/girepository-1.0/Fwupd-2.0.typelib
+lib/girepository-1.0/FwupdPlugin-1.0.typelib
+lib/libfwupd.so
+lib/libfwupd.so.2
+lib/libfwupd.so.2.0.0
+lib/libfwupdplugin.so
+lib/libfwupdplugin.so.2
+lib/libfwupdplugin.so.2.0.0
+libdata/pkgconfig/fwupd.pc
+libdata/pkgconfig/fwupdplugin.pc
+libexec/fwupd/fwupd
+libexec/fwupd/fwupd-detect-cet
+man/man1/fwupdagent.1.gz
+man/man1/fwupdmgr.1.gz
+man/man1/fwupdtool.1.gz
+share/bash-completion/completions/fwupdagent
+share/bash-completion/completions/fwupdmgr
+share/bash-completion/completions/fwupdtool
+share/dbus-1/interfaces/org.freedesktop.fwupd.xml
+share/dbus-1/system.d/org.freedesktop.fwupd.conf
+share/fish/vendor_completions.d/fwupdmgr.fish
+%%DATADIR%%/add_capsule_header.py
+%%DATADIR%%/firmware_packager.py
+%%DATADIR%%/install_dell_bios_exe.py
+%%DATADIR%%/metainfo/org.freedesktop.fwupd.remotes.lvfs-testing.metainfo.xml
+%%DATADIR%%/metainfo/org.freedesktop.fwupd.remotes.lvfs.metainfo.xml
+%%DATADIR%%/quirks.d/bcm57xx.quirk
+%%DATADIR%%/quirks.d/ccgx-ids.quirk
+%%DATADIR%%/quirks.d/ccgx.quirk
+%%DATADIR%%/quirks.d/colorhug.quirk
+%%DATADIR%%/quirks.d/cpu.quirk
+%%DATADIR%%/quirks.d/cros-ec.quirk
+%%DATADIR%%/quirks.d/dell-dock.quirk
+%%DATADIR%%/quirks.d/ebitdo.quirk
+%%DATADIR%%/quirks.d/ep963x.quirk
+%%DATADIR%%/quirks.d/fastboot.quirk
+%%DATADIR%%/quirks.d/fresco-pd.quirk
+%%DATADIR%%/quirks.d/goodixmoc.quirk
+%%DATADIR%%/quirks.d/hailuck.quirk
+%%DATADIR%%/quirks.d/jabra.quirk
+%%DATADIR%%/quirks.d/msr.quirk
+%%DATADIR%%/quirks.d/nitrokey.quirk
+%%DATADIR%%/quirks.d/rts54hid.quirk
+%%DATADIR%%/quirks.d/rts54hub.quirk
+%%DATADIR%%/quirks.d/solokey.quirk
+%%DATADIR%%/quirks.d/steelseries.quirk
+%%DATADIR%%/quirks.d/synaptics-cxaudio.quirk
+%%DATADIR%%/quirks.d/synaptics-prometheus.quirk
+%%DATADIR%%/quirks.d/system76-launch.quirk
+%%DATADIR%%/quirks.d/vli-pd.quirk
+%%DATADIR%%/quirks.d/vli-usbhub-bizlink.quirk
+%%DATADIR%%/quirks.d/vli-usbhub-hyper.quirk
+%%DATADIR%%/quirks.d/vli-usbhub-lenovo.quirk
+%%DATADIR%%/quirks.d/vli-usbhub.quirk
+%%DATADIR%%/quirks.d/wacom-usb.quirk
+%%DATADIR%%/remotes.d/vendor/firmware/README.md
+%%DATADIR%%/simple_client.py
+share/gir-1.0/Fwupd-2.0.gir
+share/gir-1.0/FwupdPlugin-1.0.gir
+share/icons/hicolor/scalable/apps/org.freedesktop.fwupd.svg
+share/locale/af/LC_MESSAGES/fwupd.mo
+share/locale/ast/LC_MESSAGES/fwupd.mo
+share/locale/ca/LC_MESSAGES/fwupd.mo
+share/locale/cs/LC_MESSAGES/fwupd.mo
+share/locale/da/LC_MESSAGES/fwupd.mo
+share/locale/de/LC_MESSAGES/fwupd.mo
+share/locale/en_GB/LC_MESSAGES/fwupd.mo
+share/locale/eo/LC_MESSAGES/fwupd.mo
+share/locale/eu/LC_MESSAGES/fwupd.mo
+share/locale/fi/LC_MESSAGES/fwupd.mo
+share/locale/fr/LC_MESSAGES/fwupd.mo
+share/locale/fur/LC_MESSAGES/fwupd.mo
+share/locale/gl/LC_MESSAGES/fwupd.mo
+share/locale/he/LC_MESSAGES/fwupd.mo
+share/locale/hi/LC_MESSAGES/fwupd.mo
+share/locale/hr/LC_MESSAGES/fwupd.mo
+share/locale/hu/LC_MESSAGES/fwupd.mo
+share/locale/id/LC_MESSAGES/fwupd.mo
+share/locale/it/LC_MESSAGES/fwupd.mo
+share/locale/kk/LC_MESSAGES/fwupd.mo
+share/locale/ko/LC_MESSAGES/fwupd.mo
+share/locale/ky/LC_MESSAGES/fwupd.mo
+share/locale/lt/LC_MESSAGES/fwupd.mo
+share/locale/nl/LC_MESSAGES/fwupd.mo
+share/locale/oc/LC_MESSAGES/fwupd.mo
+share/locale/pl/LC_MESSAGES/fwupd.mo
+share/locale/pt_BR/LC_MESSAGES/fwupd.mo
+share/locale/ru/LC_MESSAGES/fwupd.mo
+share/locale/sk/LC_MESSAGES/fwupd.mo
+share/locale/sr/LC_MESSAGES/fwupd.mo
+share/locale/sv/LC_MESSAGES/fwupd.mo
+share/locale/tr/LC_MESSAGES/fwupd.mo
+share/locale/uk/LC_MESSAGES/fwupd.mo
+share/locale/zh_CN/LC_MESSAGES/fwupd.mo
+share/locale/zh_TW/LC_MESSAGES/fwupd.mo
+share/metainfo/org.freedesktop.fwupd.metainfo.xml
+share/vala/vapi/fwupd.deps
+share/vala/vapi/fwupd.vapi
+share/vala/vapi/fwupdplugin.deps
+share/vala/vapi/fwupdplugin.vapi
+/var/local/lib/fwupd/builder/README.md
+@dir /var/local/lib/fwupd/builder
+@dir /var/local/lib/fwupd
+@dir /var/local/lib
+@dir /var/local
Index: textproc/Makefile
===================================================================
--- textproc/Makefile
+++ textproc/Makefile
@@ -364,6 +364,7 @@
SUBDIR += libfo
SUBDIR += libfolia
SUBDIR += libgepub
+ SUBDIR += libjcat
SUBDIR += libkmfl
SUBDIR += libkolabxml
SUBDIR += libkomparediff2
@@ -396,6 +397,7 @@
SUBDIR += libxdiff
SUBDIR += libxml++26
SUBDIR += libxml2
+ SUBDIR += libxmlb
SUBDIR += libxmlbird
SUBDIR += libxode
SUBDIR += libxslt
Index: textproc/libjcat/Makefile
===================================================================
--- /dev/null
+++ textproc/libjcat/Makefile
@@ -0,0 +1,27 @@
+# $FreeBSD$
+
+PORTNAME= libjcat
+DISTVERSION= 0.1.6
+CATEGORIES= textproc
+
+MAINTAINER= norbert.kaminski@3mdeb.com
+COMMENT= Library for reading and writing JSON catalog files
+
+LICENSE= LGPL21
+
+BUILD_DEPENDS= gobject-introspection>=1.36:devel/gobject-introspection \
+ gtkdocize:textproc/gtk-doc \
+ help2man:misc/help2man \
+ vala:lang/vala
+LIB_DEPENDS= libgnutls.so:security/gnutls \
+ libgpg-error.so:security/libgpg-error \
+ libgpgme.so:security/gpgme \
+ libjson-glib-1.0.so:devel/json-glib
+
+USES= gnome localbase:ldflags meson pkgconfig
+USE_GITHUB= yes
+GH_ACCOUNT= hughsie
+USE_GNOME= glib20
+USE_LDCONFIG= yes
+
+.include <bsd.port.mk>
Index: textproc/libjcat/distinfo
===================================================================
--- /dev/null
+++ textproc/libjcat/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1616176749
+SHA256 (hughsie-libjcat-0.1.6_GH0.tar.gz) = 8de77399dd3f7cd055f07003e6fce438ef8339e2bfd90c29982b7ee0a2e72884
+SIZE (hughsie-libjcat-0.1.6_GH0.tar.gz) = 64485
Index: textproc/libjcat/files/patch-libjcat_meson.build
===================================================================
--- /dev/null
+++ textproc/libjcat/files/patch-libjcat_meson.build
@@ -0,0 +1,11 @@
+--- libjcat/meson.build.orig 2021-02-08 11:55:19 UTC
++++ libjcat/meson.build
+@@ -139,7 +139,7 @@ if get_option('introspection')
+ endif
+
+ python = import('python')
+- python_interpreter = python.find_installation('python3',
++ python_interpreter = import('python').find_installation(
+ modules: [
+ 'xml.etree.ElementTree',
+ 'pkg_resources',
Index: textproc/libjcat/pkg-descr
===================================================================
--- /dev/null
+++ textproc/libjcat/pkg-descr
@@ -0,0 +1,9 @@
+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.
+
+WWW: https://github.com/hughsie/libjcat
Index: textproc/libjcat/pkg-plist
===================================================================
--- /dev/null
+++ textproc/libjcat/pkg-plist
@@ -0,0 +1,27 @@
+bin/jcat-tool
+include/libjcat-1/jcat.h
+include/libjcat-1/libjcat/jcat-blob.h
+include/libjcat-1/libjcat/jcat-common.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/colorhug/firmware.bin
+libexec/installed-tests/libjcat/colorhug/firmware.bin.asc
+libexec/installed-tests/libjcat/colorhug/firmware.bin.p7b
+libexec/installed-tests/libjcat/colorhug/firmware.bin.p7c
+libexec/installed-tests/libjcat/jcat-self-test
+libexec/installed-tests/libjcat/pki/GPG-KEY-Linux-Vendor-Firmware-Service
+libexec/installed-tests/libjcat/pki/LVFS-CA.pem
+man/man1/jcat-tool.1.gz
+share/gir-1.0/Jcat-1.0.gir
+share/installed-tests/libjcat/libjcat.test
+share/vala/vapi/jcat.deps
+share/vala/vapi/jcat.vapi
Index: textproc/libxmlb/Makefile
===================================================================
--- /dev/null
+++ textproc/libxmlb/Makefile
@@ -0,0 +1,25 @@
+# $FreeBSD$
+
+PORTNAME= libxmlb
+DISTVERSION= 0.3.0
+CATEGORIES= textproc
+
+MAINTAINER= norbert.kaminski@3mdeb.com
+COMMENT= Help create and query binary XML blobs
+
+LICENSE= LGPL21
+
+BUILD_DEPENDS= gobject-introspection>=1.36:devel/gobject-introspection \
+ gtkdocize:textproc/gtk-doc
+
+USES= gnome meson pkgconfig python:3.7+
+USE_GITHUB= yes
+GH_ACCOUNT= hughsie
+USE_GNOME= glib20
+USE_LDCONFIG= yes
+
+OPTIONS_DEFINE= DOCS
+
+DOCS_MESON_TRUE= docs
+
+.include <bsd.port.mk>
Index: textproc/libxmlb/distinfo
===================================================================
--- /dev/null
+++ textproc/libxmlb/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1616097369
+SHA256 (hughsie-libxmlb-0.3.0_GH0.tar.gz) = be136770805e27087519c6366014c1ba2f48d7e4b8867950a942915feca47a5f
+SIZE (hughsie-libxmlb-0.3.0_GH0.tar.gz) = 112097
Index: textproc/libxmlb/files/patch-meson.build
===================================================================
--- /dev/null
+++ textproc/libxmlb/files/patch-meson.build
@@ -0,0 +1,11 @@
+--- meson.build.orig 2021-03-18 20:16:56 UTC
++++ meson.build
+@@ -149,7 +149,7 @@ configure_file(
+ )
+
+ python = import('python')
+-python3 = python.find_installation('python3')
++python3 = python.find_installation('python3.7')
+
+ subdir('data')
+ subdir('src')
Index: textproc/libxmlb/pkg-descr
===================================================================
--- /dev/null
+++ textproc/libxmlb/pkg-descr
@@ -0,0 +1,10 @@
+XML is slow to parse and strings inside the document cannot be memory mapped as
+they do not have a trailing NUL char. The libxmlb library takes XML source, and
+converts it to a structured binary representation with a deduplicated string
+table -- where the strings have the NULs included.
+
+This allows an application to mmap the binary XML file, do an XPath query and
+return some strings without actually parsing the entire document. This is all
+done using (almost) zero allocations and no actual copying of the binary data.
+
+WWW: https://github.com/hughsie/libxmlb
Index: textproc/libxmlb/pkg-plist
===================================================================
--- /dev/null
+++ textproc/libxmlb/pkg-plist
@@ -0,0 +1,62 @@
+include/libxmlb-2/libxmlb/xb-builder-fixup.h
+include/libxmlb-2/libxmlb/xb-builder-node.h
+include/libxmlb-2/libxmlb/xb-builder-source-ctx.h
+include/libxmlb-2/libxmlb/xb-builder-source.h
+include/libxmlb-2/libxmlb/xb-builder.h
+include/libxmlb-2/libxmlb/xb-machine.h
+include/libxmlb-2/libxmlb/xb-node-query.h
+include/libxmlb-2/libxmlb/xb-node-silo.h
+include/libxmlb-2/libxmlb/xb-node.h
+include/libxmlb-2/libxmlb/xb-opcode.h
+include/libxmlb-2/libxmlb/xb-query-context.h
+include/libxmlb-2/libxmlb/xb-query.h
+include/libxmlb-2/libxmlb/xb-silo-export.h
+include/libxmlb-2/libxmlb/xb-silo-query.h
+include/libxmlb-2/libxmlb/xb-silo.h
+include/libxmlb-2/libxmlb/xb-stack.h
+include/libxmlb-2/libxmlb/xb-string.h
+include/libxmlb-2/libxmlb/xb-value-bindings.h
+include/libxmlb-2/libxmlb/xb-version.h
+include/libxmlb-2/xmlb.h
+lib/girepository-1.0/Xmlb-2.0.typelib
+lib/libxmlb.so
+lib/libxmlb.so.2
+lib/libxmlb.so.2.0.0
+libdata/pkgconfig/xmlb.pc
+libexec/installed-tests/libxmlb/test.xml.gz.gz.gz
+libexec/installed-tests/libxmlb/xb-self-test
+libexec/xb-tool
+share/gir-1.0/Xmlb-2.0.gir
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/annotation-glossary.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/api-index-full.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/deprecated-api-index.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/home.png
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/index.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/intro.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/left-insensitive.png
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/left.png
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-XbBuilder.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-XbBuilderFixup.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-XbBuilderNode.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-XbBuilderSource.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-XbBuilderSourceCtx.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-XbMachine.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-XbNode.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-XbQuery.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-XbSilo.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-xb-node-query.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-xb-opcode.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-xb-query-context.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-xb-silo-export.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-xb-silo-query.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-xb-stack.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-xb-string.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb-xb-value-bindings.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb.devhelp2
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/libxmlb.html
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/right-insensitive.png
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/right.png
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/style.css
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/up-insensitive.png
+%%PORTDOCS%%share/gtk-doc/html/libxmlb/up.png
+share/installed-tests/libxmlb/libxmlb.test

File Metadata

Mime Type
text/plain
Expires
Fri, Nov 21, 3:18 AM (11 h, 14 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
25748682
Default Alt Text
D29332.id87711.diff (33 KB)

Event Timeline