Skip to content

Repository files navigation

hackable

The Base42 hackable desktop: self-written replacements for the day-to-day system software we use, in the suckless spirit — small C programs, compiled-in configuration, minimal dependencies, -Wall -Wextra -pedantic clean.

Each tool lives in its own repository and is usable on its own; this meta-repo ties them together. The submodule pins are a known-good set: these exact commits run together as a live desktop session.

Project What it is
hed Terminal text editor, plugin-first architecture, tree-sitter highlighting, swappable vim/emacs/vscode keymaps
hterm SDL2 terminal emulator; SDL-free emulator core with headless tests
hwm Scrollable-column (niri-style layout, dwm-style construction) X11 tiling window manager
hws Niri-style workspace/window overview overlay for X11 (EWMH, live composited thumbnails)
htray System tray + status bar overlay for X11 (XEmbed, single file)
hnd Desktop notification daemon (org.freedesktop.Notifications over raw libdbus, single file)
hsm Runit-style service supervisor (daemon hsmd + client hsm), in progress
hml IMAP/Maildir mail sync, mbsync-compatible on-disk state, in progress

Planned, not yet started: hweb (browser).

Build the whole desktop

git clone --recursive https://github.com/42dotmk/hackable
cd hackable
make            # build every project
make install    # symlink everything into ~/.local/bin (no sudo)
make hwm        # or build just one

Each subproject's own README covers its usage and per-project install.

Conventions

  • Pure C99 (hed is C11), minimal dependencies; the compiler flags are the linter.
  • Configuration is compiled in (config.h / config.c), never runtime config files: change the source, recompile.
  • make builds, make install symlinks into ~/.local/bin, make clean cleans — in every repo.
  • The tools interoperate only through standard protocols (EWMH, XEmbed, D-Bus, OSC escape sequences), so each remains usable with third-party counterparts.

About

The Base42 hackable desktop — self-written system software suite (meta-repo, known-good submodule pins)

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages