Browse Source

Merge pull request #87 from turint/master

Introduces new package jitsi-meet-prosody which configures it for jitsi-meet.
master
damencho 11 years ago
parent
commit
a2d07c2688

+ 15
- 1
debian/control View File

@@ -10,10 +10,24 @@ Homepage: https://jitsi.org/meet
10 10
 Package: jitsi-meet
11 11
 Architecture: all
12 12
 Pre-Depends: adduser, openssl, jitsi-videobridge
13
-Depends: ${shlibs:Depends}, ${misc:Depends}, nginx
13
+Depends: ${shlibs:Depends}, ${misc:Depends}, nginx, jitsi-meet-prosody
14 14
 Description: WebRTC JavaScript video conferences
15 15
  Jitsi Meet is a WebRTC JavaScript application that uses Jitsi
16 16
  Videobridge to provide high quality, scalable video conferences.
17 17
  .
18 18
  It is a web interface to Jitsi Videobridge for audio and video
19 19
  forwarding and relaying, configured to work with nginx
20
+
21
+Package: jitsi-meet-prosody
22
+Architecture: all
23
+Pre-Depends: adduser, openssl, prosody-trunk, jitsi-videobridge
24
+Depends: ${shlibs:Depends}, ${misc:Depends}, nginx, prosody-modules-otalk, lua-sec
25
+Description: Prosody configuration for Jitsi Meet
26
+ Jitsi Meet is a WebRTC JavaScript application that uses Jitsi
27
+ Videobridge to provide high quality, scalable video conferences.
28
+ .
29
+ It is a web interface to Jitsi Videobridge for audio and video
30
+ forwarding and relaying, configured to work with nginx
31
+ .
32
+ This package contains configuration for Prosody to be used with
33
+ Jitsi Meet.

+ 7
- 0
debian/jitsi-meet-prosody.README.Debian View File

@@ -0,0 +1,7 @@
1
+Prosody configuration for Jitsi Meet for Debian
2
+----------------------------
3
+
4
+Jitsi Meet is a WebRTC video conferencing application. This package contains 
5
+configuration of prosody which are needed for Jitsi Meet to work.
6
+
7
+ -- Yasen Pramatarov <yasen@bluejimp.com>  Mon, 30 Jun 2014 23:05:18 +0100

debian/copyright → debian/jitsi-meet-prosody.copyright View File


+ 1
- 0
debian/jitsi-meet-prosody.install View File

