Compare commits

..

No commits in common. "main" and "initial" have entirely different histories.

7 changed files with 94 additions and 12847 deletions

View File

@ -1,61 +1,33 @@
PORTNAME= mirotalk PORTNAME= mirotalk
DISTVERSION= 1.5.20 DISTVERSION= 1.5.20
CATEGORIES= www CATEGORIES= net-p2p
MASTER_SITES= https://git.michaelsmith.be/m/mirotalk-port/releases/download/initial/:node_modules
DISTFILES= mirotalk-node-modules-${DISTVERSION}${EXTRACT_SUFX}:node_modules
DIST_SUBDIR= ${PORTNAME}
MAINTAINER= shmitty@protonmail.com MAINTAINER= m@hacktheplanet.be
COMMENT= Simple, secure, fast and real time video conference web application COMMENT= Simple, Secure, Fast Real-Time Video Conferences web application
WWW= https://github.com/miroslavpejic85/mirotalk WWW= https://github.com/miroslavpejic85/mirotalk
LICENSE= AGPLv3 LICENSE= AGPLv3
ONLY_FOR_ARCHS= amd64
EXTRACT_DEPENDS= node${NODEJS_VERSION}>0:www/node${NODEJS_VERSION} \ EXTRACT_DEPENDS= node${NODEJS_VERSION}>0:www/node${NODEJS_VERSION} \
npm${NODEJS_SUFFIX}>0:www/npm${NODEJS_SUFFIX} npm${NODEJS_SUFFIX}>0:www/npm${NODEJS_SUFFIX}
USES= nodejs:22 USES= nodejs:22
NO_BUILD= yes USE_GITHUB= yes
GH_ACCOUNT= miroslavpejic85
GH_PROJECT= ${PORTNAME}
GH_TAGNAME= 5985501768fb9de93bbb94233b8de2d9e13f4f2f
USE_RC_SUBR= ${PORTNAME}
SUB_FILES= mirotalk pkg-deinstall pkg-message do-build:
SUB_LIST= MIROTALK_GROUP=${MIROTALK_GROUP} \
MIROTALK_HOME=${MIROTALK_HOME} \
MIROTALK_USER=${MIROTALK_USER}
USERS= ${MIROTALK_USER}
GROUPS= ${MIROTALK_GROUP}
USE_GITHUB= yes
GH_ACCOUNT= miroslavpejic85
GH_PROJECT= ${PORTNAME}
GH_TAGNAME= 5985501768fb9de93bbb94233b8de2d9e13f4f2f
USE_RC_SUBR= ${PORTNAME}
MIROTALK_GROUP?= mirotalk
MIROTALK_USER?= mirotalk
MIROTALK_HOME?= ${PREFIX}/mirotalk
PLIST_SUB+= MIROTALK_GROUP=${MIROTALK_GROUP} \
MIROTALK_HOME=${MIROTALK_HOME} \
MIROTALK_USER=${MIROTALK_USER}
post-extract:
@${ECHO_MSG} "===> Installing node modules in ${WRKSRC}"
@${TAR} -xzf ${DISTDIR}/${DIST_SUBDIR}/mirotalk-node-modules-${DISTVERSION}${EXTRACT_SUFX} -C ${WRKSRC}
do-install: do-install:
${MKDIR} ${STAGEDIR}${MIROTALK_HOME}
cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${MIROTALK_HOME}
### targets for port maintainer(s) ### targets for port maintainer(s)
make-node-modules-archive: extract make-node-modules-archive: extract
@${ECHO_MSG} "===> Fetching and installing node modules in ${WRKSRC}" @${ECHO_MSG} "===> Fetching and installing node modules in ${WRKSRC}"
@cd ${WRKSRC} && \ @cd ${WRKSRC} && \
${SETENV} ${MAKE_ENV} npm install --ignore-scripts --no-progress --no-audit --no-fund && \ ${SETENV} ${MAKE_ENV} npm install --ignore-scripts --no-progress --no-audit --no-fund && \
${SETENV} ${MAKE_ENV} npm install @ngrok/ngrok-freebsd-x64 --ignore-scripts --no-progress --no-audit --no-fund && \
${TAR} -czf ${WRKDIR}/mirotalk-node-modules${EXTRACT_SUFX} node_modules ${TAR} -czf ${WRKDIR}/mirotalk-node-modules${EXTRACT_SUFX} node_modules
.include <bsd.port.mk> .include <bsd.port.mk>

