River

From Alpine Linux
Note: This is currently not working as written. Updates in Progress

River is a dynamic tiling Wayland compositor. An introduction to River can be found in this blog post by the author for the 0.1.0 release.

This wiki was written starting from a fresh install using the Alpine 3.14.2 x86_64 extended .iso. The steps begin from the first reboot after running setup-alpine and performing a sys install to disk.

Many steps below were taken from the wiki entry for installing Sway.

Installation

Login as root.

Edit the repositories file and uncomment the community and testing repos. For 3.14.2, we need edge/community to get the correct software versions to support River:

Contents of /etc/apk/repositories

http://dl-cdn.alpinelinux.org/alpine/v3.14/main #http://dl-cdn.alpinelinux.org/alpine/v3.14/community #http://dl-cdn.alpinelinux.org/alpine/edge/main http://dl-cdn.alpinelinux.org/alpine/edge/community http://dl-cdn.alpinelinux.org/alpine/edge/testing

Install & configure eudev:

apk add eudev setup-udev

Then install graphics drivers appropriate to your system:

apk add mesa-dri-gallium # gallium apk add mesa-dri-classic # or classic

The following links contain guides for setting up the video stack.

Install River and the documentation:

apk add river river-doc mandoc

Install your choice of additional packages:

This list includes icons, fonts, and a terminal emulator named foot which is the default in River's sample init file that we will use later.

apk add adwaita-icon-theme foot ttf-dejavu

Create a new user and update group membership:

adduser sodface addgroup sodface audio addgroup sodface input addgroup sodface seat addgroup sodface video addgroup sodface wheel

Install sudo and run visudo, uncommenting the desired permissions for the wheel group:

apk add sudo && visudo

Logout and log back in as the new user.

Running River

Before running River for the first time, copy the sample init file from /etc/river to ~/.config:

install -Dm0755 /etc/river/init -t ~/.config/river

Set seatd to start automatically at next boot and also manually start it for this session:

sudo rc-update add seatd sudo rc-service seatd start

sudo addgroup sodface seat

Logout and log back in again.

Start River:

XDG_RUNTIME_DIR=/tmp river