diff options
| author | Jan Tuomi <jan@jantuomi.fi> | 2026-07-27 16:14:30 +0300 |
|---|---|---|
| committer | Jan Tuomi <jan@jantuomi.fi> | 2026-07-27 16:14:30 +0300 |
| commit | 4676dde8fcd1366c9f2c9a5a50728623f8d22b41 (patch) | |
| tree | e3a1619640718d6c36bcd15f3825b0807e5874dc /net-im/thelounge/files/thelounge.in | |
| parent | 2f98947352a02313377c600f6b6a1dbf3b921b1d (diff) | |
net-im/thelounge: add port
Diffstat (limited to 'net-im/thelounge/files/thelounge.in')
| -rw-r--r-- | net-im/thelounge/files/thelounge.in | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/net-im/thelounge/files/thelounge.in b/net-im/thelounge/files/thelounge.in new file mode 100644 index 0000000..bac52c4 --- /dev/null +++ b/net-im/thelounge/files/thelounge.in @@ -0,0 +1,76 @@ +#!/bin/sh + +# PROVIDE: thelounge +# REQUIRE: NETWORKING +# KEYWORD: shutdown + +. /etc/rc.subr + +name="thelounge" +rcvar="thelounge_enable" + +load_rc_config "${name}" + +: ${thelounge_enable:="NO"} +: ${thelounge_user:="thelounge"} +: ${thelounge_group:="thelounge"} +: ${thelounge_data_dir:="/var/db/thelounge"} +: ${thelounge_log_file:="/var/log/thelounge.log"} + +pidfile="/var/run/${name}.pid" + +start_cmd="${name}_start" +stop_cmd="${name}_stop" +status_cmd="${name}_status" + +thelounge_start() +{ + if [ -f "${pidfile}" ] && kill -0 $(cat "${pidfile}") 2>/dev/null; then + echo "${name} is already running." + return 1 + fi + + install -d -o "${thelounge_user}" -g "${thelounge_group}" -m 0750 \ + "${thelounge_data_dir}" || return 1 + + if [ ! -e "${thelounge_log_file}" ]; then + install -o "${thelounge_user}" -g "${thelounge_group}" -m 0640 \ + /dev/null "${thelounge_log_file}" || return 1 + fi + + echo "Starting ${name}." + + /usr/sbin/daemon \ + -f \ + -p "${pidfile}" \ + -o "${thelounge_log_file}" \ + -u "${thelounge_user}" \ + /usr/bin/env \ + PATH="%%PREFIX%%/bin:/usr/bin:/bin" \ + THELOUNGE_HOME="${thelounge_data_dir}" \ + %%PREFIX%%/bin/node %%PREFIX%%/libexec/thelounge/index.js start +} + +thelounge_stop() +{ + if [ -f "${pidfile}" ]; then + echo "Stopping ${name}." + kill $(cat "${pidfile}") 2>/dev/null + rm -f "${pidfile}" + else + echo "${name} is not running." + fi +} + +thelounge_status() +{ + if [ -f "${pidfile}" ] && kill -0 $(cat "${pidfile}") 2>/dev/null; then + echo "${name} is running as pid $(cat "${pidfile}")." + else + rm -f "${pidfile}" + echo "${name} is not running." + return 1 + fi +} + +run_rc_command "$1" |
