94 lines
2.9 KiB
Bash
94 lines
2.9 KiB
Bash
#!/bin/bash
|
|
# Simple Jibri Env tester
|
|
# 2020 - SwITNet Ltd
|
|
# GNU GPLv3 or later.
|
|
|
|
while getopts m: option
|
|
do
|
|
case "${option}"
|
|
in
|
|
m) MODE=${OPTARG};;
|
|
\?) echo "Usage: sudo ./test-jibri-env.sh [-m debug]" && exit;;
|
|
esac
|
|
done
|
|
|
|
#DEBUG
|
|
if [ "$MODE" = "debug" ]; then
|
|
set -x
|
|
fi
|
|
|
|
echo -e '
|
|
########################################################################
|
|
Welcome to Jibri Environment Tester
|
|
########################################################################
|
|
by Software, IT & Networks Ltd
|
|
\n'
|
|
|
|
#Check if user is root
|
|
if ! [ $(id -u) = 0 ]; then
|
|
echo "You need to be root or have sudo privileges!"
|
|
exit 0
|
|
fi
|
|
|
|
echo "Checking for updates...."
|
|
apt -q2 update
|
|
apt -yq2 install apt-show-versions
|
|
|
|
JITSI_REPO=$(apt-cache policy | grep http | grep jitsi | grep stable | awk '{print $3}' | head -n 1 | cut -d "/" -f1)
|
|
SND_AL_MODULE=$(lsmod | awk '{print$1}'| grep snd_aloop)
|
|
HWE_VIR_MOD=$(apt-cache madison linux-modules-extra-virtual-hwe-$(lsb_release -sr) 2>/dev/null|head -n1|grep -c "extra-virtual-hwe")
|
|
|
|
echo -e "\n# Check repository\n"
|
|
if [ -z $JITSI_REPO ]; then
|
|
echo "No repository detected, wait whaaaat?..."
|
|
else
|
|
echo "This installation is using the \"$JITSI_REPO\" repository."
|
|
fi
|
|
|
|
echo -e "\n# Check latest updates for jibri\n"
|
|
if [ "$(dpkg-query -W -f='${Status}' jibri 2>/dev/null | grep -c "ok installed")" == "1" ]; then
|
|
echo "Jibri is installed, checking version:"
|
|
apt-show-versions jibri
|
|
else
|
|
echo "Wait!, jibri is not installed on this system using apt, exiting..."
|
|
exit
|
|
fi
|
|
|
|
echo -e "\nAttempting (any possible) jibri upgrade!"
|
|
apt -y install --only-upgrade jibri
|
|
|
|
echo -e "\n# Test kernel modules\n"
|
|
if [ -z $SND_AL_MODULE ]; then
|
|
echo -e "No module snd_aloop detected.\nIf you just installed a new kernel, \
|
|
please try rebooting.\nFor now wait 'til the end of the recommended kernel installation."
|
|
echo "# Check and Install HWE kernel if possible..."
|
|
if [ "$HWE_VIR_MOD" == "1" ]; then
|
|
apt-get -y install \
|
|
linux-image-generic-hwe-$(lsb_release -sr) \
|
|
linux-modules-extra-virtual-hwe-$(lsb_release -sr)
|
|
else
|
|
apt-get -y install \
|
|
linux-modules-extra-$(uname -r)
|
|
fi
|
|
else
|
|
echo -e "Great!\nModule snd-aloop found!"
|
|
fi
|
|
echo -e "\n# Test .asoundrc file\n"
|
|
ASRC_MASTER="https://raw.githubusercontent.com/jitsi/jibri/master/resources/debian-package/etc/jitsi/jibri/asoundrc"
|
|
ASRC_INSTALLED="/home/jibri/.asoundrc"
|
|
ASRC_MASTER_MD5SUM=$(curl -sL $ASRC_MASTER | md5sum | cut -d ' ' -f 1)
|
|
ASRC_INSTALLED_MD5SUM=$(md5sum $ASRC_INSTALLED | cut -d ' ' -f 1)
|
|
|
|
if [ "$ASRC_MASTER_MD5SUM" == "$ASRC_INSTALLED_MD5SUM" ]; then
|
|
echo "Seems to be using the latest asoundrc file available!"
|
|
else
|
|
echo "asoundrc files differ, if you have errors, you might wanna check this file!"
|
|
fi
|
|
|
|
echo -e "\n# Old or new config (ToDo)\n"
|
|
|
|
echo -e "What config version is this using?"
|
|
echo -e "(Not implemented yet)"
|
|
|
|
echo -e "\nJibri Test complete, thanks for testing.\n"
|