View File

@ -1,5 +1,3 @@
TIMESTAMP = 1751393141 TIMESTAMP = 1751371506
SHA256 (mirotalk/mirotalk-node-modules-1.5.20.tar.gz) = 5427cf9bf7de000b02dd6d92ffb308777994d1798b5ca4fd91ec9d896c5bdf19 SHA256 (miroslavpejic85-mirotalk-1.5.20-5985501768fb9de93bbb94233b8de2d9e13f4f2f_GH0.tar.gz) = 702b2ccff6aebfdc0b21b6f4e206a7a96aad88d67fd9e503036d400a97dd9138
SIZE (mirotalk/mirotalk-node-modules-1.5.20.tar.gz) = 28956600 SIZE (miroslavpejic85-mirotalk-1.5.20-5985501768fb9de93bbb94233b8de2d9e13f4f2f_GH0.tar.gz) = 20813434
SHA256 (mirotalk/miroslavpejic85-mirotalk-1.5.20-5985501768fb9de93bbb94233b8de2d9e13f4f2f_GH0.tar.gz) = 702b2ccff6aebfdc0b21b6f4e206a7a96aad88d67fd9e503036d400a97dd9138
SIZE (mirotalk/miroslavpejic85-mirotalk-1.5.20-5985501768fb9de93bbb94233b8de2d9e13f4f2f_GH0.tar.gz) = 20813434

View File

@ -1,61 +1,77 @@
#!/bin/sh #!/bin/sh
# PROVIDE: mirotalk # PROVIDE: mirotalk
# REQUIRE: DAEMON # REQUIRE: LOGIN network
# KEYWORD: shutdown # KEYWORD: shutdown
# FreeBSD rc.d script for mirotalk
# #
# extraargs typically can remain unset
# The mirotalk service has the following rc.conf options: # extraargs accepts as string any of:
# --nowebclient Indicates that the web server should not host the web client.
# -w, --webdir Path to the Mirotalk web UI resources. Defaults to ./mirotalk-web
# -c, --configdir Path to use for configuration data (user settings and pictures).
# -l, --logdir Path to use for writing log files. Defaults to $datadir/log
# --ffmpeg Path to external FFmpeg executable to use. Defaults to PATH.
# --published-server-url Mirotalk Server URL to publish via auto discover process
# #
# mirotalk_enable (bool): Set to YES to enable mirotalk #
# Default: NO # variable definitions
# mirotalk_user (str): The user to run mirotalk as # mirotalk_exec_dir Path to the actual mirotalk binary Defaults to %%DATADIR%%
# Default: mirotalk # mirotalk_data_dir Path to use for the data folder (database files, etc.) Defaults to /var/db/mirotalk
# mirotalk_group (str): The group to run mirotalk as # mirotalk_cache_dir Path to use for caching. Defaults to /var/cache/mirotalk
# Default: mirotalk # mirotalk_pid_dir Path to use for the pid file. Defaults to /var/run/mirotalk
# mirotalk_chdir (str): The directory where mirotalk is installed
# Default: %%PREFIX%%/mirotalk
# mirotalk_datadir (str): The directory where mirotalk's data is stored
# Default: /var/db/mirotalk
# mirotalk_restart (bool): Set to YES if mirotalk should be automatically
# restarted after it crashes.
# Default: NO
. /etc/rc.subr . /etc/rc.subr
name=mirotalk name=mirotalk
desc="mirotalk service"
rcvar=mirotalk_enable rcvar=mirotalk_enable
load_rc_config $name load_rc_config $name
: ${mirotalk_enable:=NO} : ${mirotalk_enable:=NO}
: ${mirotalk_group:=%%MIROTALK_GROUP%%} : ${mirotalk_user:="mirotalk"}
: ${mirotalk_datadir:=%%MIROTALK_DATADIR%%} : ${mirotalk_group:="mirotalk"}
: ${mirotalk_pidfile=/var/run/mirotalk/mirotalk.pid} : ${mirotalk_extraargs:=""}
: ${mirotalk_restart=NO} : ${mirotalk_exec_dir:="%%DATADIR%%"}
: ${mirotalk_user:=%%MIROTALK_USER%%} : ${mirotalk_data_dir:="/var/db/mirotalk"}
: ${mirotalk_chdir=%%MIROTALK_HOME%%} : ${mirotalk_cache_dir:="/var/cache/mirotalk"}
: ${mirotalk_pid_dir:="/var/run/mirotalk"}
# If mirotalk_restart is YES, then restart mirotalk when it crashes, otherwise pidfile="${mirotalk_pid_dir}/${name}_daemon.pid"
# daemon(8) will exit. pidfile_child="${mirotalk_pid_dir}/${name}_child.pid"
if checkyesno mirotalk_restart; then command="/usr/sbin/daemon"
_restartargs="-r"
else
_restartargs=""
fi
pidfile=${mirotalk_pidfile}
command=/usr/sbin/daemon start_precmd=${name}_precmd
command_args="-f -H \ mirotalk_precmd() {
-P ${pidfile} -t ${name} -T ${name} \ export PATH="/sbin:/bin:/usr/sbin:/usr/bin:%%LOCALBASE%%/sbin:%%LOCALBASE%%/bin"
${_restartargs} \
%%LOCALBASE%%/bin/node app/src/server.js"
required_files="${mirotalk_chdir}/app/src/config.js"
start_precmd="[ -d ${pidfile%/*} ] || install -d -o ${mirotalk_user} -g ${mirotalk_group} ${pidfile%/*}" if [ ! -d ${mirotalk_exec_dir} ]; then
install -d -o ${mirotalk_user} -g ${mirotalk_group} ${mirotalk_exec_dir}
fi
if [ ! -d ${mirotalk_data_dir} ]; then
install -d -o ${mirotalk_user} -g ${mirotalk_group} ${mirotalk_data_dir}
fi
if [ ! -d ${mirotalk_cache_dir} ]; then
install -d -o ${mirotalk_user} -g ${mirotalk_group} ${mirotalk_cache_dir}
fi
if [ ! -d ${mirotalk_pid_dir} ]; then
install -d -o ${mirotalk_user} -g ${mirotalk_group} ${mirotalk_pid_dir}
fi
# .NET 6+ use dual mode sockets to avoid the separate AF handling.
# disable .NET use of V6 if no ipv6 is configured.
# See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=259194#c17
ifconfig -a -u -G lo | grep -q inet6
if [ $? == 1 ]; then
export DOTNET_SYSTEM_NET_DISABLEIPV6=1
fi
if [ `uname -K` -ge 1400092 ]; then
export CLR_OPENSSL_VERSION_OVERRIDE=30
fi
rc_flags="-r -f -p ${pidfile_child} -P ${pidfile} ${mirotalk_exec_dir}/mirotalk --datadir ${mirotalk_data_dir} --cachedir ${mirotalk_cache_dir} ${mirotalk_extraargs} >> /dev/null 2>&1 ${rc_flags}"
}
run_rc_command "$1" run_rc_command "$1"

