git: 5d51b1385bf5 - main - sysutils/zelta: Add new port

From: Mateusz Piotrowski <0mp_at_FreeBSD.org>
Date: Fri, 26 Apr 2024 14:16:46 UTC
The branch main has been updated by 0mp:

URL: https://cgit.FreeBSD.org/ports/commit/?id=5d51b1385bf54548ec03cb57a2c33dd348dafb90

commit 5d51b1385bf54548ec03cb57a2c33dd348dafb90
Author:     Mateusz Piotrowski <0mp@FreeBSD.org>
AuthorDate: 2024-04-26 09:05:27 +0000
Commit:     Mateusz Piotrowski <0mp@FreeBSD.org>
CommitDate: 2024-04-26 14:15:37 +0000

    sysutils/zelta: Add new port
    
    Zelta is a suite of tools offering a streamlined approach to managing
    ZFS snapshot replication across systems. It's built with the intention
    of simplifying complex ZFS functions into safe and user-friendly
    commands while also being the foundation for large-scale backup and
    failover environments. It's easy and accessible while working with most
    UNIX and UNIX-like base systems without additional packages. It's
    optimized for environments with strict permission separation, and
    integrates well into many types of existing ZFS workflows.
    
    PR:             278582
    Sponsored by:   Bell Tower Integration
    Sponsored by:   Klara, Inc.
    Co-authored-by: JT Pennington <jt.pennington@klarasystems.com>
---
 sysutils/Makefile                   |  1 +
 sysutils/zelta/Makefile             | 37 +++++++++++++++++++++++++++++++++++++
 sysutils/zelta/distinfo             |  3 +++
 sysutils/zelta/files/pkg-message.in | 17 +++++++++++++++++
 sysutils/zelta/pkg-descr            |  8 ++++++++
 sysutils/zelta/pkg-plist            | 15 +++++++++++++++
 6 files changed, 81 insertions(+)

diff --git a/sysutils/Makefile b/sysutils/Makefile
index 13bcb4ca65ca..8e2e81cabb63 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -1680,6 +1680,7 @@
     SUBDIR += zbackup
     SUBDIR += zeitgeist
     SUBDIR += zellij
+    SUBDIR += zelta
     SUBDIR += zeroer
     SUBDIR += zetaback
     SUBDIR += zetaback-devel
diff --git a/sysutils/zelta/Makefile b/sysutils/zelta/Makefile
new file mode 100644
index 000000000000..dd097c869236
--- /dev/null
+++ b/sysutils/zelta/Makefile
@@ -0,0 +1,37 @@
+PORTNAME=	zelta
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.5
+DISTVERSIONSUFFIX=	-beta
+CATEGORIES=	sysutils
+
+MAINTAINER=	daniel@belltech.it
+COMMENT=	ZFS tools used for data migration and backup management
+WWW=		https://github.com/bellhyve/zelta
+
+LICENSE=	BSD2CLAUSE
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	bellhyve
+
+NO_ARCH=	yes
+NO_BUILD=	yes
+
+SUB_FILES=	pkg-message
+
+_ZELTA_SHARE=	${PREFIX}/share/zelta
+_ZELTA_CONF=	zelta.conf
+_ZELTA_ENV=	zelta.env
+
+do-install:
+	${INSTALL_SCRIPT} ${WRKSRC}/bin/zelta ${STAGEDIR}${PREFIX}/bin
+	${RLN} ${STAGEDIR}${PREFIX}/bin/zelta ${STAGEDIR}${PREFIX}/bin/zeport
+	${RLN} ${STAGEDIR}${PREFIX}/bin/zelta ${STAGEDIR}${PREFIX}/bin/zmatch
+	${RLN} ${STAGEDIR}${PREFIX}/bin/zelta ${STAGEDIR}${PREFIX}/bin/zpull
+	${RLN} ${STAGEDIR}${PREFIX}/bin/zelta ${STAGEDIR}${PREFIX}/bin/zsync
+	${MKDIR} ${STAGEDIR}${ETCDIR}
+	${INSTALL_DATA} ${WRKSRC}/${_ZELTA_ENV} ${STAGEDIR}${ETCDIR}/${_ZELTA_ENV}.sample
+	${INSTALL_DATA} ${WRKSRC}/${_ZELTA_CONF} ${STAGEDIR}${ETCDIR}/${_ZELTA_CONF}.sample
+	${MKDIR} ${STAGEDIR}${_ZELTA_SHARE}
+	${INSTALL_DATA} ${WRKSRC}/share/zelta/* ${STAGEDIR}${_ZELTA_SHARE}
+
+.include <bsd.port.mk>
diff --git a/sysutils/zelta/distinfo b/sysutils/zelta/distinfo
new file mode 100644
index 000000000000..1228a7bc51b3
--- /dev/null
+++ b/sysutils/zelta/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1714064072
+SHA256 (bellhyve-zelta-v0.5-beta_GH0.tar.gz) = fcf073cd59ecc01998a28d62a9c82f38e7265031de7315d8db1dc845b2c91c7c
+SIZE (bellhyve-zelta-v0.5-beta_GH0.tar.gz) = 26276
diff --git a/sysutils/zelta/files/pkg-message.in b/sysutils/zelta/files/pkg-message.in
new file mode 100644
index 000000000000..b8dd235e3831
--- /dev/null
+++ b/sysutils/zelta/files/pkg-message.in
@@ -0,0 +1,17 @@
+[
+{ type: install
+  message: <<EOM
+To start using Zelta, configure the configuration file located at:
+
+    %%ETCDIR%%/zelta.conf
+
+For detailed information on configuring Zelta, please refer to the
+documentation:
+
+    https://github.com/bellhyve/zelta/blob/main/README.md
+
+If you find any bugs please file them
+at https://github.com/bellhyve/zelta/issues.
+EOM
+}
+]
diff --git a/sysutils/zelta/pkg-descr b/sysutils/zelta/pkg-descr
new file mode 100644
index 000000000000..22760c1488d9
--- /dev/null
+++ b/sysutils/zelta/pkg-descr
@@ -0,0 +1,8 @@
+Zelta is a suite of tools offering a streamlined approach to managing
+ZFS snapshot replication across systems. It's built with the intention
+of simplifying complex ZFS functions into safe and user-friendly
+commands while also being the foundation for large-scale backup
+and failover environments. It's easy and accessible while working
+with most UNIX and UNIX-like base systems without additional packages.
+It's optimized for environments with strict permission separation,
+and integrates well into many types of existing ZFS workflows.
diff --git a/sysutils/zelta/pkg-plist b/sysutils/zelta/pkg-plist
new file mode 100644
index 000000000000..059064c2006f
--- /dev/null
+++ b/sysutils/zelta/pkg-plist
@@ -0,0 +1,15 @@
+bin/zelta
+bin/zeport
+bin/zmatch
+bin/zpull
+bin/zsync
+@sample %%ETCDIR%%/zelta.conf.sample
+@sample %%ETCDIR%%/zelta.env.sample
+%%DATADIR%%/zelta-endpoint.awk
+%%DATADIR%%/zelta-match.awk
+%%DATADIR%%/zelta-policy.awk
+%%DATADIR%%/zelta-reconcile.awk
+%%DATADIR%%/zelta-replicate.awk
+%%DATADIR%%/zelta-report.awk
+%%DATADIR%%/zelta-snapshot.awk
+%%DATADIR%%/zelta-usage.sh