Skip to content

Commit df2b4ac

Browse files
committed
reorganization
1 parent 0ef6855 commit df2b4ac

File tree

1 file changed

+28
-45
lines changed

1 file changed

+28
-45
lines changed

bbb-install.sh

Lines changed: 28 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -278,54 +278,43 @@ main() {
278278
check_cpus
279279
check_ipv6
280280

281-
need_pkg wget curl gpg-agent dirmngr apparmor-utils
281+
282+
if [ "$DISTRO" != "noble" ]; then
283+
err "This version of BigBlueButton requires Ubuntu 24.04"
284+
exit 0
285+
fi
282286

283287
# need_pkg xmlstarlet
284288
get_IP "$HOST"
285289

286-
if [ "$DISTRO" == "noble" ]; then
287-
need_pkg ca-certificates
288-
289-
need_pkg yq
290-
yq --version
291290

292-
#need_ppa libreoffice-ubuntu-ppa-noble.list ppa:libreoffice/ppa 1378B444 # Latest version of libreoffice
291+
need_pkg wget curl gpg-agent dirmngr apparmor-utils ca-certificates yq ruby apt-transport-https haveged openjdk-17-jre dnsutils
292+
#need_ppa libreoffice-ubuntu-ppa-noble.list ppa:libreoffice/ppa 1378B444 # Latest version of libreoffice
293+
#need_ppa bigbluebutton-ubuntu-support-noble.list ppa:bigbluebutton/support 2E1B01D0E95B94BC # Needed for libopusenc0
294+
#need_ppa martin-uni-mainz-ubuntu-coturn-noble.list ppa:martin-uni-mainz/coturn 4B77C2225D3BBDB3 # Coturn
293295

294-
#need_ppa bigbluebutton-ubuntu-support-noble.list ppa:bigbluebutton/support 2E1B01D0E95B94BC # Needed for libopusenc0
295-
#need_ppa martin-uni-mainz-ubuntu-coturn-noble.list ppa:martin-uni-mainz/coturn 4B77C2225D3BBDB3 # Coturn
296-
297-
if [ -f /etc/apt/sources.list.d/nodesource.list ] && grep -q 18 /etc/apt/sources.list.d/nodesource.list; then
298-
# Node 18 might be installed, previously used in BigBlueButton
299-
# Remove the repository config. This will cause the repository to get
300-
# re-added using the current nodejs version, and nodejs will be upgraded.
301-
sudo rm -r /etc/apt/sources.list.d/nodesource.list
302-
fi
303-
if [ ! -f /etc/apt/sources.list.d/nodesource.list ]; then
304-
sudo mkdir -p /etc/apt/keyrings
305-
if [ -f /etc/apt/keyrings/nodesource.gpg ]; then
306-
rm /etc/apt/keyrings/nodesource.gpg
307-
fi
308-
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
309-
NODE_MAJOR=22
310-
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
296+
if [ ! -f /etc/apt/sources.list.d/nodesource.list ]; then
297+
sudo mkdir -p /etc/apt/keyrings
298+
if [ -f /etc/apt/keyrings/nodesource.gpg ]; then
299+
rm /etc/apt/keyrings/nodesource.gpg
311300
fi
301+
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
302+
NODE_MAJOR=22
303+
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
304+
fi
312305

313-
touch /root/.rnd
314-
install_docker # needed for bbb-libreoffice-docker
315-
need_pkg ruby
306+
touch /root/.rnd
307+
install_docker # needed for bbb-libreoffice-docker
316308

317-
BBB_WEB_ETC_CONFIG=/etc/bigbluebutton/bbb-web.properties # Override file for local settings
309+
BBB_WEB_ETC_CONFIG=/etc/bigbluebutton/bbb-web.properties # Override file for local settings
318310

319-
need_pkg openjdk-17-jre
320-
update-java-alternatives -s java-1.17.0-openjdk-amd64
321-
fi
311+
update-java-alternatives -s java-1.17.0-openjdk-amd64
322312

323313
apt-get update
324314
apt-get -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confnew" dist-upgrade
325315

326-
need_pkg apt-transport-https haveged
327316
need_pkg bigbluebutton
328-
need_pkg bbb-html5
317+
# need_pkg bbb-html5
329318

330319
if [ -f /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties ]; then
331320
SERVLET_DIR=/usr/share/bbb-web
@@ -693,19 +682,17 @@ need_ppa() {
693682
check_version() {
694683
# TODO adapt the new packaging OR this portion of bbb-install
695684
# if ! echo "$1" | grep -Eq "noble-40"; then err "This script can only install BigBlueButton 4.0 and is meant to be run on Ubuntu 24.04 (noble) server."; fi
696-
# DISTRO=${1%%-*}
685+
DISTRO=${1%%-*}
697686
# if ! wget -qS --spider "https://$PACKAGE_REPOSITORY/$1/dists/bigbluebutton-$DISTRO/Release.gpg" > /dev/null 2>&1; then
698687
# err "Unable to locate packages for $1 at $PACKAGE_REPOSITORY."
699688
# fi
700689
check_root
701-
need_pkg curl apt-transport-https
702690
curl -fsSL "http://$PACKAGE_REPOSITORY/public.gpg" | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/bbb-repo.gpg
703691
echo "deb http://$PACKAGE_REPOSITORY/ $VERSION main" | sudo tee /etc/apt/sources.list.d/bbb.list
704692
}
705693

706694
check_host() {
707695
if [ -z "$PROVIDED_CERTIFICATE" ] && [ -z "$HOST" ]; then
708-
need_pkg dnsutils apt-transport-https
709696
DIG_IP=$(dig +short "$1" | grep '^[.0-9]*$' | tail -n1)
710697
if [ -z "$DIG_IP" ]; then err "Unable to resolve $1 to an IP address using DNS lookup."; fi
711698
get_IP "$1"
@@ -1758,15 +1745,11 @@ fi
17581745

17591746
# shellcheck disable=SC1091
17601747
eval "$(source /etc/bigbluebutton/bigbluebutton-release && declare -p BIGBLUEBUTTON_RELEASE)"
1761-
if [[ $BIGBLUEBUTTON_RELEASE == 2.2.* ]] && [[ ${BIGBLUEBUTTON_RELEASE#*.*.} -lt 29 ]]; then
1762-
sed -i "s/proxy_pass .*/proxy_pass https:\/\/$IP:7443;/g" /usr/share/bigbluebutton/nginx/sip.nginx
1763-
else
1764-
# Use nginx as proxy for WSS -> WS (see https://github.com/bigbluebutton/bigbluebutton/issues/9667)
1765-
touch /etc/bigbluebutton/bbb-html5.yml
1766-
yq -y -i '.public.media.sipjsHackViaWs = true' /etc/bigbluebutton/bbb-html5.yml
1767-
sed -i "s/proxy_pass .*/proxy_pass http:\/\/$IP:5066;/g" /usr/share/bigbluebutton/nginx/sip.nginx
1768-
xmlstarlet edit --inplace --update '//param[@name="ws-binding"]/@value' --value "$IP:5066" /opt/freeswitch/conf/sip_profiles/external.xml
1769-
fi
1748+
# Use nginx as proxy for WSS -> WS (see https://github.com/bigbluebutton/bigbluebutton/issues/9667)
1749+
touch /etc/bigbluebutton/bbb-html5.yml
1750+
yq -y -i '.public.media.sipjsHackViaWs = true' /etc/bigbluebutton/bbb-html5.yml
1751+
sed -i "s/proxy_pass .*/proxy_pass http:\/\/$IP:5066;/g" /usr/share/bigbluebutton/nginx/sip.nginx
1752+
xmlstarlet edit --inplace --update '//param[@name="ws-binding"]/@value' --value "$IP:5066" /opt/freeswitch/conf/sip_profiles/external.xml
17701753

17711754
sed -i 's/^bigbluebutton.web.serverURL=http:/bigbluebutton.web.serverURL=https:/g' "$SERVLET_DIR/WEB-INF/classes/bigbluebutton.properties"
17721755
if [ -f "$BBB_WEB_ETC_CONFIG" ]; then

0 commit comments

Comments
 (0)