Skip to content
Snippets Groups Projects
README.md 4.91 KiB
Newer Older
Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
# Jitsi Meet Electron
hristoterezov's avatar
hristoterezov committed

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
Desktop application for [Jitsi Meet] built with [Electron].

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
![](screenshot.png)

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
## Features

- [End-to-End Encryption](https://jitsi.org/blog/e2ee/) support (BETA)
Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
- Works with any Jitsi Meet deployment
- Builtin auto-updates
- Remote control
- 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`)
Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed

## Installation

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
Download our latest release and you're off to the races!
Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
| Windows | macOS | GNU/Linux (64bits only) |
| -- | -- | -- |
| [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) |
Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
For *macOS* user, you can install the application using the following command:

```
brew cask install jitsi-meet
```

### Using it with your own Jitsi Meet installation

In order to use this application with your own Jitsi Meet installation it's
necessary to enable the External API. Your server must serve a `external_api.js`
file at the root of the installation.

Here is an example using nginx:

```
location /external_api.js {
    alias /usr/share/jitsi-meet/libs/external_api.min.js;
}
```

sergio's avatar
sergio committed
:warning: The following additional HTTP headers are known to break the Electron App:
sergio's avatar
sergio committed
Content-Security-Policy "frame-ancestors [looks like any value is bad]";
X-Frame-Options "DENY";
```

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
## Development

If you want to hack on this project, here is how you do it.

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
<details><summary>Show building instructions</summary>
Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed

#### Installing dependencies
hristoterezov's avatar
hristoterezov committed

Install Node.js 12 first (or if you use [nvm](https://github.com/nvm-sh/nvm), switch to Node.js 12 by running `nvm use`).

hristoterezov's avatar
hristoterezov committed
```bash
hristoterezov's avatar
hristoterezov committed
```

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
#### Starting in development mode

```bash
npm start
```

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.

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
#### 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:
```json
"jitsi-meet-electron-utils": "file:///Users/name/jitsi-meet-electron-utils-copy",
```

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
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
```

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
NOTE: Also check the [jitsi-meet-electron-utils README] to see how to configure
your environment.
Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
</details>

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
## 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.

### GNU/Linux

There is a known issue which prevents the app from starting on some Linux distributions: #231

Marcos Dantas's avatar
Marcos Dantas committed
If after downloading it, you can't execute the file directly, try running `chmod u+x ./jitsi-meet-x86_64.AppImage.AppImage`

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
The workaround for now is to launch the app like so: `./jitsi-meet-x86_64.AppImage --no-sandbox`

<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>

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
## 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].
hristoterezov's avatar
hristoterezov committed

Saúl Ibarra Corretgé's avatar
Saúl Ibarra Corretgé committed
[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