@@ -0,0 +1 @@
1
+debian/usr/share/*		/usr/share/

+ 58
- 0
debian/jitsi-meet-prosody.postinst View File

@@ -0,0 +1,58 @@
1
+#!/bin/sh
2
+# postinst script for jitsi-meet-prosody
3
+#
4
+# see: dh_installdeb(1)
5
+
6
+set -e
7
+
8
+# summary of how this script can be called:
9
+#        * <postinst> `configure' <most-recently-configured-version>
10
+#        * <old-postinst> `abort-upgrade' <new version>
11
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
12
+#          <new-version>
13
+#        * <postinst> `abort-remove'
14
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
15
+#          <failed-install-package> <version> `removing'
16
+#          <conflicting-package> <version>
17
+# for details, see http://www.debian.org/doc/debian-policy/ or
18
+# the debian-policy package
19
+
20
+
21
+case "$1" in
22
+    configure)
23
+
24
+        . /etc/default/jitsi-videobridge
25
+
26
+        if [ -x /etc/prosody/prosody.cfg.lua ]; then
27
+            mv /etc/prosody/prosody.cfg.lua /etc/prosody/prosody.cfg.lua.orig
28
+        fi
29
+        gunzip -c /usr/share/doc/jitsi-meet-prosody/prosody.cfg.lua-jvb.example.gz > /etc/prosody/prosody.cfg.lua
30
+        sed -i "s/jitmeet.example.com/$JVB_HOSTNAME/g" /etc/prosody/prosody.cfg.lua
31
+        sed -i "s/jitmeetSecret/$JVB_SECRET/g" /etc/prosody/prosody.cfg.lua
32
+        if [ ! -f /var/lib/prosody/$JVB_HOSTNAME.crt ]; then
33
+            HOST="$( (hostname -s; echo localhost) | head -n 1)"
34
+            DOMAIN="$( (hostname -d; echo localdomain) | head -n 1)"
35
+            openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj \
36
+                "/O=$DOMAIN/OU=$HOST/CN=$JVB_HOSTNAME/emailAddress=webmaster@$HOST.$DOMAIN" \
37
+                -keyout /var/lib/prosody/$JVB_HOSTNAME.key -out /var/lib
38
+        fi
39
+        ln -sf /var/lib/prosody/$JVB_HOSTNAME.key /etc/prosody/certs/$JVB_HOSTNAME.key
40
+        ln -sf /var/lib/prosody/$JVB_HOSTNAME.crt /etc/prosody/certs/$JVB_HOSTNAME.crt
41
+        invoke-rc.d prosody restart
42
+    ;;
43
+
44
+    abort-upgrade|abort-remove|abort-deconfigure)
45
+    ;;
46
+
47
+    *)
48
+        echo "postinst called with unknown argument \`$1'" >&2
49
+        exit 1
50
+    ;;
51
+esac
52
+
53
+# dh_installdeb will replace this with shell code automatically
54
+# generated by other debhelper scripts.
55
+
56
+#DEBHELPER#
57
+
58
+exit 0

+ 48
- 0
debian/jitsi-meet-prosody.postrm View File

@@ -0,0 +1,48 @@
1
+#!/bin/sh
2
+# postrm script for jitsi-meet-prosody
3
+#
4
+# see: dh_installdeb(1)
5
+
6
+set -e
7
+
8
+# summary of how this script can be called:
9
+#        * <postrm> `remove'
10
+#        * <postrm> `purge'
11
+#        * <old-postrm> `upgrade' <new-version>
12
+#        * <new-postrm> `failed-upgrade' <old-version>
13
+#        * <new-postrm> `abort-install'
14
+#        * <new-postrm> `abort-install' <old-version>
15
+#        * <new-postrm> `abort-upgrade' <old-version>
16
+#        * <disappearer's-postrm> `disappear' <overwriter>
17
+#          <overwriter-version>
18
+# for details, see http://www.debian.org/doc/debian-policy/ or
19
+# the debian-policy package
20
+
21
+# Load debconf
22
+. /usr/share/debconf/confmodule
23
+
24
+
25
+case "$1" in
26
+    purge|remove)
27
+        if [ -x "/etc/init.d/prosody" ]; then
28
+            invoke-rc.d nginx reload
29
+        fi
30
+    ;;
31
+
32
+    upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
33
+    ;;
34
+
35
+    *)
36
+        echo "postrm called with unknown argument \`$1'" >&2
37
+        exit 1
38
+    ;;
39
+esac
40
+
41
+# dh_installdeb will replace this with shell code automatically
42
+# generated by other debhelper scripts.
43
+
44
+#DEBHELPER#
45
+
46
+db_stop
47
+
48
+exit 0

+ 35
- 0
debian/jitsi-meet-prosody.preinst View File

@@ -0,0 +1,35 @@
1
+#!/bin/sh
2
+# preinst script for jitsi-meet-prosody
3
+#
4
+# see: dh_installdeb(1)
5
+
6
+set -e
7
+
8
+# summary of how this script can be called:
9
+#        * <new-preinst> `install'
10
+#        * <new-preinst> `install' <old-version>
11
+#        * <new-preinst> `upgrade' <old-version>
12
+#        * <old-preinst> `abort-upgrade' <new-version>
13
+# for details, see http://www.debian.org/doc/debian-policy/ or
14
+# the debian-policy package
15
+
16
+
17
+case "$1" in
18
+    install|upgrade)
19
+    ;;
20
+
21
+    abort-upgrade)
22
+    ;;
23
+
24
+    *)
25
+        echo "preinst called with unknown argument \`$1'" >&2
26
+        exit 1
27
+    ;;
28
+esac
29
+
30
+# dh_installdeb will replace this with shell code automatically
31
+# generated by other debhelper scripts.
32
+
33
+#DEBHELPER#
34
+
35
+exit 0

+ 36
- 0
debian/jitsi-meet-prosody.prerm View File

@@ -0,0 +1,36 @@
1
+#!/bin/sh
2
+# prerm script for jitsi-meet-prosody
3
+#
4
+# see: dh_installdeb(1)
5
+
6
+set -e
7
+
8
+# summary of how this script can be called:
9
+#        * <prerm> `remove'
10
+#        * <old-prerm> `upgrade' <new-version>
11
+#        * <new-prerm> `failed-upgrade' <old-version>
12
+#        * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
13
+#        * <deconfigured's-prerm> `deconfigure' `in-favour'
14
+#          <package-being-installed> <version> `removing'
15
+#          <conflicting-package> <version>
16
+# for details, see http://www.debian.org/doc/debian-policy/ or
17
+# the debian-policy package
18
+
19
+
20
+case "$1" in
21
+    remove|purge)
22
+    ;;
23
+
24
+    upgrade|deconfigure)
25
+    ;;
26
+
27
+    failed-upgrade)
28
+    ;;
29
+
30
+    *)
31
+        echo "prerm called with unknown argument \`$1'" >&2
32
+        exit 1
33
+    ;;
34
+esac
35
+
36
+exit 0

+ 1
- 0
debian/jitsi-meet-prosody.substvars View File

@@ -0,0 +1 @@
1
+misc:Depends=

debian/README.Debian → debian/jitsi-meet.README.Debian View File


debian/README.source → debian/jitsi-meet.README.source View File


+ 31
- 0
debian/jitsi-meet.copyright View File

@@ -0,0 +1,31 @@
1
+Format: http://dep.debian.net/deps/dep5
2
+Upstream-Name: Jitsi Meet
3
+Upstream-Contact: Emil Ivov <emcho@jitsi.org>
4
+Source: https://github.com/jitsi/jitsi-meet
5
+
6
+Files: *
7
+Copyright: 2013-2014 Jitsi
8
+License: MIT
9
+
10
+License: MIT
11
+ The MIT License (MIT)
12
+ .
13
+ Copyright (c) 2013 ESTOS GmbH
14
+ Copyright (c) 2013 BlueJimp SARL
15
+ .
16
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
17
+ this software and associated documentation files (the "Software"), to deal in
18
+ the Software without restriction, including without limitation the rights to
19
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
20
+ the Software, and to permit persons to whom the Software is furnished to do so,
21
+ subject to the following conditions:
22
+ .
23
+ The above copyright notice and this permission notice shall be included in all
24
+ copies or substantial portions of the Software.
25
+ .
26
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
27
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
28
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
29
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
30
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
31
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

debian/docs → debian/jitsi-meet.docs View File


debian/install → debian/jitsi-meet.install View File


debian/postinst → debian/jitsi-meet.postinst View File

@@ -21,9 +21,6 @@ set -e
21 21
 case "$1" in
22 22
     configure)
23 23
 
24
-        # firewall conf
25
-        ufw allow 80
26
-
27 24
         # nginx conf
28 25
         . /etc/default/jitsi-videobridge
29 26
         cp /usr/share/doc/jitsi-meet/jitsi-meet.example /etc/nginx/sites-available/$JVB_HOSTNAME.conf

debian/postrm → debian/jitsi-meet.postrm View File

@@ -24,8 +24,6 @@ set -e
24 24
 
25 25
 case "$1" in
26 26
     purge|remove)
27
-        rm /etc/nginx/sites-enabled/jitsi-meet
28
-        rm /etc/nginx/sites-available/jitsi-meet
29 27
         if [ -x "/etc/init.d/nginx" ]; then
30 28
             invoke-rc.d nginx reload
31 29
         fi

debian/preinst → debian/jitsi-meet.preinst View File


debian/prerm → debian/jitsi-meet.prerm View File


+ 2
- 0
debian/source/include-binaries View File

@@ -15,3 +15,5 @@ debian/usr/share/jitsi-meet/images/avatar1.png
15 15
 debian/usr/share/jitsi-meet/images/popupPointer.png
16 16
 debian/usr/share/jitsi-meet/images/favicon.ico
17 17
 debian/usr/share/doc/jitsi-meet/changelog.Debian.gz
18
+debian/usr/share/doc/jitsi-meet-prosody/changelog.Debian.gz
19
+debian/usr/share/doc/jitsi-meet-prosody/prosody.cfg.lua-jvb.example.gz

+ 1
- 0
debian/usr/share/doc/jitsi-meet-prosody/README View File

@@ -0,0 +1 @@
1
+Prosody configuration for Jitsi Meet

BIN
debian/usr/share/doc/jitsi-meet-prosody/changelog.Debian.gz View File


+ 31
- 0
debian/usr/share/doc/jitsi-meet-prosody/copyright View File

@@ -0,0 +1,31 @@
1
+Format: http://dep.debian.net/deps/dep5
2
+Upstream-Name: Jitsi Meet
3
+Upstream-Contact: Emil Ivov <emcho@jitsi.org>
4
+Source: https://github.com/jitsi/jitsi-meet
5
+
6
+Files: *
7
+Copyright: 2013-2014 Jitsi
8
+License: MIT
9
+
10
+License: MIT
11
+ The MIT License (MIT)
12
+ .
13
+ Copyright (c) 2013 ESTOS GmbH
14
+ Copyright (c) 2013 BlueJimp SARL
15
+ .
16
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
17
+ this software and associated documentation files (the "Software"), to deal in
18
+ the Software without restriction, including without limitation the rights to
19
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
20
+ the Software, and to permit persons to whom the Software is furnished to do so,
21
+ subject to the following conditions:
22
+ .
23
+ The above copyright notice and this permission notice shall be included in all
24
+ copies or substantial portions of the Software.
25
+ .
26
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
27
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
28
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
29
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
30
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
31
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

BIN
debian/usr/share/doc/jitsi-meet-prosody/prosody.cfg.lua-jvb.example.gz View File


+ 103
- 0
doc/quick-install.md View File

@@ -0,0 +1,103 @@
1
+# Jitsi Meet quick install
2
+
3
+This documents decribes the needed steps for quick Jitsi Meet installation on a Debian based GNU/Linux system.
4
+
5
+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.
6
+
7
+## Basic Jitsi Meet install
8
+
9
+### Add the repository
10
+
11
+```sh
12
+add-apt-repository 'deb http://download.jitsi.org/nightly/deb unstable/'
13
+wget -qO - https://download.jitsi.org/nightly/deb/unstable/archive.key | apt-key add -
14
+```
15
+
16
+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
17
+
18
+```sh
19
+apt-get -y install software-properties-common
20
+add-apt-repository 'deb http://download.jitsi.org/nightly/deb unstable/'
21
+wget -qO - https://download.jitsi.org/nightly/deb/unstable/archive.key | apt-key add -
22
+```
23
+
24
+or add the repository by hand with
25
+
26
+```sh
27
+echo 'deb http://download.jitsi.org/nightly/deb unstable/' >> /etc/apt/sources.list
28
+wget -qO - https://download.jitsi.org/nightly/deb/unstable/archive.key | apt-key add -
29
+```
30
+
31
+### Update the package lists
32
+
33
+```sh
34
+apt-get update
35
+```
36
+
37
+### Install Jitsi Meet
38
+
39
+```sh
40
+apt-get -y install jitsi-meet
41
+```
42
+
43
+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).
44
+
45
+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.
46
+
47
+### Open a conference
48
+
49
+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.
50
+
51
+Confirm that you trust the self-signed certificate of the newly installed Jitsi Meet.
52
+
53
+Enjoy!
54
+
55
+## Adding sip-gateway to Jitsi Meet
56
+
57
+### Install Jigasi
58
+
59
+```sh
60
+apt-get -o Dpkg::Options::="--force-overwrite" -y install jigasi
61
+```
62
+
63
+or
64
+
65
+```sh
66
+wget https://download.jitsi.org/jigasi_1.0-1_amd64.deb
67
+dpkg -i --force-overwrite jigasi_1.0-1_amd64.deb
68
+```
69
+
70
+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.
71
+
72
+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.
73
+
74
+### Reload Jitsi Meet
75
+
76
+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.
77
+
78
+Enjoy!
79
+
80
+## Troubleshoot
81
+
82
+If the SIP gateway doesn't work on first try, restart it.
83
+
84
+```sh
85
+/etc/init.d/jigasi restart
86
+```
87
+
88
+## Deinstall
89
+
90
+```sh
91
+apt-get purge jigasi jitsi-meet jitsi-videobridge
92
+```
93
+
94
+Somethimes the following packages will fail to uninstall properly:
95
+
96
+- jigasi
97
+- jitsi-videobridge
98
+
99
+When this happens, just run the deinstall command a second time and it should be ok.
100
+
101
+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.
102
+
103
+The second run of the deinstall command fixes this, as by then the jigasi or jvb daemons are already stopped.

Loading…
Cancel
Save