Fix link to native node modules docs

This commit is contained in:
Andrew Morgan 2019-07-19 10:26:09 +01:00
parent 90c2348e5f
commit 67a4081636
2 changed files with 1 additions and 41 deletions

View File

@ -148,7 +148,7 @@ Electron Specific Features
The electron version of Riot contains some features that are only possible from electron rather than within a browser window. This includes the "Push-to-Talk" feature, which allows you to toggle your microphone during a call even if Riot is not in focus. The electron version of Riot contains some features that are only possible from electron rather than within a browser window. This includes the "Push-to-Talk" feature, which allows you to toggle your microphone during a call even if Riot is not in focus.
This requires the use of a native node module called [iohook](https://github.com/matrix-org/iohook/). Native node modules are written in C, and by default during the build of Riot the compiled binaries will be downloaded from npm. If you would like to build this module from source yourself, please read [Compiling iohook](docs/native_node_modules.md#compiling-iohook). This requires the use of a native node module called [iohook](https://github.com/matrix-org/iohook/). Native node modules are written in C, and by default during the build of Riot the compiled binaries will be downloaded from npm. If you would like to build this module from source yourself, please read [Compiling iohook](docs/native-node-modules.md#compiling-iohook).
Many thanks to @aviraldg for the initial work on the Electron integration. Many thanks to @aviraldg for the initial work on the Electron integration.

View File

@ -1,40 +0,0 @@
# Native Node Modules
Since v???, the electron version of Riot can make use of native node modules.
These allow Riot to integrate with the desktop in ways that a browser cannot.
While handy, these modules must be compiled and are thus downloaded
pre-compiled during build so that a single OS can compile Riot for all
platforms. If you would like to compile the native node modules from source,
as is done for Riot releases, instead of trusting binaries hosted on npm,
then please read on.
Do note that compiling a module for a particular operating system
(Linux/Mac/Windows) and will need to be done on that operating system.
## Compiling iohook
[iohook](https://github.com/matrix-org/iohook/) is a native node module
written in C/C++ that allows for cross-platform capturing of keystrokes. This
is used for providing Push-to-Talk functionality (pressing a key to toggle
the microphone in a call) and is ONLY enabled during a call and while setting
the keybinding in settings.
If you would like to rebuild the module yourself and replace the downloaded
binaries, then first make sure you have the following dependencies. Then
simply execute `build-native-modules.sh` with the following flags:
```bash
./scripts/build-native-modules.sh -e 4.2.6 -a 69 -i
```
`-e` specifies the electron version, `-a` specifies the electron ABI version,
and `-i` tells the script to build iohook and then install it.
If you'd just like to build the module without installing it, use `-I` instead.
```bash
./scripts/build-native-modules.sh -e 4.2.6 -a 69 -I
```
To then start Electron, use `npx electron .`. To package, use `build -wml -ia32 --x64`.