wayland, linux, window manager, river-based, janet
A window manager for the river Wayland compositor.
ashrwm is currently around 900 lines of Janet but capable enough to use as my daily driver.
features
- Dynamic tiling with layouts
- Tiling layout
- Grid layout
- Scroller layout
- Monocle layout
- Tags
- Each window has exactly one tag
- An arbitrary number of tags can be displayed at once on each output
- Each tag can be displayed on at most one output at a time
- Floating windows
- Sticky windows
- Focus follows mouse
- libinput configuration
- Hot reload configuration
- A REPL
install
AUR
paru -S ashrwm
OR
paru -S ashrwm-git
building
Run `zig build`. All dependencies will be fetched by Zig and built from source.
Requires Zig 0.16, a statically linked Zig binary can be obtained from https://ziglang.org/download/.
usage
Run ashrwm inside https://codeberg.org/river/river. Requires river v0.4.5. It may be useful to start ashrwm from river's
init script in ~/.config/river/init.
example river init file:
#!/bin/sh
# essentials
dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=ashrwm
/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
# startup programs
emacs --daemon &
swayidle -w timeout 600 "systemctl suspend" before-sleep "swaylock" &
ashrwm > ~/.ashrwm.log 2>&1
On startup ashrwm will evaluate ~/.config/ashrwm/config.janet will be
tried, if it does not exist or has a error then it falls back to system
default in /etc/ashrwm/config.janet.
Get the default config by, if you have not done it already.
cp /etc/ashrwm/config.janet ~/.config/ashrwm/config.janet
Passing a file to ashrwm as an argument will evaluate that file instead.
See example/config.janet.
screenshots
credits
ashrwm is a fork of rijan made by the developer of river Isaac Freund.