All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] package/casync-nano: new package
@ 2025-04-20 20:45 Florian Larysch
  2025-04-20 21:13 ` Thomas Petazzoni via buildroot
  2025-05-18 15:07 ` Thomas Petazzoni via buildroot
  0 siblings, 2 replies; 5+ messages in thread
From: Florian Larysch @ 2025-04-20 20:45 UTC (permalink / raw)
  To: buildroot; +Cc: Florian Larysch

casync-nano is an implementation of a subset of the features of casync,
optimized for performing OTA updates on embedded systems.

Signed-off-by: Florian Larysch <fl@n621.de>
---
 DEVELOPERS                           |  3 +++
 package/Config.in                    |  1 +
 package/Config.in.host               |  1 +
 package/casync-nano/Config.in        | 21 +++++++++++++++++++++
 package/casync-nano/Config.in.host   |  7 +++++++
 package/casync-nano/casync-nano.hash |  3 +++
 package/casync-nano/casync-nano.mk   | 28 ++++++++++++++++++++++++++++
 7 files changed, 64 insertions(+)
 create mode 100644 package/casync-nano/Config.in
 create mode 100644 package/casync-nano/Config.in.host
 create mode 100644 package/casync-nano/casync-nano.hash
 create mode 100644 package/casync-nano/casync-nano.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 3a921c8a74..6f30b6b938 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1130,6 +1130,9 @@ F:	package/rsyslog/
 N:	Florian Fainelli <f.fainelli@gmail.com>
 F:	package/cpulimit/
 
+N:	Florian Larysch <fl@n621.de>
+F:	package/casync-nano/
+
 N:	Floris Bos <bos@je-eigen-domein.nl>
 F:	package/ipmitool/
 F:	package/odhcploc/
diff --git a/package/Config.in b/package/Config.in
index c29109aa7e..cfff6a77eb 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2456,6 +2456,7 @@ endif
 	source "package/can-utils/Config.in"
 	source "package/cannelloni/Config.in"
 	source "package/casync/Config.in"
+	source "package/casync-nano/Config.in"
 	source "package/cfm/Config.in"
 	source "package/chrony/Config.in"
 	source "package/civetweb/Config.in"
diff --git a/package/Config.in.host b/package/Config.in.host
index bf04f5fa97..b0f7529a13 100644
--- a/package/Config.in.host
+++ b/package/Config.in.host
@@ -13,6 +13,7 @@ menu "Host utilities"
 	source "package/bmap-writer/Config.in.host"
 	source "package/bootgen/Config.in.host"
 	source "package/btrfs-progs/Config.in.host"
+	source "package/casync-nano/Config.in.host"
 	source "package/cbootimage/Config.in.host"
 	source "package/checkpolicy/Config.in.host"
 	source "package/checksec/Config.in.host"
diff --git a/package/casync-nano/Config.in b/package/casync-nano/Config.in
new file mode 100644
index 0000000000..ec7eeafaaa
--- /dev/null
+++ b/package/casync-nano/Config.in
@@ -0,0 +1,21 @@
+config BR2_PACKAGE_CASYNC_NANO
+	bool "casync-nano"
+	select BR2_PACKAGE_OPENSSL
+	select BR2_PACKAGE_ZSTD
+	select BR2_PACKAGE_LIBCURL
+	help
+	  Tiny casync-like tool optimized for embedded systems.
+
+	  https://github.com/florolf/casync-nano
+
+if BR2_PACKAGE_CASYNC_NANO
+
+config BR2_PACKAGE_CASYNC_NANO_CASYNC_SHIM
+	bool "install casync shim"
+	# only once package should provide the "casync" command
+	depends on !BR2_PACKAGE_CASYNC
+	help
+	  Install a shim that provides basic compatibility with the
+	  "extract" sub-command of casync to programs that expect it.
+
+endif
diff --git a/package/casync-nano/Config.in.host b/package/casync-nano/Config.in.host
new file mode 100644
index 0000000000..2fc3340017
--- /dev/null
+++ b/package/casync-nano/Config.in.host
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_HOST_CASYNC_NANO
+	bool "host casync-nano tool"
+	help
+	  casync-nano host tool (csn-tool) for casync-nano specific
+	  features like chunk encryption.
+
+	  https://github.com/florolf/casync-nano
diff --git a/package/casync-nano/casync-nano.hash b/package/casync-nano/casync-nano.hash
new file mode 100644
index 0000000000..1697fa93ef
--- /dev/null
+++ b/package/casync-nano/casync-nano.hash
@@ -0,0 +1,3 @@
+# locally calculated
+sha256  29ed8a767304e7e3032e66feea3d2dada7cc7db73344231a54bf080cc6e65ecf  casync-nano-1.1.1.tar.gz
+sha256  dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551  COPYING
diff --git a/package/casync-nano/casync-nano.mk b/package/casync-nano/casync-nano.mk
new file mode 100644
index 0000000000..a15377a6b4
--- /dev/null
+++ b/package/casync-nano/casync-nano.mk
@@ -0,0 +1,28 @@
+################################################################################
+#
+# casync-nano
+#
+################################################################################
+
+CASYNC_NANO_VERSION = 1.1.1
+CASYNC_NANO_SITE = $(call github,florolf,casync-nano,v$(CASYNC_NANO_VERSION))
+CASYNC_NANO_LICENSE = LGPL-2.1
+CASYNC_NANO_LICENSE_FILES = COPYING
+CASYNC_NANO_DEPENDENCIES = host-pkgconf openssl zstd libcurl
+
+ifeq ($(BR2_PACKAGE_CASYNC_NANO_CASYNC_SHIM),y)
+define CASYNC_NANO_INSTALL_CASYNC_SHIM
+	ln -sf csn $(TARGET_DIR)/usr/bin/casync
+endef
+endif
+
+define CASYNC_NANO_INSTALL_TARGET_CMDS
+	$(INSTALL) -D -m0755 $(@D)/csn $(TARGET_DIR)/usr/bin/csn
+	$(CASYNC_NANO_INSTALL_CASYNC_SHIM)
+endef
+
+HOST_CASYNC_NANO_DEPENDENCIES = host-pkgconf host-openssl
+HOST_CASYNC_NANO_CONF_OPTS = -DBUILD_CSN=Off -DBUILD_CSN_TOOL=On
+
+$(eval $(cmake-package))
+$(eval $(host-cmake-package))
-- 
2.49.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

end of thread, other threads:[~2025-05-18 15:07 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-20 20:45 [Buildroot] [PATCH 1/1] package/casync-nano: new package Florian Larysch
2025-04-20 21:13 ` Thomas Petazzoni via buildroot
2025-04-20 21:32   ` Florian Larysch
2025-04-20 21:48     ` Thomas Petazzoni via buildroot
2025-05-18 15:07 ` Thomas Petazzoni via buildroot

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.