TUI configuration tool for the strip status bar
(part of the tile WM project), built on
crust. Reorder, toggle and edit your
asmite-driven status segments without ever opening ~/.striprc in a text editor.
- Bar globals:
height,top_offset,bg,fg,gap(and the advancedfont/char_width/baselineoverrides) - Segment editor for the ordered list of bar entries:
- Reorder with Shift-J / Shift-K (left-of-bar = top-of-list)
- Toggle on/off with t (disabled segments persist as
# segment …) - add a new segment / delete the selected one
- Edit name, extra-gap (
+N), per-segment color, command and refresh interval via guided prompts
- Live colour swatches for
bg,fgand per-segment colours - Reads & writes
~/.striprcdirectly — preserves your inline comments and groups them with the segment they precede - Atomic save: writes
~/.striprc.tmp, renames the previous file to~/.striprc.bak, then promotes the new file into place. Even a hard kill mid-save can never leave you with an empty config - After save, optionally restarts strip in-place (
pkill -x strip+setsid strip, so the new bar survives stripconf exit)
| Key | Action |
|---|---|
| j / k | Move within the current category |
| Tab / S-Tab | Switch between Bar globals and Segments |
| h / l | Adjust numeric global (height, gap, …) |
| Enter | Edit the current value (free-text input) |
| Shift-J / K | Reorder selected segment down / up |
| t | Toggle selected segment on/off |
| a | Add a new segment |
| d | Delete the selected segment (asks first) |
| W / s | Save to ~/.striprc (asks if you want to restart strip) |
| q / ESC | Quit (prompts to save when modified) |
cargo build --releaseThe binary lands at target/release/stripconf. Symlink or copy it
into your PATH:
ln -sf $PWD/target/release/stripconf ~/bin/stripconfheight = 22 # bar height (px)
top_offset = 0 # vertical offset from top
bg = #000000
fg = #cccccc
gap = 8 # default gap between segments
font = -*-fixed-*-* # optional X core font override
char_width = 0 # 0 = default
baseline = 0 # 0 = default
# segment NAME [+EXTRA_GAP] [#RRGGBB] CMD [args...] [INTERVAL_S]
segment time +16 #ffffff /home/geir/.../clock 1
segment cpu #aaaaaa /home/geir/.../cpu 4
# segment dnd #ffffff /home/geir/.../dnd-indicator 5 # disabled
A trailing decimal integer on a segment line (preceded by whitespace)
is parsed as the refresh interval in seconds. Omit it for static
segments. Lines starting with # segment … are recognised as disabled
segments — toggling with t preserves them in place.
If you ever do manage to end up with a broken ~/.striprc, the
previous good copy is one rename away:
mv ~/.striprc.bak ~/.striprc(stripconf only writes .bak after a successful .tmp write, so this
file is always either the previous saved state or absent.)
Part of the CHasm Suite
| Tool | Purpose |
|---|---|
| bare | Shell (assembly) |
| glass | Terminal emulator (assembly) |
| tile | Window manager + strip status bar (assembly) |
| show | File viewer (assembly) |
| chasm-bits | Asmite helpers fed into strip (assembly) |
| bareconf | Config TUI for bare (Rust) |
| glassconf | Config TUI for glass (Rust) |
| tileconf | Config TUI for tile (Rust) |
| stripconf | Config TUI for strip (Rust) |
Unlicense (public domain).