78 lines
2 KiB
Markdown
78 lines
2 KiB
Markdown
# Building
|
|
|
|
## Compile-time Dependencies
|
|
|
|
The following libraries must be installed before compiling Jay:
|
|
|
|
- libinput.so
|
|
- libgbm.so
|
|
- libudev.so
|
|
- libpangocairo-1.0.so
|
|
|
|
You must also have a C compiler (GCC or Clang) and the latest version of rust installed.
|
|
You can install rust with [rustup](https://rustup.rs/).
|
|
|
|
It is recommended that you install shaderc.
|
|
Otherwise it will be built from source which can take several minutes.
|
|
|
|
## Runtime Dependencies
|
|
|
|
Most of these dependencies are optional and will enable additional features.
|
|
|
|
- Linux 6.7: Required for explicit sync.
|
|
- Xwayland: Required for running X applications.
|
|
- Pipewire: Required for screen sharing.
|
|
- logind (part of systemd): Required when running Jay from a virtual terminal.
|
|
- libEGL.so and libGLESv2.so: Required for the OpenGL renderer.
|
|
- libvulkan.so: Required for the Vulkan renderer.
|
|
|
|
Note that Jay will not work if neither the OpenGL nor the Vulkan renderer are available.
|
|
|
|
## Compiling
|
|
|
|
To compile the latest stable version of Jay, run
|
|
|
|
```
|
|
cargo install --locked jay-compositor
|
|
```
|
|
|
|
This will install Jay under `$HOME/.cargo/bin/jay`.
|
|
|
|
If you want to use the latest version from git, run
|
|
|
|
```
|
|
cargo install --locked --git https://github.com/mahkoh/jay.git jay-compositor
|
|
```
|
|
|
|
If you only want to build Jay without installing it, run the following command from within this repository:
|
|
|
|
```
|
|
cargo build --release
|
|
```
|
|
|
|
The binary is then available under `./target/release/jay`.
|
|
|
|
# Setup
|
|
|
|
## Configuration
|
|
|
|
See [config.md](./config.md).
|
|
|
|
## Screen Sharing
|
|
|
|
This step is only required to enable screen sharing.
|
|
|
|
1. Copy `../etc/jay.portal` to `/usr/share/xdg-desktop-portal/portals/jay.portal`.
|
|
2. Copy `../etc/jay-portals.conf` to `/usr/share/xdg-desktop-portal/jay-portals.conf`.
|
|
|
|
Then restart `xdg-deskop-portal`.
|
|
|
|
# Running
|
|
|
|
1. Switch to a virtual terminal by pressing `ctrl-alt-F2` (or F3, F4, ...).
|
|
2. Run `jay run`.
|
|
|
|
If you have not yet changed the default configuration, you can
|
|
|
|
- quit Jay by pressing `alt-q`,
|
|
- start Alacritty by pressing the left Windows key.
|