1
0
Fork
You've already forked de
0
A collection of utilities that make up my desktop environment
C 75.1%
Zig 20.5%
Makefile 2.3%
Python 2.1%
2025年02月13日 15:58:46 -03:00
benches Makefile: force using clang for now 2025年02月09日 11:35:55 -03:00
config use draw_symbol to draw tags and alsa 2025年01月17日 19:48:06 -03:00
fcft render: faster draw for FT_PIXEL_MODE_MONO 2025年02月09日 16:41:18 -03:00
list_path list_path: writev and nonblocking stdout 2025年01月12日 18:27:12 -03:00
minriver add minrivctl 2025年01月12日 14:17:21 -03:00
protocols Initial Commit 2025年01月03日 09:31:57 -03:00
.gitignore update TODO 2025年01月12日 18:38:01 -03:00
commands.h Initial Commit 2025年01月03日 09:31:57 -03:00
LICENSE Initial Commit 2025年01月03日 09:31:57 -03:00
Makefile Makefile: force using clang for now 2025年02月09日 11:35:55 -03:00
modules_width.c draw emojis with color 2025年01月29日 08:51:18 -03:00
README.md nuke pixman 2025年01月17日 18:01:29 -03:00
render.c render: blend emojis properly 2025年02月09日 16:52:41 -03:00
render.h render: new SIMD implementation using 16bits elements 2025年02月06日 10:23:35 -03:00
riverbar-ctl.c separate common code in util.h 2025年01月05日 16:33:45 -03:00
riverbar.c render: new SIMD implementation using 16bits elements 2025年02月06日 10:23:35 -03:00
rivermenu.c riverbar: fix menu.entries -> menu.ents 2025年02月13日 15:58:46 -03:00
TODO update TODO 2025年01月29日 16:39:50 -03:00
utf8.h utf8: better non-short-circuiting code, with comments 2025年02月08日 20:36:42 -03:00
util.h separate common code in util.h 2025年01月05日 16:33:45 -03:00

A customized desktop environment for river

Resource-efficient utilities for the river window manager.

THIS PROJECT HAS LOT OF THINGS HARD-CODED FOR CONVENIENCE.

It is not meant to be used as a general purpose desktop enviornment. If you want to use it, expect to have to change its source code to fit your purposes.

Programs

  • riverbar -- a bar adapted from dwlb, and heavily modified.
  • riverbar-ctl -- an utility to control riverbar
  • rivermenu -- a menu inspired by dmenu, written from scratch for wayland. It uses the same font rendering as riverbar for seemless integration
  • mintile -- a rivertile clone written to try to create the smallest possible executable.
  • minrivctl -- a riverctl clone written to try to create the smallest possible executable.
  • list_path -- a program that can list all executable binaries in the $PATH. Also written to be as small as possible.

Planed

  • rewrite all programs in zig
  • a notification daemon
  • a stand-alone systray application

Dependencies

  • zig 0.13
  • libwayland-client
  • libwayland-cursor
  • fontconfig
  • freetype2
  • harfbuzz

Building

make

Usage

riverbar

Begin by executing the riverbar program:

riverbar

Control riverbar with riverbar-ctl:

riverbar-ctl

rivermenu

rivermenu reads lines from stdin and creates a menu base on them:

echo "option1\noption2" | rivermenu

Once you select an option, rivermenu will print it to stdout.

Configuration

Edit config.h to fit your particular configuration.

Modifying the code

config.h does not expose great many options. If you want something else you will have to change the code itself.

Acknowledgements

A big thanks to the fcft project, that we use for rendering. Also, the creator of fcft has many utilities similar to the ones in this repository that served as inspiration.

riverbar project was built based on dwlb, and slowly modifying its code to adapt it to river.

Finally, also obviously a big thanks to the river project and its developers.