summaryrefslogtreecommitdiffstats
path: root/network/ejabberd
diff options
context:
space:
mode:
Diffstat (limited to 'network/ejabberd')
-rw-r--r--network/ejabberd/README3
-rw-r--r--network/ejabberd/ejabberd.SlackBuild29
-rw-r--r--network/ejabberd/ejabberd.info82
-rw-r--r--network/ejabberd/rc.ejabberd41
4 files changed, 85 insertions, 70 deletions
diff --git a/network/ejabberd/README b/network/ejabberd/README
index f350ba3c09..dc46278e0a 100644
--- a/network/ejabberd/README
+++ b/network/ejabberd/README
@@ -16,7 +16,8 @@ PGSQL=yes|no (default: no), enable PostgreSQL support
SQLITE=yes|no (default: no), enable SQLite support
PAM=yes|no (default: no), enable PAM authentication
REDIS=yes|no (default: no), enable Redis support
-ELIXIR=yes|no (default: no), enable Elixir support
SIP=yes|no (default: no), enable SIP support
LUA=yes|no (default: no), enable Lua support (to import from Prosody)
TOOLS=yes|no (default: no), build development tools
+
+rebar3 is needed only at build time.
diff --git a/network/ejabberd/ejabberd.SlackBuild b/network/ejabberd/ejabberd.SlackBuild
index 1e3262a987..e0e6fd450c 100644
--- a/network/ejabberd/ejabberd.SlackBuild
+++ b/network/ejabberd/ejabberd.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for ejabberd
-# Copyright 2022, Alexander Verbovetsky, Moscow, Russia
+# Copyright 2022-2024, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,9 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ejabberd
-VERSION=${VERSION:-22.05_git75a771b}
-COMMIT=75a771bfec3626145d404349fdaec4f0eef83bbc
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-24.02}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -81,15 +80,16 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$COMMIT
-tar xvf $CWD/$PRGNAM-$COMMIT.tar.gz
-cd $PRGNAM-$COMMIT
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
-find -L $CWD -type f -name "*.tar.gz" ! -name "$PRGNAM-$COMMIT.tar.gz" \
- | while read f
+rm -f rebar rebar3
+
+find -L $CWD -maxdepth 1 -type f \
+ -name "*.tar.gz" ! -name "$PRGNAM-$VERSION.tar.gz" | while read f
do
- fn=$(basename $f | sed -e 's/ejabberd-po.*/ejabberd_po/' \
- | rev | cut -d- -f2 | rev)
+ fn=$(basename $f | rev | cut -d- -f2 | rev)
mkdir -p deps/$fn
tar xvf $f -C deps/$fn --strip-components=1
done
@@ -107,7 +107,6 @@ pgsql=""; [ "${PGSQL:-no}" != "no" ] && pgsql="--enable-pgsql"
sqlite=""; [ "${SQLITE:-no}" != "no" ] && sqlite="--enable-sqlite"
pam=""; [ "${PAM:-no}" != "no" ] && pam="--enable-pam"
redis=""; [ "${REDIS:-no}" != "no" ] && redis="--enable-redis"
-elixir=""; [ "${ELIXIR:-no}" != "no" ] && elixir="--enable-elixir"
sip=""; [ "${SIP:-no}" != "no" ] && sip="--enable-sip"
lua=""; [ "${LUA:-no}" != "no" ] && lua="--enable-lua"
tools=""; [ "${TOOLS:-no}" != "no" ] && tools="--enable-tools"
@@ -124,22 +123,24 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-user=ejabberd \
--build=$ARCH-slackware-linux \
+ --with-rebar=rebar \
$odbc \
$mysql \
$pgsql \
$sqlite \
$pam \
$redis \
- $elixir \
$sip \
$lua \
$tools
-make
+unshare -n make
make install DESTDIR=$PKG
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+find -L $PKG/usr/lib${LIBDIRSUFFIX} -type f -name "*.so" -exec chmod 755 {} \;
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/network/ejabberd/ejabberd.info b/network/ejabberd/ejabberd.info
index ede054729e..6b5c808233 100644
--- a/network/ejabberd/ejabberd.info
+++ b/network/ejabberd/ejabberd.info
@@ -1,70 +1,64 @@
PRGNAM="ejabberd"
-VERSION="22.05_git75a771b"
+VERSION="24.02"
HOMEPAGE="https://www.ejabberd.im"
-DOWNLOAD="https://github.com/processone/ejabberd/archive/75a771b/ejabberd-75a771bfec3626145d404349fdaec4f0eef83bbc.tar.gz \
+DOWNLOAD="https://github.com/processone/ejabberd/archive/24.02/ejabberd-24.02.tar.gz \
https://github.com/dvv/base64url/archive/1.0.1/base64url-1.0.1.tar.gz \
https://github.com/processone/cache_tab/archive/1.0.30/cache_tab-1.0.30.tar.gz \
https://github.com/processone/eimp/archive/1.0.22/eimp-1.0.22.tar.gz \
- https://github.com/processone/ejabberd-po/archive/9849703/ejabberd-po-9849703.tar.gz \
- https://github.com/elixir-lang/elixir/archive/v1.4.4/elixir-1.4.4.tar.gz \
- https://github.com/processone/epam/archive/1.0.12/epam-1.0.12.tar.gz \
+ https://github.com/processone/epam/archive/1.0.14/epam-1.0.14.tar.gz \
https://github.com/wooga/eredis/archive/v1.2.0/eredis-1.2.0.tar.gz \
- https://github.com/processone/esip/archive/1.0.47/esip-1.0.47.tar.gz \
+ https://github.com/processone/esip/archive/1.0.52/esip-1.0.52.tar.gz \
https://github.com/processone/ezlib/archive/1.0.12/ezlib-1.0.12.tar.gz \
- https://github.com/processone/fast_tls/archive/1.1.15/fast_tls-1.1.15.tar.gz \
- https://github.com/processone/fast_xml/archive/1.1.49/fast_xml-1.1.49.tar.gz \
- https://github.com/processone/fast_yaml/archive/1.0.33/fast_yaml-1.0.33.tar.gz \
+ https://github.com/processone/fast_tls/archive/1.1.19/fast_tls-1.1.19.tar.gz \
+ https://github.com/processone/fast_xml/archive/1.1.51/fast_xml-1.1.51.tar.gz \
+ https://github.com/processone/fast_yaml/archive/1.0.36/fast_yaml-1.0.36.tar.gz \
https://github.com/benoitc/erlang-idna/archive/6.0.0/erlang-idna-6.0.0.tar.gz \
https://github.com/davisp/jiffy/archive/1.1.1/jiffy-1.1.1.tar.gz \
- https://github.com/potatosalad/erlang-jose/archive/1.11.1/erlang-jose-1.11.1.tar.gz \
- https://github.com/rvirding/luerl/archive/1.0/luerl-1.0.tar.gz \
- https://github.com/processone/mqtree/archive/1.0.15/mqtree-1.0.15.tar.gz \
- https://github.com/processone/p1_acme/archive/1.0.19/p1_acme-1.0.19.tar.gz \
- https://github.com/processone/p1_mysql/archive/1.0.19/p1_mysql-1.0.19.tar.gz \
- https://github.com/processone/p1_oauth2/archive/0.6.11/p1_oauth2-0.6.11.tar.gz \
- https://github.com/processone/p1_pgsql/archive/1.1.18/p1_pgsql-1.1.18.tar.gz \
+ https://github.com/potatosalad/erlang-jose/archive/1.11.5/erlang-jose-1.11.5.tar.gz \
+ https://github.com/rvirding/luerl/archive/1.1.1/luerl-1.1.1.tar.gz \
+ https://github.com/processone/mqtree/archive/1.0.16/mqtree-1.0.16.tar.gz \
+ https://github.com/processone/p1_acme/archive/1.0.22/p1_acme-1.0.22.tar.gz \
+ https://github.com/processone/p1_mysql/archive/1.0.23/p1_mysql-1.0.23.tar.gz \
+ https://github.com/processone/p1_oauth2/archive/0.6.14/p1_oauth2-0.6.14.tar.gz \
+ https://github.com/processone/p1_pgsql/archive/1.1.25/p1_pgsql-1.1.25.tar.gz \
https://github.com/processone/p1_utils/archive/1.0.25/p1_utils-1.0.25.tar.gz \
https://github.com/processone/pkix/archive/1.0.9/pkix-1.0.9.tar.gz \
- https://github.com/processone/rebar_elixir_plugin/archive/0.1.0/rebar_elixir_plugin-0.1.0.tar.gz \
- https://github.com/processone/erlang-sqlite3/archive/1.1.13/erlang-sqlite3-1.1.13.tar.gz \
- https://github.com/processone/stringprep/archive/1.0.28/stringprep-1.0.28.tar.gz \
- https://github.com/processone/stun/archive/1.2.2/stun-1.2.2.tar.gz \
- https://github.com/processone/xmpp/archive/1.5.8/xmpp-1.5.8.tar.gz \
- https://github.com/processone/yconf/archive/1.0.13/yconf-1.0.13.tar.gz \
+ https://github.com/processone/erlang-sqlite3/archive/1.1.14/erlang-sqlite3-1.1.14.tar.gz \
+ https://github.com/processone/stringprep/archive/1.0.29/stringprep-1.0.29.tar.gz \
+ https://github.com/processone/stun/archive/1.2.12/stun-1.2.12.tar.gz \
+ https://github.com/processone/xmpp/archive/1.8.1/xmpp-1.8.1.tar.gz \
+ https://github.com/processone/yconf/archive/1.0.15/yconf-1.0.15.tar.gz \
https://github.com/benoitc/unicode_util_compat/archive/0.4.1/unicode_util_compat-0.4.1.tar.gz"
-MD5SUM="d07080e2dbd540a649ae555fcb97fe05 \
+MD5SUM="1b8b91a2b0af65685c185766dc8cf667 \
4d515ed34e4e8966bb7400ce51de83b2 \
b8fd0788b9108c1dcea49fb3ba86eb77 \
505deb9dfe6324a6bc8e130908df105d \
- a6c357cd991609b73132883f88fac04a \
- 55923c6db17e5e799b600ba581865e7f \
- 48028404dabbfc2ea26cedc2484386a8 \
+ 88be9e7fec2aaa5ca8230c19db661263 \
239232590c82b1b7d78247079a1f17aa \
- 838e19b90c8ba181f90da9b27f127d1a \
+ 3bda6c2e154462c640e9fa99fe704cd8 \
5fd5273a71ad80b3397212dc4a9dccd3 \
- 4f01ae8211c09e3cad6b2ec8b798aa6f \
- 605997a85ff66db85b5657e67714db3c \
- 4ef37539360cee3b88cd25d3674fdaa7 \
+ 62a46c10c57ecdc8a60783ea62edc1d0 \
+ 2a7b886287b1034f0a3d07b9f15d5d59 \
+ cbb767ad4f8678d91120a34402957661 \
1975930f1ab7d90ca14f914a8f7dacd6 \
5ab471571ac2b39c02a90350cecb04e3 \
- 169a0d3375cd58de88bf6577ef7448de \
- 05b29840a87cc8a68e1332305c68702f \
- e8a02c04daf5099df97f9ba92dea5188 \
- bd54109e32cb37cf22634aecdc732446 \
- a74b5ee76d8bdffae71a986d40763f98 \
- b6f0cdb01185ad4bcfbdd0effff0e3cf \
- f183c52c0d52f4f42cb6891ff3381189 \
+ 2576e3fa9da67054de9bf67972d64bbe \
+ e038b92f2c79bad70f5fb7c821d9f121 \
+ f0f50e4ea6bca2abd455596209930689 \
+ af192ea9a715e40db4a395341e237a0b \
+ a6fff6901ff93b9687cf481934d99775 \
+ a227318ad3f7665a45a2c284d203f259 \
+ 3f45f0e02e532308a51e1927c7c51888 \
90f134a42486419966e4d64d8bdaa105 \
db9a2e5cb2db46f0ed48b06efbcfa4c5 \
- 74cefd398679915411076df92449b47e \
- 006f99732c11fdeb92ae90058e34dbb5 \
- 69634d72941132138e5e8827fdc85038 \
- 4509516809c5ba667d839e0700f349f1 \
- 6d65de07440a8d8fa23f2f985b5c8636 \
- adc7221fdd1ebe4c01f7e7cf9a9fce05 \
+ d23c63956f6d3da25f5a75f4a70a94fd \
+ 4d5dff0200768e298b166667272f5f92 \
+ 80d445f62e246c55515fc6b77692c5a0 \
+ 2b64f5b3d22c3a493cacdba805bde06d \
+ 6f50a504c0fa81f9a5a1f63f16ff5272 \
1742d5522f1329229beb3e033a96898d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="erlang-otp"
+REQUIRES="erlang-otp rebar"
MAINTAINER="Alexander Verbovetsky"
EMAIL="alik@ejik.org"
diff --git a/network/ejabberd/rc.ejabberd b/network/ejabberd/rc.ejabberd
index 9ff1a8a331..b231820a51 100644
--- a/network/ejabberd/rc.ejabberd
+++ b/network/ejabberd/rc.ejabberd
@@ -10,13 +10,14 @@ start_ejabberd() {
}
stop_ejabberd() {
- echo "Stoppping ejabberd... "
+ echo "Stopping ejabberd... "
$bin stop
$bin stopped
}
restart_ejabberd() {
stop_ejabberd
+ sleep 1
start_ejabberd
}
@@ -24,15 +25,33 @@ status_ejabberd() {
$bin status
}
+force-stop_ejabberd() {
+ echo "Killing ejabberd... "
+ port=$(/usr/bin/epmd -names | awk -v name=ejabberd '$2==name {print $5}')
+ if [ -z "$port" ]; then
+ echo "ejabberd not found"
+ else
+ kill $(lsof -i TCP:$port -s TCP:LISTEN | tail -n +2 | awk '{print $2}')
+ fi
+}
+
+reload-config_ejabberd() {
+ $bin reload_config
+}
+
case "$1" in
-start)
- start_ejabberd ;;
-stop)
- stop_ejabberd ;;
-restart|reload)
- restart_ejabberd ;;
-status)
- status_ejabberd ;;
-*)
- echo "usage $0 start|stop|restart|status"
+ start)
+ start_ejabberd ;;
+ stop)
+ stop_ejabberd ;;
+ restart|reload)
+ restart_ejabberd ;;
+ status)
+ status_ejabberd ;;
+ force-stop)
+ force-stop_ejabberd ;;
+ reload-config)
+ reload-config_ejabberd ;;
+ *)
+ echo "usage $0 start|stop|restart|status|force-stop|reload-config" ;;
esac