Note: river is currently early in development. Expect breaking changes and missing features. If you run into a bug don't hesitate to open an issue
rivertilelayout generator is provided.)
riverctlbinary implementing it.
On cloning the repository, you must init and update the submodules as well with e.g.
git submodule update --init
To compile river first ensure that you have the following dependencies installed:
Note: NixOS users may refer to the Building on NixOS wiki page
Then run, for example:
zig build -Drelease-safe --prefix /usr install
To enable experimental Xwayland support pass the
-Dxwayland option as well.
River can either be run nested in an X11/wayland session or directly from a tty using KMS/DRM.
On startup river will look for and run an executable file at one of the following locations, checked in the order listed:
Usually this executable init file will be a shell script invoking riverctl to create mappings and preform other configuration.
An example init script with sane defaults is provided here
in the example directory and installed to
For complete documentation see the
rivertile(1) man pages.
river is released under the GNU General Public License version 3, or (at your option) any later version.
The protocols in the
protocol directory are released under various licenses by
various parties. You should refer to the copyright block of each protocol for
the licensing information. The protocols prefixed with
river and developed by
this project are released under the ISC license (as stated in their copyright