Merge pull request #87 from turint/master
Introduces new package jitsi-meet-prosody which configures it for jitsi-meet.
This commit is contained in:
commit
a2d07c2688
|
@ -10,10 +10,24 @@ Homepage: https://jitsi.org/meet
|
|||
Package: jitsi-meet
|
||||
Architecture: all
|
||||
Pre-Depends: adduser, openssl, jitsi-videobridge
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, nginx
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, nginx, jitsi-meet-prosody
|
||||
Description: WebRTC JavaScript video conferences
|
||||
Jitsi Meet is a WebRTC JavaScript application that uses Jitsi
|
||||
Videobridge to provide high quality, scalable video conferences.
|
||||
.
|
||||
It is a web interface to Jitsi Videobridge for audio and video
|
||||
forwarding and relaying, configured to work with nginx
|
||||
|
||||
Package: jitsi-meet-prosody
|
||||
Architecture: all
|
||||
Pre-Depends: adduser, openssl, prosody-trunk, jitsi-videobridge
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, nginx, prosody-modules-otalk, lua-sec
|
||||
Description: Prosody configuration for Jitsi Meet
|
||||
Jitsi Meet is a WebRTC JavaScript application that uses Jitsi
|
||||
Videobridge to provide high quality, scalable video conferences.
|
||||
.
|
||||
It is a web interface to Jitsi Videobridge for audio and video
|
||||
forwarding and relaying, configured to work with nginx
|
||||
.
|
||||
This package contains configuration for Prosody to be used with
|
||||
Jitsi Meet.
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
Prosody configuration for Jitsi Meet for Debian
|
||||
----------------------------
|
||||
|
||||
Jitsi Meet is a WebRTC video conferencing application. This package contains
|
||||
configuration of prosody which are needed for Jitsi Meet to work.
|
||||
|
||||
-- Yasen Pramatarov <yasen@bluejimp.com> Mon, 30 Jun 2014 23:05:18 +0100
|
|
@ -0,0 +1 @@
|
|||
debian/usr/share/* /usr/share/
|
|
@ -0,0 +1,58 @@
|
|||
#!/bin/sh
|
||||
# postinst script for jitsi-meet-prosody
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postinst> `configure' <most-recently-configured-version>
|
||||
# * <old-postinst> `abort-upgrade' <new version>
|
||||
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||
# <new-version>
|
||||
# * <postinst> `abort-remove'
|
||||
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||
# <failed-install-package> <version> `removing'
|
||||
# <conflicting-package> <version>
|
||||
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
configure)
|
||||
|
||||
. /etc/default/jitsi-videobridge
|
||||
|
||||
if [ -x /etc/prosody/prosody.cfg.lua ]; then
|
||||
mv /etc/prosody/prosody.cfg.lua /etc/prosody/prosody.cfg.lua.orig
|
||||
fi
|
||||
gunzip -c /usr/share/doc/jitsi-meet-prosody/prosody.cfg.lua-jvb.example.gz > /etc/prosody/prosody.cfg.lua
|
||||
sed -i "s/jitmeet.example.com/$JVB_HOSTNAME/g" /etc/prosody/prosody.cfg.lua
|
||||
sed -i "s/jitmeetSecret/$JVB_SECRET/g" /etc/prosody/prosody.cfg.lua
|
||||
if [ ! -f /var/lib/prosody/$JVB_HOSTNAME.crt ]; then
|
||||
HOST="$( (hostname -s; echo localhost) | head -n 1)"
|
||||
DOMAIN="$( (hostname -d; echo localdomain) | head -n 1)"
|
||||
openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj \
|
||||
"/O=$DOMAIN/OU=$HOST/CN=$JVB_HOSTNAME/emailAddress=webmaster@$HOST.$DOMAIN" \
|
||||
-keyout /var/lib/prosody/$JVB_HOSTNAME.key -out /var/lib
|
||||
fi
|
||||
ln -sf /var/lib/prosody/$JVB_HOSTNAME.key /etc/prosody/certs/$JVB_HOSTNAME.key
|
||||
ln -sf /var/lib/prosody/$JVB_HOSTNAME.crt /etc/prosody/certs/$JVB_HOSTNAME.crt
|
||||
invoke-rc.d prosody restart
|
||||
;;
|
||||
|
||||
abort-upgrade|abort-remove|abort-deconfigure)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postinst called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
|
@ -0,0 +1,48 @@
|
|||
#!/bin/sh
|
||||
# postrm script for jitsi-meet-prosody
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postrm> `remove'
|
||||
# * <postrm> `purge'
|
||||
# * <old-postrm> `upgrade' <new-version>
|
||||
# * <new-postrm> `failed-upgrade' <old-version>
|
||||
# * <new-postrm> `abort-install'
|
||||
# * <new-postrm> `abort-install' <old-version>
|
||||
# * <new-postrm> `abort-upgrade' <old-version>
|
||||
# * <disappearer's-postrm> `disappear' <overwriter>
|
||||
# <overwriter-version>
|
||||
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
# Load debconf
|
||||
. /usr/share/debconf/confmodule
|
||||
|
||||
|
||||
case "$1" in
|
||||
purge|remove)
|
||||
if [ -x "/etc/init.d/prosody" ]; then
|
||||
invoke-rc.d nginx reload
|
||||
fi
|
||||
;;
|
||||
|
||||
upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postrm called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
db_stop
|
||||
|
||||
exit 0
|
|
@ -0,0 +1,35 @@
|
|||
#!/bin/sh
|
||||
# preinst script for jitsi-meet-prosody
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <new-preinst> `install'
|
||||
# * <new-preinst> `install' <old-version>
|
||||
# * <new-preinst> `upgrade' <old-version>
|
||||
# * <old-preinst> `abort-upgrade' <new-version>
|
||||
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
install|upgrade)
|
||||
;;
|
||||
|
||||
abort-upgrade)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "preinst called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
|
@ -0,0 +1,36 @@
|
|||
#!/bin/sh
|
||||
# prerm script for jitsi-meet-prosody
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <prerm> `remove'
|
||||
# * <old-prerm> `upgrade' <new-version>
|
||||
# * <new-prerm> `failed-upgrade' <old-version>
|
||||
# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
|
||||
# * <deconfigured's-prerm> `deconfigure' `in-favour'
|
||||
# <package-being-installed> <version> `removing'
|
||||
# <conflicting-package> <version>
|
||||
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
remove|purge)
|
||||
;;
|
||||
|
||||
upgrade|deconfigure)
|
||||
;;
|
||||
|
||||
failed-upgrade)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "prerm called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
|
@ -0,0 +1 @@
|
|||
misc:Depends=
|
|
@ -0,0 +1,31 @@
|
|||
Format: http://dep.debian.net/deps/dep5
|
||||
Upstream-Name: Jitsi Meet
|
||||
Upstream-Contact: Emil Ivov <emcho@jitsi.org>
|
||||
Source: https://github.com/jitsi/jitsi-meet
|
||||
|
||||
Files: *
|
||||
Copyright: 2013-2014 Jitsi
|
||||
License: MIT
|
||||
|
||||
License: MIT
|
||||
The MIT License (MIT)
|
||||
.
|
||||
Copyright (c) 2013 ESTOS GmbH
|
||||
Copyright (c) 2013 BlueJimp SARL
|
||||
.
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
.
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@ -21,9 +21,6 @@ set -e
|
|||
case "$1" in
|
||||
configure)
|
||||
|
||||
# firewall conf
|
||||
ufw allow 80
|
||||
|
||||
# nginx conf
|
||||
. /etc/default/jitsi-videobridge
|
||||
cp /usr/share/doc/jitsi-meet/jitsi-meet.example /etc/nginx/sites-available/$JVB_HOSTNAME.conf
|
|
@ -24,8 +24,6 @@ set -e
|
|||
|
||||
case "$1" in
|
||||
purge|remove)
|
||||
rm /etc/nginx/sites-enabled/jitsi-meet
|
||||
rm /etc/nginx/sites-available/jitsi-meet
|
||||
if [ -x "/etc/init.d/nginx" ]; then
|
||||
invoke-rc.d nginx reload
|
||||
fi
|
|
@ -15,3 +15,5 @@ debian/usr/share/jitsi-meet/images/avatar1.png
|
|||
debian/usr/share/jitsi-meet/images/popupPointer.png
|
||||
debian/usr/share/jitsi-meet/images/favicon.ico
|
||||
debian/usr/share/doc/jitsi-meet/changelog.Debian.gz
|
||||
debian/usr/share/doc/jitsi-meet-prosody/changelog.Debian.gz
|
||||
debian/usr/share/doc/jitsi-meet-prosody/prosody.cfg.lua-jvb.example.gz
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Prosody configuration for Jitsi Meet
|
Binary file not shown.
|
@ -0,0 +1,31 @@
|
|||
Format: http://dep.debian.net/deps/dep5
|
||||
Upstream-Name: Jitsi Meet
|
||||
Upstream-Contact: Emil Ivov <emcho@jitsi.org>
|
||||
Source: https://github.com/jitsi/jitsi-meet
|
||||
|
||||
Files: *
|
||||
Copyright: 2013-2014 Jitsi
|
||||
License: MIT
|
||||
|
||||
License: MIT
|
||||
The MIT License (MIT)
|
||||
.
|
||||
Copyright (c) 2013 ESTOS GmbH
|
||||
Copyright (c) 2013 BlueJimp SARL
|
||||
.
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
.
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
Binary file not shown.
|
@ -0,0 +1,103 @@
|
|||
# Jitsi Meet quick install
|
||||
|
||||
This documents decribes the needed steps for quick Jitsi Meet installation on a Debian based GNU/Linux system.
|
||||
|
||||
N.B.: All commands are supposed to be run by root. If you are logged in as a regular user with sudo rights, please prepend ___sudo___ to each of the commands.
|
||||
|
||||
## Basic Jitsi Meet install
|
||||
|
||||
### Add the repository
|
||||
|
||||
```sh
|
||||
add-apt-repository 'deb http://download.jitsi.org/nightly/deb unstable/'
|
||||
wget -qO - https://download.jitsi.org/nightly/deb/unstable/archive.key | apt-key add -
|
||||
```
|
||||
|
||||
add-apt-repository is in the default Ubuntu install and is available for both Ubuntu and Debian, but if it's not present, either install it with
|
||||
|
||||
```sh
|
||||
apt-get -y install software-properties-common
|
||||
add-apt-repository 'deb http://download.jitsi.org/nightly/deb unstable/'
|
||||
wget -qO - https://download.jitsi.org/nightly/deb/unstable/archive.key | apt-key add -
|
||||
```
|
||||
|
||||
or add the repository by hand with
|
||||
|
||||
```sh
|
||||
echo 'deb http://download.jitsi.org/nightly/deb unstable/' >> /etc/apt/sources.list
|
||||
wget -qO - https://download.jitsi.org/nightly/deb/unstable/archive.key | apt-key add -
|
||||
```
|
||||
|
||||
### Update the package lists
|
||||
|
||||
```sh
|
||||
apt-get update
|
||||
```
|
||||
|
||||
### Install Jitsi Meet
|
||||
|
||||
```sh
|
||||
apt-get -y install jitsi-meet
|
||||
```
|
||||
|
||||
During the installation you'll be asked to enter the hostname of the Jitsi Meet instance. If you have a FQDN hostname for the instance already set ip in DNS, enter it there. If you don't have a resolvable hostname, you can enter the IP address of the machine (if it is static or doesn't change).
|
||||
|
||||
This hostname (or IP address) will be used for virtualhost configuration inside the Jitsi Meet and also you and your correspondents will be using it to access the web conferences.
|
||||
|
||||
### Open a conference
|
||||
|
||||
Launch a web broswer (Chrome, Chromium or latest Opera) and enter in the URL bar the hostname (or IP address) you used in the previous step.
|
||||
|
||||
Confirm that you trust the self-signed certificate of the newly installed Jitsi Meet.
|
||||
|
||||
Enjoy!
|
||||
|
||||
## Adding sip-gateway to Jitsi Meet
|
||||
|
||||
### Install Jigasi
|
||||
|
||||
```sh
|
||||
apt-get -o Dpkg::Options::="--force-overwrite" -y install jigasi
|
||||
```
|
||||
|
||||
or
|
||||
|
||||
```sh
|
||||
wget https://download.jitsi.org/jigasi_1.0-1_amd64.deb
|
||||
dpkg -i --force-overwrite jigasi_1.0-1_amd64.deb
|
||||
```
|
||||
|
||||
You need to pass "--force-overwrite" option to dpkg, because the jigasi package patches some of the files in the jitsi-meet package in order to enable the SIP support in Jitsi Meet.
|
||||
|
||||
During the installation you'll be asked to enter your SIP account and password. This account will be used to invite the other SIP participants.
|
||||
|
||||
### Reload Jitsi Meet
|
||||
|
||||
Launch again a browser with the Jitsi Meet URL and you'll see a telephone icon on the right end of the toolbar. Use it to invite SIP accounts to join the current conference.
|
||||
|
||||
Enjoy!
|
||||
|
||||
## Troubleshoot
|
||||
|
||||
If the SIP gateway doesn't work on first try, restart it.
|
||||
|
||||
```sh
|
||||
/etc/init.d/jigasi restart
|
||||
```
|
||||
|
||||
## Deinstall
|
||||
|
||||
```sh
|
||||
apt-get purge jigasi jitsi-meet jitsi-videobridge
|
||||
```
|
||||
|
||||
Somethimes the following packages will fail to uninstall properly:
|
||||
|
||||
- jigasi
|
||||
- jitsi-videobridge
|
||||
|
||||
When this happens, just run the deinstall command a second time and it should be ok.
|
||||
|
||||
The reason for failure is that not allways the daemons are stopped right away, there is a timeout before the actual stop. And if the unistall script goes on before the services' stop, there is an error.
|
||||
|
||||
The second run of the deinstall command fixes this, as by then the jigasi or jvb daemons are already stopped.
|
Loading…
Reference in New Issue