Files
mesh-catalog/modules/feh/README.md
T
jochen 1d4de00603 i3: other modules' lines are contributions to node-display-session (hq ADR 0212)
rofi, clipmenu, feh, i3status-rust and the laptop's model module wrote files into i3's config.d,
naming no dependency on the window manager. They now contribute their lines; i3 places them under a
line naming each module, and config.d is the operator's alone. The catalogue-wide test composes the
contributions as the controller does and checks the whole with i3 -C.
2026-10-05 10:11:27 +02:00

2.6 KiB

feh

The wallpaper as a module (novox/hq ADR 0208, research 026/05).

  • Installs feh and requires x11-display on its own machine. It holds no seat: a wallpaper is not a role anything else calls.
  • Carries the wallpaper itself. wallpaper/default.jpg is built into an archive of the module (ADR 0205) and unpacked into ~/.local/share/feh/wallpapers/, which the module owns.
  • Owns ~/.fehbg, which sets that image, filled, on every monitor, without rewriting itself (--no-fehbg).
  • Runs ~/.fehbg once per session, from the session's start (the xinitrc slot normal).
  • Binds $mod+Shift+b to the same file, as its own i3 drop-in (50-feh.conf): the declared wallpaper back, after a monitor change.

Tools

tool does
feh_set set images (one for all monitors, or one each) in a mode: fill, center, max, scale, tile. For this session; the declared wallpaper returns at the next login
feh_current the declared wallpaper (from ~/.fehbg) and the one feh_set put up in this session

feh_set never writes ~/.fehbg. A wallpaper that should stay is a change to this module, or a setting once issue 168 closes, not a file the next push would overwrite.

What it improves on what was found

  • The wallpaper no longer lives in the predecessor's tree. ~/.fehbg pointed into a directory of the retired predecessor's. Deleting that directory would have left the desktop black, silently.
  • One image file, the same on both workstations. The image was byte-identical on both. It is now the module's own.

What it leaves as found

  • The predecessor's wallpaper directory. It is part of the predecessor's tree, which goes as a whole.

Migration (ADR 0182)

  • The first push keeps the found ~/.fehbg once, then writes the module's.
  • Once the xorg module writes the session's start, delete the ~/.fehbg & line from your own part of ~/.xinitrc.
  • The image's origin is the predecessor's desktop module. Check that it may be redistributed before this catalogue is published anywhere public.

Blockers

  • x11-display and the xinitrc slot are ADR 0208's. Until the controller knows them, mctl reads them as unknown.

Its i3 lines are a contribution (changed 2026-10-05, novox/hq ADR 0212)

The module no longer writes a file into i3's config.d. Its window-manager lines (the source is still under files/i3/ where it had one) are a contribution to node-display-session. The i3 module places them in its own configuration under a # <module> line, so this module depends on a window manager being assigned beside it.