jitsi-meet-electron/README.md

195 lines
5.9 KiB
Markdown
Raw Normal View History

2018-07-19 10:09:40 +02:00
# Jitsi Meet Electron
2016-12-12 21:46:47 +01:00
2018-07-19 10:09:40 +02:00
Desktop application for [Jitsi Meet] built with [Electron].
2018-08-13 09:18:18 +02:00
![](screenshot.png)
2018-07-19 10:09:40 +02:00
## Features
2020-05-20 22:24:09 +02:00
- [End-to-End Encryption](https://jitsi.org/blog/e2ee/) support (BETA)
2018-07-19 10:09:40 +02:00
- Works with any Jitsi Meet deployment
- Builtin auto-updates
- ~Remote control~ (currently [disabled](https://github.com/jitsi/jitsi-meet-electron/issues/483) due to [security issues](https://github.com/jitsi/security-advisories/blob/master/advisories/JSA-2020-0001.md))
2018-07-19 10:09:40 +02:00
- Always-On-Top window
- Support for deeplinks such as `jitsi-meet://myroom` (will open `myroom` on the configured Jitsi instance) or `jitsi-meet://jitsi.mycompany.com/myroom` (will open `myroom` on the Jitsi instance running on `jitsi.mycompany.com`)
2018-07-19 10:09:40 +02:00
## Installation
2020-06-05 13:37:25 +02:00
Download our latest release and you're off to the races!
2018-07-19 10:09:40 +02:00
2021-03-24 22:11:46 +01:00
| Windows | macOS | GNU/Linux (AppImage) | GNU/Linux (Deb) |
| -- | -- | -- | -- |
| [Download](https://github.com/jitsi/jitsi-meet-electron/releases/latest/download/jitsi-meet.exe) | [Download](https://github.com/jitsi/jitsi-meet-electron/releases/latest/download/jitsi-meet.dmg) | [Download](https://github.com/jitsi/jitsi-meet-electron/releases/latest/download/jitsi-meet-x86_64.AppImage) | [Download](https://github.com/jitsi/jitsi-meet-electron/releases/latest/download/jitsi-meet-amd64.deb) |
NOTE: The GNU/LInux builds are 64-bit only.
2018-08-13 09:18:18 +02:00
2020-09-29 10:31:28 +02:00
### Third-Party builds
2020-10-17 18:26:58 +02:00
[<img src="https://flathub.org/assets/badges/flathub-badge-en.svg"
alt="Download On Flathub"
height="60">](https://flathub.org/apps/details/org.jitsi.jitsi-meet)
2020-09-29 10:31:28 +02:00
### Homebrew
2020-06-05 13:37:25 +02:00
For *macOS* user, you can install the application using the following command:
```
brew install --cask jitsi-meet
```
### Using it with your own Jitsi Meet installation
:warning: The following additional HTTP headers are known to break the Electron App:
2020-04-14 14:17:43 +02:00
```
Content-Security-Policy "frame-ancestors [looks like any value is bad]";
2020-04-14 14:17:43 +02:00
X-Frame-Options "DENY";
```
2021-03-12 16:20:56 +01:00
A working Content Security Policy looks like that:
```
Content-Security-Policy "img-src 'self' 'unsafe-inline' data:; script-src 'self' 'unsafe-inline' 'wasm-eval'; style-src 'self' 'unsafe-inline'; font-src 'self'; object-src 'none'; base-uri 'self'; form-action 'none';";
2021-03-12 16:20:56 +01:00
```
2020-04-14 14:17:43 +02:00
2018-07-19 10:09:40 +02:00
## Development
If you want to hack on this project, here is how you do it.
2018-08-29 09:59:51 +02:00
<details><summary>Show building instructions</summary>
2018-08-13 09:18:18 +02:00
#### Installing dependencies
2016-12-12 21:46:47 +01:00
Install Node.js 14 first (or if you use [nvm](https://github.com/nvm-sh/nvm), switch to Node.js 14 by running `nvm use`).
2020-06-24 16:30:37 +02:00
<details><summary>Extra dependencies for Windows</summary>
```bash
npm install --global --production windows-build-tools
npm config set msvs_version 2017
```
</details>
2020-11-04 10:49:11 +01:00
<details><summary>Extra dependencies for GNU/Linux</summary>
X11, PNG and zlib development packages are necessary. On Debian-like systems then can be installed as follows:
```bash
sudo apt install libx11-dev zlib1g-dev libpng-dev libxtst-dev
```
</details>
Install all required packages:
2016-12-12 21:46:47 +01:00
```bash
npm install
2016-12-12 21:46:47 +01:00
```
2018-07-19 10:09:40 +02:00
#### Starting in development mode
```bash
npm start
```
2020-04-20 14:16:23 +02:00
The debugger tools are available when running in dev mode and can be activated with keyboard shortcuts as defined here https://github.com/sindresorhus/electron-debug#features.
It can also be displayed automatically from the `SHOW_DEV_TOOLS` environment variable such as:
```bash
SHOW_DEV_TOOLS=true npm start
```
or from the application `--show-dev-tools` command line flag.
2018-07-19 10:09:40 +02:00
#### Building the production distribution
```bash
npm run dist
```
#### Working with jitsi-meet-electron-utils
[jitsi-meet-electron-utils] is a helper package which implements many features
such as remote control and the always-on-top window. If new features are to be
added / tested, running with a local version of these utils is very handy, here
is how to do that.
By default the jitsi-meet-electron-utils is build from its git repository
sources. The default dependency path in package.json is:
```json
"jitsi-meet-electron-utils": "jitsi/jitsi-meet-electron-utils"
```
To work with local copy you must change the path to:
2018-07-19 10:09:40 +02:00
```json
"jitsi-meet-electron-utils": "file:///Users/name/jitsi-meet-electron-utils-copy",
```
2018-07-19 10:09:40 +02:00
To build the project you must force it to take the sources as `npm update` will
not do it.
```bash
npm install jitsi-meet-electron-utils --force
```
2018-07-19 10:09:40 +02:00
NOTE: Also check the [jitsi-meet-electron-utils README] to see how to configure
your environment.
2018-08-13 09:18:18 +02:00
</details>
2020-06-05 13:37:25 +02:00
## Known issues
### Windows
A warning will show up mentioning the app is unsigned upon first install. This is expected.
### macOS
On macOS Catalina a warning will be displayed on first install. The app won't open unless "open" is pressed. This dialog is only shown once.
Builtin auto-updates are not yet handled in macOS due to unsigned build.
2020-06-05 13:37:25 +02:00
### GNU/Linux
2020-10-08 10:44:17 +02:00
If after downloading it, you can't execute the file directly, try running `chmod u+x ./jitsi-meet-x86_64.AppImage`
2020-06-16 11:54:48 +02:00
2020-06-05 13:37:25 +02:00
<details><summary>NOTE for old GNU/Linux distributions</summary>
You might get the following error:
```
FATAL:nss_util.cc(632)] NSS_VersionCheck("3.26") failed. NSS >= 3.26 is required.
Please upgrade to the latest NSS, and if you still get this error, contact your
distribution maintainer.
```
If you do, please install NSS (example for Debian / Ubuntu):
```bash
sudo apt-get install libnss3
```
</details>
2021-09-19 11:13:53 +02:00
## Translations
The json files are for all the strings inside the application and can be translated [here](/app/i18n/lang).
New translations require the addition of a line in [index.js](/app/i18n/index.js).
2018-07-19 10:09:40 +02:00
## License
Apache 2. See the [LICENSE] file.
## Community
Jitsi is built by a large community of developers, if you want to participate,
please join [community forum].
2016-12-12 21:46:47 +01:00
2018-07-19 10:09:40 +02:00
[Jitsi Meet]: https://github.com/jitsi/jitsi-meet
[Electron]: https://electronjs.org/
[latest release]: https://github.com/jitsi/jitsi-meet-electron/releases/latest
[jitsi-meet-electron-utils]: https://github.com/jitsi/jitsi-meet-electron-utils
[jitsi-meet-electron-utils README]: https://github.com/jitsi/jitsi-meet-electron-utils/blob/master/README.md
[community forum]: https://community.jitsi.org/
[LICENSE]: LICENSE