River: Difference between revisions

From Alpine Linux
m (→‎Installation: Added instruction for v3.23 specifically as being the same as for Edge, added 'current-stable' pill, and reordered this instruction to prioritize it over v3.22 and v.3.21)
m (1. Added instructions for v3.23 in further passages; 2. Added/amended pills for v2.23; 3. Amended style)
 
Line 1: Line 1:
[https://github.com/riverwm/river River] is a dynamic tiling [[Wayland]] compositor. '''River''' ''"upstream"'' has developed into [https://codeberg.org/river/river/releases/tag/v0.3.12 two different projects]:-
[https://github.com/riverwm/river River] is a dynamic tiling [[Wayland]] compositor. '''River''' ''"upstream"'' has developed into [https://codeberg.org/river/river/releases/tag/v0.3.12 two different projects]:-
* '''river-classic''', which is an upstream fork of the original '''River''' version 0.3, now known under that [https://codeberg.org/river/river-classic new name].  As of November 2025, it is '''the only version available on Alpine Linux''': it can be downloaded as {{Pkg|river-classic}} from the edge community repository while it retains its legacy name as {{Pkg|river|branch=v3.22}} in the Alpine Linux v3.22 and v3.21 community repositories. {{Pill||v3.22.x|green|palegreen}} {{Pill||v3.21.x|cadetblue|lightblue}}
{{Pill|text=v3.23.x}} {{Pill||v3.22.x|green|palegreen}} {{Pill||v3.21.x|cadetblue|lightblue}}
* '''river-classic''', which is an upstream fork of the original '''River''' version 0.3, now known under that [https://codeberg.org/river/river-classic new name].  As of December 2025, it is ''the only version available'' on Alpine Linux: it can be downloaded as {{Pkg|river-classic}} from Alpine Linux v3.23 and Edge community repositories, while it retains its legacy name as {{Pkg|river|branch=v3.22}} in the v3.22 and v3.21 community repositories.
* The current '''River''' project upstream, version 0.4+, which is developing under their new ''river-window-management-v1 protocol'', also known by its ''rwm tag''.
* The current '''River''' project upstream, version 0.4+, which is developing under their new ''river-window-management-v1 protocol'', also known by its ''rwm tag''.
Updating the original {{ic|river}} package from version 0.3 to version 0.4 would cause breakages, and therefore, distinct projects are being developed upstream.
Updating the original {{ic|river}} package from version 0.3 to version 0.4 would cause breakages, and therefore, distinct projects are being developed upstream.
Line 12: Line 13:


Install '''river-classic''' and its documentation:
Install '''river-classic''' and its documentation:
* Under Alpine Linux v3.23 and Edge versions{{Pill|Version:|current|purple|cornflowerblue}}
* Under Alpine Linux v3.23 and Edge versions {{Pill||text=v3.23.x}}
:{{Cmd|# apk add {{Pkg|river-classic}} {{Pkg|river-classic-doc}}}}
:{{Cmd|# apk add {{Pkg|river-classic}} {{Pkg|river-classic-doc}}}}


Line 24: Line 25:
{{Cmd|# apk add {{Pkg|adwaita-icon-theme}} {{Pkg|foot}} {{Pkg|font-dejavu}}}}
{{Cmd|# apk add {{Pkg|adwaita-icon-theme}} {{Pkg|foot}} {{Pkg|font-dejavu}}}}


Further packages that are available include the following.  Ensure that the [[Repositories#Using_testing_repository|edge repository is enabled and tagged]] first before installing any of the following with the ''@testing'' tag, last checked in November 2025:-
Further packages that are available include the following.  Ensure that the [[Repositories#Using_testing_repository|'''Edge''' repository is enabled and tagged]] first before installing any of the following with the '''@testing''' tag, last checked in November 2025:-
* {{Pkg|rivercarro}} for a fork of the rivertile layout (tag as @testing);
* {{Pkg|rivercarro}} for a fork of the rivertile layout (tag as '''@testing''');
* {{Pkg|river-luatile}} to write layouts in lua (tag as @testing);
* {{Pkg|river-luatile}} to write layouts in lua (tag as '''@testing''');
* {{Pkg|river-shifttags}} to enable the reordering of tags (tag as @testing):  
* {{Pkg|river-shifttags}} to enable the reordering of tags (tag as '''@testing'''):  
* {{Pkg|river-bedload}} to send info to STDOUT (tag as @testing);
* {{Pkg|river-bedload}} to send info to STDOUT (tag as '''@testing''');
* those for bash/zsh/fish completion (some are in @testing, some in community repo):  say, {{Pkg|river-bash-completion|branch=v3.22}} in Alpine Linux v3.22 community repo, or {{Pkg|river-classic-bash-completion}} in Alpine Linux Edge community;
* those for bash/zsh/fish completion (some are in '''@testing''', some in '''community''' repo):  say, {{Pkg|river-classic-bash-completion}} in Alpine Linux v3.23 or Edge community, or {{Pkg|river-bash-completion|branch=v3.22}} in Alpine Linux v3.22 community repo.
To begin a search for any more packages:-
To begin a search for any more packages:-
* If running Edge, run {{ic|apk search -v river-classic}} first, or see {{Pkg|river-classic*}}.
* If running v3.23 or Edge, try {{ic|apk search -v river-classic}} first, or see {{Pkg|river-classic*}}.
* For Alpine Linux v3.22/v3.21, or for a cruder, more generic search, one could try {{ic|<nowiki>apk search -v river | grep -v 'driver'</nowiki>}} , which would exclude the term 'driver'; {{ic|apk search -v river}}; or see {{Pkg|river*|branch=3.22}} for packages that begin with that term.
* For Alpine Linux v3.22/v3.21, or for a cruder, more generic search regardless of the Alpine Linux version, one could try {{ic|<nowiki>apk search -v river | grep -v 'driver'</nowiki>}} , which would exclude the term 'driver'; {{ic|apk search -v river}}; or see {{Pkg|river*|branch=3.22}} for packages that begin with that term.


== Running river-classic ==
== Running river-classic ==

Latest revision as of 18:06, 19 December 2025

River is a dynamic tiling Wayland compositor. River "upstream" has developed into two different projects:-

v3.23.x v3.22.x v3.21.x

  • river-classic, which is an upstream fork of the original River version 0.3, now known under that new name. As of December 2025, it is the only version available on Alpine Linux: it can be downloaded as river-classic from Alpine Linux v3.23 and Edge community repositories, while it retains its legacy name as river in the v3.22 and v3.21 community repositories.
  • The current River project upstream, version 0.4+, which is developing under their new river-window-management-v1 protocol, also known by its rwm tag.

Updating the original river package from version 0.3 to version 0.4 would cause breakages, and therefore, distinct projects are being developed upstream.

Prerequisites

Installation

Install river-classic and its documentation:

  • Under Alpine Linux v3.23 and Edge versions

v3.23.x

# apk add river-classic river-classic-doc

  • Under Alpine Linux v3.22 and v3.21

v3.22.x v3.21.x

# apk add river river-doc

The -doc packages are required to use the example config.

Install your choice of additional packages. The following list includes icons, fonts and a terminal emulator named foot, which is the default in river-classic's sample init file that we will use later.

# apk add adwaita-icon-theme foot font-dejavu

Further packages that are available include the following. Ensure that the Edge repository is enabled and tagged first before installing any of the following with the @testing tag, last checked in November 2025:-

To begin a search for any more packages:-

  • If running v3.23 or Edge, try apk search -v river-classic first, or see river-classic*.
  • For Alpine Linux v3.22/v3.21, or for a cruder, more generic search regardless of the Alpine Linux version, one could try apk search -v river | grep -v 'driver' , which would exclude the term 'driver'; apk search -v river; or see river* for packages that begin with that term.

Running river-classic

Before running river-classic for the first time, copy the sample init file to ~/.config:

install -Dm0755 /usr/share/doc/river/examples/init -t ~/.config/river

Set XDG_RUNTIME_DIR and then start river-classic/river with the same instruction:

river

Troubleshooting

This material is proposed for merging ...

It should be merged with Firefox. (Discuss)

The following are a few observations discovered while running river-classic; although not directly related to the compositor, they have been tacked onto the end of this wiki.

Firefox 89.0.1 complained of "glxtest: libpci missing" on launch, resolved with:

apk add pciutils-libs

Firefox 89.0.1 furthermore complained continuously: "Unable to load hand2 from the cursor theme", resolved as follows:

mkdir -p ~/.icons/default ln -s /usr/share/icons/Adwaita/cursors ~/.icons/default/cursors

See also