Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F140172911
D31410.id93935.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
7 KB
Referenced Files
None
Subscribers
None
D31410.id93935.diff
View Options
Index: GIDs
===================================================================
--- GIDs
+++ GIDs
@@ -242,7 +242,7 @@
backuppc:*:300:
# free: 301
netdata:*:302:
-# free: 303
+avalanchemq:*:303:
# free: 304
# free: 305
# free: 306
Index: UIDs
===================================================================
--- UIDs
+++ UIDs
@@ -247,7 +247,7 @@
backuppc:*:300:300::0:0:BackupPC pseudo-user:/nonexistent:/usr/sbin/nologin
# free: 301
netdata:*:302:302::0:0:NetData Daemon:/var/cache/netdata:/usr/sbin/nologin
-# free: 303
+avalanchemq:*:303:303::0:0:AvalancheMQ user:/nonexistent:/usr/sbin/nologin
# free: 304
# free: 305
# free: 306
Index: net/Makefile
===================================================================
--- net/Makefile
+++ net/Makefile
@@ -47,6 +47,7 @@
SUBDIR += avahi-libdns
SUBDIR += avahi-qt5
SUBDIR += avahi-sharp
+ SUBDIR += avalanchemq
SUBDIR += axa
SUBDIR += babeld
SUBDIR += balance
Index: net/avalanchemq/Makefile
===================================================================
--- /dev/null
+++ net/avalanchemq/Makefile
@@ -0,0 +1,52 @@
+PORTNAME= avalanchemq
+DISTVERSIONPREFIX= v
+DISTVERSION= 1.0.0-alpha.31
+CATEGORIES= net
+
+MAINTAINER= dch@FreeBSD.org
+COMMENT= Next-generation AMQP 0.9.1 based message broker
+
+LICENSE= APACHE20
+
+BUILD_DEPENDS= crystal:lang/crystal \
+ shards:devel/shards
+
+USES= pkgconfig ssl:build
+USE_GITHUB= yes
+GH_ACCOUNT= cloudamqp
+GH_TUPLE= dch:avalanchemq-lib:${DISTVERSION}:lib
+
+USE_RC_SUBR= avalanchemq
+
+USERS= avalanchemq
+GROUPS= avalanchemq
+
+PORTDOCS= CHANGELOG.md NOTICE README.md SECURITY.md
+
+OPTIONS_DEFINE= DOCS
+
+SHARDS_ENV= --release --production --local --no-color --progress --stats --static
+
+post-extract:
+ @${MV} ${WRKDIR}/avalanchemq-lib-${DISTVERSION} ${WRKSRC}/lib
+
+do-build:
+ (cd ${WRKSRC} && ${LOCALBASE}/bin/shards build ${SHARDS_ENV})
+
+do-install:
+ ${MKDIR} \
+ ${STAGEDIR}${ETCDIR} \
+ ${STAGEDIR}/var/db/avalanchemq \
+ ${STAGEDIR}/var/log/avalanchemq
+.for f in mq mqctl mqperf
+ ${INSTALL_PROGRAM} ${WRKSRC}/bin/avalanche${f} \
+ ${STAGEDIR}${PREFIX}/bin
+.endfor
+
+do-install-DOCS-on:
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+.for f in ${PORTDOCS}
+ ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}${DOCSDIR}
+.endfor
+
+.include <bsd.port.mk>
Index: net/avalanchemq/distinfo
===================================================================
--- /dev/null
+++ net/avalanchemq/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1628108503
+SHA256 (cloudamqp-avalanchemq-v1.0.0-alpha.31_GH0.tar.gz) = c4264e6dff3b3b65e17604a3dea21e2614a8167495c8167a431f59bef9218ec0
+SIZE (cloudamqp-avalanchemq-v1.0.0-alpha.31_GH0.tar.gz) = 871165
+SHA256 (dch-avalanchemq-lib-1.0.0-alpha.31_GH0.tar.gz) = 15fd65ae3b6ae8a36605e70f34c67ca6a3f0ee94fdbedaba4c4b3d06c71292a6
+SIZE (dch-avalanchemq-lib-1.0.0-alpha.31_GH0.tar.gz) = 121562
Index: net/avalanchemq/files/avalanchemq.in
===================================================================
--- /dev/null
+++ net/avalanchemq/files/avalanchemq.in
@@ -0,0 +1,94 @@
+#!/bin/sh
+
+# PROVIDE: avalanchemq
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+#
+# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
+# to enable this service:
+#
+# avalanchemq_enable (bool): Set it to YES to enable avalanchemq.
+# Default is "NO".
+# avalanchemq_user (user): Set user to run avalanchemq.
+# Default is "avalanchemq".
+# avalanchemq_group (group): Set group to run avalanchemq.
+# Default is "avalanchemq".
+# avalanchemq_config (file): Set avalanchemq config file.
+# Default is "%%ETCDIR%%/avalanchemq.conf".
+# avalanchemq_syslog_output_enable (bool): Set to enable syslog output.
+# Default is "NO". See daemon(8).
+# avalanchemq_syslog_output_priority (str): Set syslog priority if syslog enabled.
+# Default is "info". See daemon(8).
+# avalanchemq_syslog_output_facility (str): Set syslog facility if syslog enabled.
+# Default is "daemon". See daemon(8).
+
+. /etc/rc.subr
+
+name=avalanchemq
+rcvar=avalanchemq_enable
+
+load_rc_config $name
+
+: ${avalanchemq_enable:="NO"}
+: ${avalanchemq_dir:="/var/db/avalanchemq"}
+: ${avalanchemq_run:="/var/run/avalanchemq"}
+: ${avalanchemq_user:="avalanchemq"}
+: ${avalanchemq_group:="avalanchemq"}
+: ${avalanchemq_config:="%%ETCDIR%%/config.ini"}
+
+DAEMON=$(/usr/sbin/daemon 2>&1 | grep -q syslog ; echo $?)
+if [ ${DAEMON} -eq 0 ]; then
+ : ${avalanchemq_syslog_output_enable:="NO"}
+ : ${avalanchemq_syslog_output_priority:="info"}
+ : ${avalanchemq_syslog_output_facility:="daemon"}
+ if checkyesno avalanchemq_syslog_output_enable; then
+ avalanchemq_syslog_output_flags="-T ${name}"
+
+ if [ -n "${avalanchemq_syslog_output_priority}" ]; then
+ avalanchemq_syslog_output_flags="${avalanchemq_syslog_output_flags} -s ${avalanchemq_syslog_output_priority}"
+ fi
+
+ if [ -n "${avalanchemq_syslog_output_facility}" ]; then
+ avalanchemq_syslog_output_flags="${avalanchemq_syslog_output_flags} -l ${avalanchemq_syslog_output_facility}"
+ fi
+ fi
+else
+ avalanchemq_syslog_output_enable="NO"
+ avalanchemq_syslog_output_flags=""
+fi
+
+pidfile=/var/run/avalanchemq/daemon.pid
+procname="%%PREFIX%%/bin/avalanchemq"
+command="/usr/sbin/daemon"
+command_args="-f -t ${name} ${avalanchemq_syslog_output_flags} -p ${pidfile} /usr/bin/env ${avalanchemq_env} ${procname} --config=${avalanchemq_config}"
+
+extra_commands="reload monitor"
+monitor_cmd=avalanchemq_monitor
+start_precmd=avalanchemq_startprecmd
+required_files="$avalanchemq_config"
+
+avalanchemq_monitor()
+{
+ sig_reload=USR1
+ run_rc_command "reload"
+}
+
+avalanchemq_startprecmd()
+{
+ if [ ! -d ${avalanchemq_run} ]; then
+ install -d -o ${avalanchemq_user} -g ${avalanchemq_group} ${avalanchemq_run}
+ fi
+
+ if [ ! -d ${avalanchemq_dir} ]; then
+ install -d -o ${avalanchemq_user} -g ${avalanchemq_group} ${avalanchemq_dir}
+ fi
+
+ if [ ! -e ${pidfile} ]; then
+ install -o ${avalanchemq_user} -g ${avalanchemq_group} /dev/null ${pidfile};
+ fi
+
+ # remove stray sockets that can block startup
+ rm -rf ${avalanchemq_run}/*.sock /tmp/avalanchemq
+}
+
+run_rc_command "$1"
Index: net/avalanchemq/pkg-descr
===================================================================
--- /dev/null
+++ net/avalanchemq/pkg-descr
@@ -0,0 +1,16 @@
+AvalancheMQ is a message queue server, also called a message broker,
+where messages are published by a sending service called a producer, via
+the broker, to then be consumed by the receiving service called a
+consumer. When not handling messages, the queue can route, buffer, and
+persist the messages according to rules set up by the user.
+
+Messages can be sent across languages, platforms, and OS, which decouple
+processes and creates a highly scalable system. AvalancheMQ, as queue
+management software, gives an organized, safe place for messages to wait
+until another application or part of the system can come along and
+consume them for processing.
+
+AvalancheMQ is written in Crystal, a statically compiled LLVM-based
+language with a ruby-like syntax.
+
+WWW: https://www.avalanchemq.com/
Index: net/avalanchemq/pkg-plist
===================================================================
--- /dev/null
+++ net/avalanchemq/pkg-plist
@@ -0,0 +1,7 @@
+@dir(avalanchemq,avalanchemq,750) %%ETCDIR%%
+@dir(avalanchemq,avalanchemq,750) /var/db/avalanchemq
+@dir(avalanchemq,avalanchemq,750) /var/log/avalanchemq
+@comment TBH is there a default to use yet? @sample %%ETCDIR%%/avalanchemq.conf.sample
+bin/avalanchemq
+bin/avalanchemqctl
+bin/avalanchemqperf
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Mon, Dec 22, 2:40 AM (10 h, 44 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27131777
Default Alt Text
D31410.id93935.diff (7 KB)
Attached To
Mode
D31410: net/lavinmq: NEW PORT a high-speed AMQP-0.9.1 message broker
Attached
Detach File
Event Timeline
Log In to Comment