www/galene: new port
Galène (or Galene) is a videoconference server (an “SFU”) that is easy to deploy and that requires moderate server resources. It was originally designed for lectures, conferences and student tutorials, but is also useful for traditional meetings. Galène has been used in production at two major universities (Université de Paris and Sorbonne Université) for lectures, practicals, seminars, and for staff meetings. It has been used to host two conferences (SOCS'2020 and JFLA'2021).
This commit is contained in:
parent
afb5db2a49
commit
509067a758
8 changed files with 216 additions and 1 deletions
2
GIDs
2
GIDs
|
@ -268,7 +268,7 @@ dkimpy-milter:*:324:
|
|||
dkfilter:*:325:
|
||||
smfs:*:326:
|
||||
_reticulum:*:327:
|
||||
# free: 328
|
||||
galene:*:328:
|
||||
# free: 329
|
||||
orthanc:*:330:
|
||||
# free: 331
|
||||
|
|
1
UIDs
1
UIDs
|
@ -273,6 +273,7 @@ dkimpy-milter:*:324:324::0:0:Dkimpy Milter:/nonexistent:/usr/sbin/nologin
|
|||
dkfilter:*:325:325::0:0:DK Filter Owner:/nonexistent:/usr/sbin/nologin
|
||||
smfs:*:326:326::0:0:SMFSAV Owner:/nonexistent:/usr/sbin/nologin
|
||||
_reticulum:*:327:327::0:0:Reticulum Daemon:/nonexistent:/usr/sbin/nologin
|
||||
galene:*:328:328::0:0:Galene Visioconference server:/nonexistent:/usr/sbin/nologin
|
||||
# free: 328
|
||||
# free: 329
|
||||
orthanc:*:330:330::0:0:Orthanc Daemon:/nonexistent:/usr/sbin/nologin
|
||||
|
|
|
@ -183,6 +183,7 @@
|
|||
SUBDIR += fusionpbx
|
||||
SUBDIR += g-cows
|
||||
SUBDIR += g-gcl
|
||||
SUBDIR += galene
|
||||
SUBDIR += gallery-dl
|
||||
SUBDIR += gallery2
|
||||
SUBDIR += garage
|
||||
|
|
71
www/galene/Makefile
Normal file
71
www/galene/Makefile
Normal file
|
@ -0,0 +1,71 @@
|
|||
PORTNAME= galene
|
||||
DISTVERSION= 0.7.2
|
||||
CATEGORIES= www net-im
|
||||
|
||||
MAINTAINER= bapt@FreeBSD.org
|
||||
COMMENT= The Galène videoconference server
|
||||
WWW= https://galane.org
|
||||
|
||||
LICENSE= MIT
|
||||
LICENSE_FILE= ${WRKSRC}/LICENCE
|
||||
|
||||
USES= go:modules
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= jech
|
||||
GH_TAGNAME= 7062ba100167d82808d982475880a588f0aa32bf
|
||||
|
||||
GH_TUPLE= \
|
||||
at-wat:ebml-go:v0.17.0:at_wat_ebml_go/vendor/github.com/at-wat/ebml-go \
|
||||
golang-jwt:jwt:v4.5.0:golang_jwt_jwt_v4/vendor/github.com/golang-jwt/jwt/v4 \
|
||||
golang:crypto:v0.7.0:golang_crypto/vendor/golang.org/x/crypto \
|
||||
golang:net:v0.8.0:golang_net/vendor/golang.org/x/net \
|
||||
golang:sys:v0.6.0:golang_sys/vendor/golang.org/x/sys \
|
||||
google:uuid:v1.3.0:google_uuid/vendor/github.com/google/uuid \
|
||||
gorilla:websocket:v1.5.0:gorilla_websocket/vendor/github.com/gorilla/websocket \
|
||||
jech:cert:aca735647728:jech_cert/vendor/github.com/jech/cert \
|
||||
jech:samplebuilder:6cbba09fc1c9:jech_samplebuilder/vendor/github.com/jech/samplebuilder \
|
||||
pion:datachannel:v1.5.5:pion_datachannel/vendor/github.com/pion/datachannel \
|
||||
pion:dtls:v2.2.6:pion_dtls_v2/vendor/github.com/pion/dtls/v2 \
|
||||
pion:ice:v2.3.2:pion_ice_v2/vendor/github.com/pion/ice/v2 \
|
||||
pion:interceptor:v0.1.12:pion_interceptor/vendor/github.com/pion/interceptor \
|
||||
pion:logging:v0.2.2:pion_logging/vendor/github.com/pion/logging \
|
||||
pion:mdns:v0.0.7:pion_mdns/vendor/github.com/pion/mdns \
|
||||
pion:randutil:v0.1.0:pion_randutil/vendor/github.com/pion/randutil \
|
||||
pion:rtcp:v1.2.10:pion_rtcp/vendor/github.com/pion/rtcp \
|
||||
pion:rtp:d62c6716b99a:pion_rtp/vendor/github.com/pion/rtp \
|
||||
pion:sctp:v1.8.6:pion_sctp/vendor/github.com/pion/sctp \
|
||||
pion:sdp:v3.0.6:pion_sdp_v3/vendor/github.com/pion/sdp/v3 \
|
||||
pion:srtp:v2.0.12:pion_srtp_v2/vendor/github.com/pion/srtp/v2 \
|
||||
pion:stun:v0.4.0:pion_stun/vendor/github.com/pion/stun \
|
||||
pion:transport:v2.0.2:pion_transport_v2/vendor/github.com/pion/transport/v2 \
|
||||
pion:turn:v2.1.0:pion_turn_v2/vendor/github.com/pion/turn/v2 \
|
||||
pion:udp:v2.0.1:pion_udp_v2/vendor/github.com/pion/udp/v2 \
|
||||
pion:webrtc:v3.1.59:pion_webrtc_v3/vendor/github.com/pion/webrtc/v3
|
||||
|
||||
CGO_ENABLED= 0
|
||||
|
||||
PORTDOCS= README README.FRONTEND README.PROTOCOL
|
||||
|
||||
OPTIONS_DEFINE= DOCS
|
||||
|
||||
USE_RC_SUBR= ${PORTNAME}
|
||||
|
||||
USERS= ${PORTNAME}
|
||||
GROUPS= ${PORTNAME}
|
||||
|
||||
SUB_LIST= USERS="${USERS}" GROUPS="${GROUPS}"
|
||||
PLIST_SUB= USERS="${USERS}" GROUPS="${GROUPS}"
|
||||
|
||||
post-install:
|
||||
${MKDIR} ${STAGEDIR}${DATADIR}
|
||||
cd ${WRKSRC}/static ; ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}
|
||||
${MKDIR} ${STAGEDIR}/var/db/galene/recordings \
|
||||
${STAGEDIR}/var/db/galene/data \
|
||||
${STAGEDIR}/var/db/galene/groups
|
||||
|
||||
post-install-DOCS-on:
|
||||
${MKDIR} ${STAGEDIR}${DOCSDIR}
|
||||
cd ${WRKSRC}; ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
|
||||
|
||||
.include <bsd.port.mk>
|
55
www/galene/distinfo
Normal file
55
www/galene/distinfo
Normal file
|
@ -0,0 +1,55 @@
|
|||
TIMESTAMP = 1693557388
|
||||
SHA256 (jech-galene-0.7.2-7062ba100167d82808d982475880a588f0aa32bf_GH0.tar.gz) = f5f4253c3b50c019790363651d8a8ae338703342a0015b8a62cc793b2ce1cfc1
|
||||
SIZE (jech-galene-0.7.2-7062ba100167d82808d982475880a588f0aa32bf_GH0.tar.gz) = 739187
|
||||
SHA256 (at-wat-ebml-go-v0.17.0_GH0.tar.gz) = ebdaa605a117ba86e45a405103435d164d40079dff6f0c3f28d08f4e76ad6c0f
|
||||
SIZE (at-wat-ebml-go-v0.17.0_GH0.tar.gz) = 69862
|
||||
SHA256 (golang-jwt-jwt-v4.5.0_GH0.tar.gz) = 00b1cc127cba09b4e4ea9efa5c0f18a36bb55e08b5eec0a222b8e1599a938077
|
||||
SIZE (golang-jwt-jwt-v4.5.0_GH0.tar.gz) = 53049
|
||||
SHA256 (golang-crypto-v0.7.0_GH0.tar.gz) = a7e73081a33f1bf496753a0cfd374052fb52da16d00600ca411d086a23da6178
|
||||
SIZE (golang-crypto-v0.7.0_GH0.tar.gz) = 1634438
|
||||
SHA256 (golang-net-v0.8.0_GH0.tar.gz) = f9e2128a2d6861db0595428c7cce62fe5a131348a6c7651b6efa8b03d0b10831
|
||||
SIZE (golang-net-v0.8.0_GH0.tar.gz) = 1244302
|
||||
SHA256 (golang-sys-v0.6.0_GH0.tar.gz) = b4f6d17c7a128f76169964b437cb66b3f2dbf9a33361928ec19dfecf7b03fc54
|
||||
SIZE (golang-sys-v0.6.0_GH0.tar.gz) = 1434234
|
||||
SHA256 (google-uuid-v1.3.0_GH0.tar.gz) = 7f7f37c47980e0afcc178a9ffc390bec29ed2371919b4c07658eb01791a7f921
|
||||
SIZE (google-uuid-v1.3.0_GH0.tar.gz) = 16210
|
||||
SHA256 (gorilla-websocket-v1.5.0_GH0.tar.gz) = 5d86f9e1c76ff7ceca0747f78b79864fbaec9d440f4fdb03197466e5102a86b0
|
||||
SIZE (gorilla-websocket-v1.5.0_GH0.tar.gz) = 54155
|
||||
SHA256 (jech-cert-aca735647728_GH0.tar.gz) = d2b7c711a7925012643cce6c9ee5cc34e667f54eb478d6163601e4ef46d2232e
|
||||
SIZE (jech-cert-aca735647728_GH0.tar.gz) = 3363
|
||||
SHA256 (jech-samplebuilder-6cbba09fc1c9_GH0.tar.gz) = 08082afa77f3083c0b15ed09fe27d43c525bc31af3662e13288dd167a609c2ad
|
||||
SIZE (jech-samplebuilder-6cbba09fc1c9_GH0.tar.gz) = 12428
|
||||
SHA256 (pion-datachannel-v1.5.5_GH0.tar.gz) = 88dc92b8b83759af29bf744e1a3d708a462966cfa77d9978575a7d6cd96c4766
|
||||
SIZE (pion-datachannel-v1.5.5_GH0.tar.gz) = 22496
|
||||
SHA256 (pion-dtls-v2.2.6_GH0.tar.gz) = e3fe7be7532e2086d3eb04fefdcf525b25319e4f786b9b9c89f0ac961b59f50b
|
||||
SIZE (pion-dtls-v2.2.6_GH0.tar.gz) = 146508
|
||||
SHA256 (pion-ice-v2.3.2_GH0.tar.gz) = cf704234d5fab9a17490f6bfbe99d8fc3f8d632b203e6f3026717b93b0a57008
|
||||
SIZE (pion-ice-v2.3.2_GH0.tar.gz) = 96435
|
||||
SHA256 (pion-interceptor-v0.1.12_GH0.tar.gz) = 206226d1b5aea5e23393e2f19d48f670cac2bead09d6f82f8dc36efac25f23ae
|
||||
SIZE (pion-interceptor-v0.1.12_GH0.tar.gz) = 75746
|
||||
SHA256 (pion-logging-v0.2.2_GH0.tar.gz) = 9e06f3dbf6f4fcf0e61e3a6406cac898fe3df86cb906bc9d73c7c4b466f0a9d6
|
||||
SIZE (pion-logging-v0.2.2_GH0.tar.gz) = 6750
|
||||
SHA256 (pion-mdns-v0.0.7_GH0.tar.gz) = 4be439d7572fab99bf9905c93ad75afc0aa13cefe815b0a19f1ed8e2ffdc637b
|
||||
SIZE (pion-mdns-v0.0.7_GH0.tar.gz) = 13639
|
||||
SHA256 (pion-randutil-v0.1.0_GH0.tar.gz) = 4b0301915ebbfa77c8621cebf99c6c7d71651762a33ce4fa4e6af8994ecd4993
|
||||
SIZE (pion-randutil-v0.1.0_GH0.tar.gz) = 7521
|
||||
SHA256 (pion-rtcp-v1.2.10_GH0.tar.gz) = d69a2497f27e91cc3918fb6f41a19850a1d1e1d1d8f72fbafedfb83c1186fe8c
|
||||
SIZE (pion-rtcp-v1.2.10_GH0.tar.gz) = 59883
|
||||
SHA256 (pion-rtp-d62c6716b99a_GH0.tar.gz) = 6d2682e380ea10e63a431f01b9cd2e4356583592c8487a25841146876abe4a6b
|
||||
SIZE (pion-rtp-d62c6716b99a_GH0.tar.gz) = 54706
|
||||
SHA256 (pion-sctp-v1.8.6_GH0.tar.gz) = 3752b18cf0cd37c0c4a12aaae01e4c10ea23dc517b8c6ac04c3341b2d5423be6
|
||||
SIZE (pion-sctp-v1.8.6_GH0.tar.gz) = 90151
|
||||
SHA256 (pion-sdp-v3.0.6_GH0.tar.gz) = ceae9d450b92db03c2dd817213fa39f8bf152e172d51129decfd1a4cd77e42dc
|
||||
SIZE (pion-sdp-v3.0.6_GH0.tar.gz) = 30415
|
||||
SHA256 (pion-srtp-v2.0.12_GH0.tar.gz) = cfe346e7ffe3762d2c8d4568d7151dca1dd426956f822b2982100c98a3daca6b
|
||||
SIZE (pion-srtp-v2.0.12_GH0.tar.gz) = 36642
|
||||
SHA256 (pion-stun-v0.4.0_GH0.tar.gz) = e068ceacd5f36302329e7d1de00dd1a071bcb39cb5944468e4c6d8ae5665a34f
|
||||
SIZE (pion-stun-v0.4.0_GH0.tar.gz) = 87340
|
||||
SHA256 (pion-transport-v2.0.2_GH0.tar.gz) = 9fccc0bdd6fedf5c272d9884acd39a37ae25e730db407d6febd2e5b1e356bef5
|
||||
SIZE (pion-transport-v2.0.2_GH0.tar.gz) = 75604
|
||||
SHA256 (pion-turn-v2.1.0_GH0.tar.gz) = 4440f9b2c82bbce9cee10527859121247e6ab50d0a2c6bc607bab7ff71c675a2
|
||||
SIZE (pion-turn-v2.1.0_GH0.tar.gz) = 121876
|
||||
SHA256 (pion-udp-v2.0.1_GH0.tar.gz) = 30bd91e7588f2ce525bb972710c239dd504ca001a5dbb3a17c191e8b541224af
|
||||
SIZE (pion-udp-v2.0.1_GH0.tar.gz) = 14931
|
||||
SHA256 (pion-webrtc-v3.1.59_GH0.tar.gz) = b6357b369fec9273b9a69eb7ea5ac53aadaa6fc141a17084e6e5988b8aa3e4b4
|
||||
SIZE (pion-webrtc-v3.1.59_GH0.tar.gz) = 359387
|
37
www/galene/files/galene.in
Normal file
37
www/galene/files/galene.in
Normal file
|
@ -0,0 +1,37 @@
|
|||
#!/bin/sh
|
||||
|
||||
# PROVIDE: galene
|
||||
# REQUIRE: LOGIN
|
||||
# KEYWORD: shutdown
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name=galene
|
||||
rcvar=${name}_enable
|
||||
desc="Visioconference server"
|
||||
|
||||
load_rc_config "${name}"
|
||||
|
||||
: ${galene_enable:="NO"}
|
||||
: ${galene_user:="%%USERS%%"}
|
||||
: ${galene_group:="%%GROUPS%%"}
|
||||
: ${galene_static:="%%DATADIR%%"}
|
||||
: ${galene_http:=":8443"}
|
||||
: ${galene_data:="/var/db/galene/data"}
|
||||
: ${galene_groups:="/var/db/galene/groups"}
|
||||
: ${galene_recordings:="/var/db/galene/recordings"}
|
||||
|
||||
pidfile=/var/run/galene.pid
|
||||
procname="%%PREFIX%%/bin/galene"
|
||||
command="/usr/sbin/daemon"
|
||||
command_args="-cf -p ${pidfile} ${procname} -static ${galene_static} -http ${galene_http} -data ${galene_data} -groups ${galene_groups} -recordings ${galene_recordings} ${galene_args}"
|
||||
|
||||
galene_startprecmd()
|
||||
{
|
||||
if [ ! -e ${pidfile} ]; then
|
||||
install -o ${galene_user} -g ${galene_group} /dev/null ${pidfile};
|
||||
fi
|
||||
}
|
||||
|
||||
start_precmd=galene_startprecmd
|
||||
run_rc_command "$1"
|
9
www/galene/pkg-descr
Normal file
9
www/galene/pkg-descr
Normal file
|
@ -0,0 +1,9 @@
|
|||
Galène (or Galene) is a videoconference server (an “SFU”) that is easy to
|
||||
deploy and that requires moderate server resources. It was originally designed
|
||||
for lectures, conferences and student tutorials, but is also useful for
|
||||
traditional meetings.
|
||||
|
||||
Galène has been used in production at two major universities (Université de
|
||||
Paris and Sorbonne Université) for lectures, practicals, seminars, and for
|
||||
staff meetings. It has been used to host two conferences (SOCS'2020 and
|
||||
JFLA'2021).
|
41
www/galene/pkg-plist
Normal file
41
www/galene/pkg-plist
Normal file
|
@ -0,0 +1,41 @@
|
|||
bin/galene
|
||||
%%DATADIR%%/404.css
|
||||
%%DATADIR%%/404.html
|
||||
%%DATADIR%%/common.css
|
||||
%%DATADIR%%/external/contextual/LICENSE
|
||||
%%DATADIR%%/external/contextual/contextual.css
|
||||
%%DATADIR%%/external/contextual/contextual.js
|
||||
%%DATADIR%%/external/fontawesome/css/all.min.css
|
||||
%%DATADIR%%/external/fontawesome/css/brands.min.css
|
||||
%%DATADIR%%/external/fontawesome/css/fontawesome.min.css
|
||||
%%DATADIR%%/external/fontawesome/css/regular.min.css
|
||||
%%DATADIR%%/external/fontawesome/css/solid.min.css
|
||||
%%DATADIR%%/external/fontawesome/css/svg-with-js.min.css
|
||||
%%DATADIR%%/external/fontawesome/css/v4-font-face.min.css
|
||||
%%DATADIR%%/external/fontawesome/css/v4-shims.min.css
|
||||
%%DATADIR%%/external/fontawesome/css/v5-font-face.min.css
|
||||
%%DATADIR%%/external/fontawesome/webfonts/fa-brands-400.ttf
|
||||
%%DATADIR%%/external/fontawesome/webfonts/fa-brands-400.woff2
|
||||
%%DATADIR%%/external/fontawesome/webfonts/fa-regular-400.ttf
|
||||
%%DATADIR%%/external/fontawesome/webfonts/fa-regular-400.woff2
|
||||
%%DATADIR%%/external/fontawesome/webfonts/fa-solid-900.ttf
|
||||
%%DATADIR%%/external/fontawesome/webfonts/fa-solid-900.woff2
|
||||
%%DATADIR%%/external/fontawesome/webfonts/fa-v4compatibility.ttf
|
||||
%%DATADIR%%/external/fontawesome/webfonts/fa-v4compatibility.woff2
|
||||
%%DATADIR%%/external/toastify/LICENSE
|
||||
%%DATADIR%%/external/toastify/toastify.css
|
||||
%%DATADIR%%/external/toastify/toastify.js
|
||||
%%DATADIR%%/galene.css
|
||||
%%DATADIR%%/galene.html
|
||||
%%DATADIR%%/galene.js
|
||||
%%DATADIR%%/index.html
|
||||
%%DATADIR%%/mainpage.css
|
||||
%%DATADIR%%/mainpage.js
|
||||
%%DATADIR%%/protocol.js
|
||||
%%DATADIR%%/stats.html
|
||||
%%DATADIR%%/stats.js
|
||||
%%DATADIR%%/tsconfig.json
|
||||
@dir(%%USERS%%,%%GROUPS%%,) /var/db/galene/data
|
||||
@dir(%%USERS%%,%%GROUPS%%,) /var/db/galene/groups
|
||||
@dir(%%USERS%%,%%GROUPS%%,) /var/db/galene/recordings
|
||||
@dir /var/db/galene
|
Loading…
Reference in a new issue