Jitsi Meet desktop application powered by
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

207 lines
6.6 KiB

4 years ago
# Jitsi Meet Electron
6 years ago
4 years ago
Desktop application for [Jitsi Meet] built with [Electron].
4 years ago
![](screenshot.png)
4 years ago
## Features
2 years ago
- [End-to-End Encryption](https://jitsi.org/blog/e2ee/) support (BETA)
4 years ago
- 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))
4 years ago
- 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`)
4 years ago
## Installation
2 years ago
Download our latest release and you're off to the races!
4 years ago
1 year ago
| 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.
4 years ago
2 years ago
### Third-Party builds
2 years ago
[<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)
2 years ago
### Homebrew
2 years ago
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:
```
Content-Security-Policy "frame-ancestors [looks like any value is bad]";
X-Frame-Options "DENY";
```
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';";
```
4 years ago
## Development
If you want to hack on this project, here is how you do it.
4 years ago
<details><summary>Show building instructions</summary>
4 years ago
#### Installing dependencies
6 years ago
Install Node.js 16 first (or if you use [nvm](https://github.com/nvm-sh/nvm), switch to Node.js 16 by running `nvm use`).
<details><summary>Extra dependencies for Windows</summary>
```bash
npm install --global --production windows-build-tools
```
</details>
<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:
6 years ago
```bash
npm install
6 years ago
```
4 years ago
#### 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.
4 years ago
#### Building the production distribution
```bash
npm run dist
```
#### Working with jitsi-meet-electron-sdk
4 years ago
[jitsi-meet-electron-sdk] is a helper package which implements many features
4 years ago
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/electron-sdk is build from npm. The default dependency path in package.json is:
4 years ago
```json
"@jitsi/electron-sdk": "^3.0.0"
```
To work with local copy you must change the path to:
4 years ago
```json
"@jitsi/electron-sdk": "file:///Users/name/jitsi-meet-electron-sdk-copy",
```
4 years ago
To build the project you must force it to take the sources as `npm update` will
not do it.
```bash
npm install @jitsi/electron-sdk --force
```
NOTE: Also check the [jitsi-meet-electron-sdk README] to see how to configure
4 years ago
your environment.
#### Publishing
1. Create release branch: `git checkout -b release-1-2-3`, replacing 1-2-3 with the desired release version
2. Increment the version: `npm version patch`, replacing `patch` with `minor` or `major` as required
3. Push release branch to github: `git push -u origin release-1-2-3`
4. Create PR: `gh pr create`
5. Once PR is reviewed and ready to merge, create draft Github release: `gh release create v1.2.3 --draft --title 1.2.3`, replacing v1.2.3 and 1.2.3 with the desired release version
6. Merge PR
7. Github action will build binaries and attach to the draft release
8. Test binaries from draft release
9. If all tests are fine, publish draft release
4 years ago
</details>
2 years ago
## 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
2 years ago
If after downloading it, you can't execute the file directly, try running `chmod u+x ./jitsi-meet-x86_64.AppImage`
2 years ago
2 years ago
<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>
## 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).
`Localize desktop file on linux` requires the addition of a line in [package.json](/package.json).
7 months ago
Please search for `Comment[hu]` as an example to help add your translation of the English string `Jitsi Meet Desktop App` for your language.
4 years ago
## 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].
6 years ago
4 years ago
[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-sdk]: https://github.com/jitsi/jitsi-meet-electron-sdk
[jitsi-meet-electron-sdk README]: https://github.com/jitsi/jitsi-meet-electron-sdk/blob/master/README.md
4 years ago
[community forum]: https://community.jitsi.org/
[LICENSE]: LICENSE