package oxbow
Install
dune-project
Dependency
Authors
Maintainers
Sources
md5=a637acaa0e19046cd65fff733874eb97
sha512=76230cbecd7510de7a05b5d1f335915ef7b6c4aa557d8dbfd23591606618d2cfa25082d17b93f2f4b53a118d1cbf6a80e4ad51cf0f099b4921fb83d6df0c9801
Description
oxbow is a window manager for river 0.4.6+, written in OCaml. It speaks the river-window-management-v1 protocol and manages windows with built-in dynamic layouts.
The package installs two executables:
- oxbow: the window manager
- oxctl: a CLI client for commands, queries, and event subscriptions
Configuration is an init script of oxctl commands.
Added to opam-repository:
README
oxbow
oxbow is a dynamic tiling window manager for the Wayland compositor River, written in OCaml. Inspired by dwm and river-classic, oxbow aims to manage your windows predictably. Configure it with a simple init script, and control it with oxctl from your own scripts.
Features
- Tags: Group windows with tag sets, per-tag layouts, and operations on tags.
- Layouts: dwm-like tiling, niri-ish scrolling in four orientations, "alt-tab" overview, and pure floating.
- Windows: Scratchpads, sticky windows, user labels, window swallowing, and drag with retile.
- Rules: Regex window matching to configure initial tags, output, floating, size, and presentation.
- IPC: Control windows, configure tags, query objects, and subscribe to events.
Documentation
Full documentation is available at oxbow-wm.readthedocs.io.
Installation
oxbow requires river 0.4.6 or later.
Install with opam:
opam pin add oxbow https://github.com/3L0C/oxbow.gitOr with Nix:
nix profile install github:3L0C/oxbowSee the installation guide for build dependencies, NixOS and Home Manager configuration, and shell completion.
Contributing
Contributions are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.
AI disclosure
Claude Code was used in the following ways:
- design discussions
- debugging
I've written and will continue to write the code.
Dependencies (17)
-
yojson
>= "3.0" -
xkbcommon
>= "0.1" -
wayland
>= "2.3" -
re
>= "1.12" -
ppx_yojson_conv_lib
>= "0.17" -
ppx_yojson_conv
>= "0.17" -
logs
>= "0.10" -
landmarks-ppx
>= "1.7" -
landmarks
>= "1.7" -
fmt
>= "0.11" -
eio_posix
>= "1.3" -
eio_main
>= "1.2" -
eio
>= "1.3" -
cmdliner
>= "2.1" -
dune-build-info
>= "3.22" -
ocaml
>= "5.4" -
dune
>= "3.22"
Used by
None
Conflicts
None