View File

@ -1,9 +1,20 @@
#!/bin/sh #!/bin/sh
DIR=%%MIROTALK_HOME%% case "$2" in
POST-DEINSTALL)
if [ -d %%WWWDIR%%/optimize ]; then
/usr/bin/find %%WWWDIR%%/optimize/ -delete
fi
if [ "$2" = "POST-DEINSTALL" ]; then cat <<EOMSG
if [ -e ${DIR} ]; then
echo "==> You should check and manually remove the \"${DIR}\" directory." If %%PORTNAME%%%%PKGNAMESUFFIX%% is being deleted permanently, and you do not wish to keep any
fi data that was in the cluster, then you may wish to delete the
fi %%WWWDIR%% directory. This can be done by with the command:
# rm -rf %%WWWDIR%%
Please ignore this if %%PORTNAME%%%%PKGNAMESUFFIX%% is being upgraded
EOMSG
;;
esac

View File

@ -1,10 +0,0 @@
[
{ type: install
message: <<EOM
MiroTalk has been installed.
Configure MiroTalk by copying %%MIROTALK_HOME%%/app/src/config.template.js
to %%MIROTALK_HOME%%/app/src/config.js and make changes if necessary.
EOM
}
]

View File

@ -1,3 +1 @@
MiroTalk is a web application that enables simple, secure, fast and real time WebRTC - P2P - Simple, Secure, Fast Real-Time Video Conferences Up to 8k and 60fps, compatible with all browsers and platforms.
video calls, chat and screen sharing. It runs in the browser, on mobile or
desktop.

12738
pkg-plist

File diff suppressed because it is too large Load Diff