1
0
Fork
You've already forked better
1
a better, nicer nice daemon
  • Rust 35.3%
  • C 34%
  • Nix 24.5%
  • Makefile 5.9%
  • Shell 0.3%
2026年05月19日 17:03:16 +02:00
contrib fix(nix): use the path /etc/better.toml 2026年05月19日 17:55:33 +03:00
libparse fix!: it is better.toml, not better.conf 2026年05月19日 10:31:56 -04:00
man docs: better.toml 2026年05月19日 10:32:34 -04:00
src
.gitignore
flake.lock
flake.nix fix: forAllSystems 2026年04月27日 19:14:31 -04:00
LICENSE
Makefile
README.md

Better

Better is a better nice daemon for Linux1 .

Features

  • Proudly no C++ code
  • can be configured after build time (looking at you, suckless)
  • (re)nicing processes
  • process spawn detection (duh)
    • via netlink (listens for exec(2) events)
    • potentially even more efficient event delivery via eBPF?
    • polling /proc
  • changing scheduler (i.e. SCHED_BATCH)
    • you can set realtime priority level too
  • changing IO class & priority
    • none
    • realtime
    • best-effort
    • idle
  • cgroups
    • v1
    • v2
  • easy PGO/BOLT/AutoFDO..?
  • memory safe (it has Rust components)
  • memory unsafe (it has C components)

Compile

You will need a Rust compiler, clang3 , lld, C headers and of course make(1). An internet connection might be needed to build the Rust portion4 .

# debug
make
# release
make release
# smol binary (you need rust nightly, and rust-src)
make release_small

Install

Follow directions in Compile, and then:

$ sudo make install

  1. If you want this to work on one of the BSDs or some other Unix2 , raise an issue and i'll work on it. I daily drive Linux and if there is no demand on the BSD side, there's no real point. ↩︎

  2. Except anything that runs XNU. I don't have Apple products. ↩︎

  3. You can tweak the Makefile to not use clang if you so desire. The final resultant binary may benefit less from LTO if this is the case. ↩︎

  4. To download a toml parser. ↩︎