package/qbee-agent: new package

This patch add qbee-agent, an open source device management software
for Linux devices.

Signed-off-by: Jon Henrik Bjørnstad <jonhenrik@qbee.io>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Jon Henrik Bjørnstad 2024-03-05 10:38:39 +01:00 committed by Thomas Petazzoni
parent cfda1f0b87
commit 322500d1bd
5 changed files with 70 additions and 0 deletions

View File

@ -1650,6 +1650,9 @@ F: package/sdbusplus/
N: Jon Ringle <jringle@gridpoint.com>
F: package/mbpoll/
N: Jon Henrik Bjørnstad <jonhenrik@qbee.io>
F: package/qbee-agent/
N: Jonathan Ben Avraham <yba@tkos.co.il>
F: arch/Config.in.xtensa
F: package/autofs/

View File

@ -2797,6 +2797,7 @@ menu "System tools"
source "package/procs/Config.in"
source "package/psmisc/Config.in"
source "package/pwgen/Config.in"
source "package/qbee-agent/Config.in"
source "package/quota/Config.in"
source "package/quotatool/Config.in"
source "package/rauc/Config.in"

View File

@ -0,0 +1,25 @@
config BR2_PACKAGE_QBEE_AGENT
bool "qbee-agent"
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
depends on BR2_USE_MMU # bash
depends on !BR2_STATIC_LIBS # shadow
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 # shadow
select BR2_PACKAGE_IPTABLES # runtime
select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # bash
select BR2_PACKAGE_SHADOW # runtime
select BR2_PACKAGE_BASH # runtime
help
Qbee is a device management platform that comprise of an
open-source agent and a hosted SaaS backend. This config
installs pre-built static binaries made with the official
public signing key for qbee.io. The binaries will work
seamlessly with the qbee.io device management backend.
https://github.com/qbee-io/qbee-agent
https://qbee.io
comment "qbee-agent needs a toolchain w/ headers >= 4.14, dynamic library"
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
depends on BR2_USE_MMU
depends on BR2_STATIC_LIBS || \
!BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14

View File

@ -0,0 +1,3 @@
# Locally calculated
sha256 d329d6d1c885ec4d410ab8c5f93320ab603cef860311a6b392edd5b903039a81 qbee-agent-2024.09-go2.tar.gz
sha256 02d07d96be99eb042b01ba650079a440ce26a78c5e0e1e8060c33a8c9e200404 LICENSE

View File

@ -0,0 +1,38 @@
################################################################################
#
# qbee-agent package
#
################################################################################
# keep QBEE_AGENT_COMMIT_ID in sync when updating
QBEE_AGENT_VERSION = 2024.09
QBEE_AGENT_SITE = $(call github,qbee-io,qbee-agent,$(QBEE_AGENT_VERSION))
QBEE_AGENT_LICENSE = Apache-2.0
QBEE_AGENT_LICENSE_FILES = LICENSE
QBEE_AGENT_COMMIT_ID = c30d43b8e64cfef960cee9475b58ae083e4ad246
QBEE_AGENT_GOMOD = go.qbee.io/agent
QBEE_AGENT_LDFLAGS = -s -w \
-X $(QBEE_AGENT_GOMOD)/app.Version=$(QBEE_AGENT_VERSION) \
-X $(QBEE_AGENT_GOMOD)/app.Commit=$(QBEE_AGENT_COMMIT_ID)
define QBEE_AGENT_INSTALL_CERT
$(INSTALL) -D -m 0600 $(@D)/package/share/ssl/ca.cert \
$(TARGET_DIR)/etc/qbee/ppkeys/ca.cert
endef
QBEE_AGENT_POST_INSTALL_TARGET_HOOKS += QBEE_AGENT_INSTALL_CERT
define QBEE_AGENT_INSTALL_INIT_SYSTEMD
$(INSTALL) -D -m 0644 $(@D)/package/init-scripts/systemd/qbee-agent.service \
$(TARGET_DIR)/usr/lib/systemd/system/qbee-agent.service
endef
define QBEE_AGENT_INSTALL_INIT_SYSV
$(INSTALL) -D -m 755 $(@D)/package/init-scripts/sysvinit/qbee-agent \
$(TARGET_DIR)/etc/init.d/S99qbee-agent
endef
$(eval $(golang-package))