Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F136854771
D29332.id87711.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
33 KB
Referenced Files
None
Subscribers
None
D29332.id87711.diff
View Options
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
Details
Attached
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)
Attached To
Mode
D29332: WIP to add sysutils/fwupd (if it runs well)
Attached
Detach File
Event Timeline
Log In to Comment