1059f12ee0
asus-zephyrus-g14: the laptop's keys, scripts and i3 lines are the module's, with a resume backstop
jochen2026-10-04 15:49:46 +02:00
b098b64b22
Phase 3: asus-zephyrus-g14 and memory-pressure, with Go tools and long-running code
jochen2026-10-04 12:56:23 +02:00
f2601e40de
Merge pull request 'The licence manager's verb is public-key' (#274) from fix/the-verb-is-public-key into main
mesh-admin2026-10-04 13:33:34 +00:00
0dc13965e5
The licence manager's verb is public-key: a seat's verb is lower-case letters, digits and hyphens
jochen2026-10-04 15:33:28 +02:00
948e794e8b
Merge pull request 'The licence manager's seat declares public_key' (#273) from fix/the-seat-serves-public-key into main
mesh-admin2026-10-04 13:22:27 +00:00
e8562b58ce
The licence manager's seat declares public_key, which claude_code_add_api_key asks (novox/hq ADR 0209)
jochen2026-10-04 15:22:15 +02:00
1db3fdeb2f
Merge pull request 'lemurs, i3status-rust: what the first assignment refused' (#272) from fix/desktop-first-assign into main
mesh-admin2026-10-04 13:17:21 +00:00
c790ee24d3
lemurs, i3status-rust: what the first assignment refused
jochen2026-10-04 15:17:07 +02:00
c5c47b92f4
Merge pull request 'A login moves its node; an API key is added from any node, sealed (hq ADR 0209)' (#271) from feat/a-login-moves-its-node into main
mesh-admin2026-10-04 13:12:03 +00:00
4ef4983d0d
A login moves its node; an API key is added from any node, sealed (novox/hq ADR 0209)
jochen2026-10-04 15:11:54 +02:00
1c799101fa
Merge pull request 'Phase 2 desktop: thirteen modules, one per piece of the graphical session (hq ADR 0208, to-be 42)' (#270) from feat/phase-2-desktop into main
mesh-admin2026-10-04 13:09:48 +00:00
19a79bef86
i3, screen-lock: the session's output to the journal, and the colour locker removed before i3lock is checked
jochen2026-10-04 15:09:39 +02:00
12ee8f41d9
Merge branch 'feat/phase-2-desktop-core' of /tmp/claude-1000/-home-jochen-projects-novox-hq/a2753bc7-871c-4aac-b6b6-21e3919ee6cd/scratchpad/wg/mesh-catalog into HEAD
jochen2026-10-04 14:56:11 +02:00
a44a1fc51e
adwaita: the theme as a module, dark by default, for GTK, Qt, the portal and the cursor (hq ADR 0208)
jochen2026-10-04 13:21:28 +02:00
e4abc6eb88
xterm: the terminal holds node-terminal-emulator; its resources through xorg's slot (hq ADR 0208)
jochen2026-10-04 13:15:22 +02:00
34829e39fe
i3: the window manager holds node-display-session; its config improved and a checked reload watcher (hq ADR 0208)
jochen2026-10-04 13:10:43 +02:00
98eb3fe33c
lemurs: the login manager holds node-login-manager, its config in the current format (hq ADR 0208)
jochen2026-10-04 12:57:31 +02:00
b2c170acda
xorg: the display server holds node-display-server and writes the session's start (hq ADR 0208)
jochen2026-10-04 12:54:13 +02:00
6d06648bc1
i3status-rust: no domain names in the icon file's comments (the catalogue check refuses them)
jochen2026-10-04 13:16:02 +02:00
e810afb3eb
gnome-keyring: the secret service as a module, claiming node-secret-service (hq ADR 0208, ADR 0102)
jochen2026-10-04 13:07:06 +02:00
838e1c2616
i3status-rust: the bars as a module, claiming node-bar (hq ADR 0208)
jochen2026-10-04 13:04:52 +02:00
91c6fa6fce
feh: the wallpaper as a module, its image an archive of its own (hq ADR 0208, ADR 0205)
jochen2026-10-04 13:00:35 +02:00
c42cd285e2
clipmenu: the clipboard manager as a module, claiming node-clipboard and serving history and copy (hq ADR 0208)
jochen2026-10-04 12:59:14 +02:00
0fa90e5cf2
screen-lock: the lock screen as a module, claiming node-lock-screen and serving lock (hq ADR 0208)
jochen2026-10-04 12:56:35 +02:00
8bbea4a2ad
dunst: the notifier as a module, claiming node-notifier and serving send and history (hq ADR 0208)
jochen2026-10-04 12:53:39 +02:00
f0f0a79623
rofi: the launcher as a module, claiming node-launcher and serving menu (hq ADR 0208)
jochen2026-10-04 12:51:17 +02:00
04894e6618
picom: the compositor as a module, claiming node-compositor (hq ADR 0208)
jochen2026-10-04 12:46:44 +02:00
b8982b4a7c
Merge pull request 'Workstation basics: fonts, docker-compose, snapd, flatpak, cups, bluetooth, xclip, dmenu (hq to-be 42 phase 2), tools in Go' (#269) from feat/phase-2-workstation-basics-rebased into main
mesh-admin2026-10-04 11:02:42 +00:00
838a6e510b
dmenu: the package, which makes the notifier's menu work, and a menu tool (hq to-be 42 phase 2.7)
jochen2026-10-04 13:01:25 +02:00
b1b7e58e4b
xclip: the package, and the operator's clipboard from the mesh (hq to-be 42 phase 2.7)
jochen2026-10-04 13:01:25 +02:00
3b43a1ef4d
bluetooth: the stack, its daemon, and the devices as tools (hq to-be 42 phase 2.9)
jochen2026-10-04 13:01:25 +02:00
b352f3920e
cups: the scheduler and driverless printing, and the printers as tools (hq to-be 42 phase 2.9)
jochen2026-10-04 13:01:25 +02:00
152ef9621d
flatpak: the package, Flathub with it, and the installations as tools (hq to-be 42 phase 2.9)
jochen2026-10-04 13:01:25 +02:00
db297e8bdd
snapd: tools for the snaps, the package blocked on the mesh's AUR repository (hq to-be 42 phase 2.9)
jochen2026-10-04 13:01:25 +02:00
45befbbd02
docker-compose: the package, and its projects as tools (hq to-be 42 phase 2.9)
jochen2026-10-04 13:01:25 +02:00
86cf6d438d
fonts: the five decided faces as packages, and what the generic families mean (hq to-be 42 phase 2.1)
jochen2026-10-04 13:01:25 +02:00
4d028d40c5
Merge pull request 'Phase 1 system modules: sudo, localization, time-sync, pacman, logrotate, avahi (hq to-be 42), tools in Go' (#268) from feat/phase-1-system-modules-rebased into main
mesh-admin2026-10-04 10:50:38 +00:00
5c212531da
avahi: the discovery daemon declared, and why it hears nothing reported
jochen2026-10-04 12:46:19 +02:00
2e082d1680
logrotate: rotation on every machine, its base configuration owned
jochen2026-10-04 12:43:10 +02:00
d9336d11d0
pacman: the package manager's configuration, mirrors and cache as a module
jochen2026-10-04 12:37:40 +02:00
21d8a7f6b4
time-sync: one time daemon, timesyncd, with its servers declared
jochen2026-10-04 12:30:54 +02:00
a8d308d440
localization: locale, time zone and console keymap as one module
jochen2026-10-04 12:28:03 +02:00
f015aba34a
sudo: declare the operator account's passwordless escalation as a module
jochen2026-10-04 12:25:22 +02:00
44aafc9b1c
Merge pull request 'docker: the container runtime as a module, holding node-container-runtime, tools in Go (hq ADR 0207, to-be 42)' (#267) from feat/docker-module into main
mesh-admin2026-10-04 10:44:38 +00:00
0d72c3f29a
docker: the container runtime as a module, with its tools in Go
jochen2026-10-04 12:37:44 +02:00
3ac7c0289e
Merge pull request 'ssh-client: the mesh's region first in ~/.ssh/config, its hosts in config.d, tools in Go (hq research 027/03, to-be 42)' (#266) from feat/ssh-client-owns-ssh into main
mesh-admin2026-10-04 10:38:56 +00:00
dde9c264f5
ssh-client: the mesh's region first in ~/.ssh/config, its hosts in config.d, tools in Go
jochen2026-10-04 12:37:44 +02:00
24f11f2138
Merge pull request 'The licence manager binds a node reporting an account it already holds' (#265) from fix/a-reporting-node-is-bound-to-its-account into main
mesh-admin2026-10-04 10:34:52 +00:00
af63f12129
The licence manager binds a node reporting an account it already holds
jochen2026-10-04 12:34:39 +02:00
a72df57214
Merge pull request 'photos authenticates against the database its user lives in (hq issue 232)' (#264) from fix/photos-authenticates-against-its-own-database into main
mesh-admin2026-10-04 10:34:16 +00:00
5d59b35cf7
photos authenticates against the database its user lives in (hq issue 232)
jschoubben2026-10-04 12:33:56 +02:00
b485379505
Merge pull request 'The licence manager (Go) and claude-code's half of ADR 0206' (#262) from feat/the-licence-manager into main
mesh-admin2026-10-04 10:31:25 +00:00
306d01d74d
claude-code in Go (operator: always Go)
jochen2026-10-04 12:27:36 +02:00
19a4055bb5
Merge pull request 'The photo clients publish the endpoint they declare (hq issue 227)' (#263) from fix/the-photo-admin-client-publishes-the-port-it-declares into main
mesh-admin2026-10-04 10:27:22 +00:00
1bc6daf31b
The photo clients publish the endpoint they declare (hq issue 227)
jschoubben2026-10-04 12:25:28 +02:00
15b2e6b86e
The licence manager, in Go, and claude-code's half of ADR 0206
jochen2026-10-04 12:18:51 +02:00
9208f7409a
Merge pull request 'systemd owns its package; systemd-networkd configures networkd and claims none' (#261) from fix/systemd-owns-its-package into main
mesh-admin2026-10-04 10:17:23 +00:00
a80af7a97f
systemd owns its package; systemd-networkd configures networkd and claims none
jochen2026-10-04 12:17:08 +02:00
83a51832d7
Merge pull request 'claude-code writes its managed files from a staged file, not /dev/stdin' (#258) from fix/claude-code-writes-managed-from-a-file into main
mesh-admin2026-10-04 10:01:17 +00:00
9e63a258d0
Merge pull request 'zsh: keep each PATH directory once' (#260) from fix/zsh-unique-path into main
mesh-admin2026-10-04 09:34:43 +00:00
328d90fb88
zsh: keep each PATH directory once
jochen2026-10-04 11:34:36 +02:00
ca5ab288f6
Merge pull request 'zsh: save history and initialise completion' (#259) from fix/zsh-completion-and-history into main
mesh-admin2026-10-04 09:33:28 +00:00
5fd0f72221
zsh: save history and initialise completion
jochen2026-10-04 11:33:17 +02:00
5003dc0377
claude-code writes its managed files from a staged file, not /dev/stdin
jochen2026-10-04 11:31:44 +02:00
0a78d130e5
Merge pull request 'claude-code watches its MCP servers beside the handshake, and retries' (#257) from fix/claude-code-watches-without-blocking into main
mesh-admin2026-10-04 09:21:26 +00:00
4295aad88e
claude-code watches its MCP servers beside the handshake, and asks again until the state answers (novox/hq ADR 0201)
jochen2026-10-04 11:13:33 +02:00
9dfd3b1105
Merge pull request 'claude-code: the operator's agent, its managed configuration and the licence consumer side (hq design 36, to-be 40 WP2)' (#244) from feat/claude-code-agent into main
mesh-admin2026-10-04 09:01:31 +00:00
22e8714040
Merge pull request 'The shell and the account's environment as modules: node-env, zsh, powerlevel10k, two plugins, and systemd finished (hq to-be 41 WP3, WP4)' (#255) from feat/the-shell-and-its-environment into main
mesh-admin2026-10-04 08:55:11 +00:00
11e7ede8a4
Merge remote-tracking branch 'origin/main' into feat/the-shell-and-its-environment
jochen2026-10-04 10:31:03 +02:00
27315d35cf
Merge pull request 'The store does not collect until every controller composes the window (hq ADR 0189)' (#254) from fix/the-store-collects-once-the-window-is-understood into main
mesh-admin2026-10-04 02:26:57 +00:00
525c639041
The store does not collect until every controller composes the window (hq ADR 0189)
jschoubben2026-10-04 04:26:38 +02:00
42c80fa9e1
zsh: no doubled blank line in the block when the first slot is empty
jochen2026-10-04 04:05:30 +02:00
56e0830700
zsh-autosuggestions, zsh-syntax-highlighting: the plugins as packages and one line each
jochen2026-10-04 04:04:35 +02:00
0844b35ebb
powerlevel10k: the prompt as a pinned archive of the module's own, loaded from a slot
jochen2026-10-04 04:04:10 +02:00
566739e02c
zsh: hold the mesh's login-shell seat, source the environment, and leave the rest to slots
jochen2026-10-04 04:02:54 +02:00
38b56a7877
node-env: the account's environment as one module's two files
jochen2026-10-04 03:59:50 +02:00
0596503db5
systemd: act as the runtime's account can, and never read a failure as an answer
jochen2026-10-04 03:58:19 +02:00
3668b02b94
claude-code keeps its MCP servers in state, not events (novox/hq ADR 0202)
jochen2026-10-04 03:48:41 +02:00
c0159ca0a1
Merge pull request 'Group 8: minio declares the bucket it derives (hq ADR 0201), and the store collects nightly (hq ADR 0189)' (#229) from feat/the-store-keeps-what-the-records-name into main
mesh-admin2026-10-04 01:47:48 +00:00
159ed53103
Rebased onto main: ADR 0188 renumbered to 0201, and minio takes the sdk at 0.1.7
jschoubben2026-10-04 02:45:13 +02:00
723e676b75
The store enables deletion and collects nightly (hq ADR 0189)
jschoubben2026-10-02 21:49:03 +02:00
661114370f
minio declares the bucket it derives; its consumers stop transcribing it (hq ADR 0188)
jschoubben2026-10-02 21:24:43 +02:00
a1d7b9ad5a
systemd: the service manager as a module — holds node-service-manager and answers for the units in both scopes
jochen2026-10-02 16:47:48 +02:00
5548b0f4e9
zsh: the shell as a module — package, the mesh's ~/.zshrc block, the login-shell seat and execute
jochen2026-10-02 16:40:34 +02:00
295cc59e1e
claude-code: declare using the licence manager's seat when that module exists; until then the mesh refuses a seat no module declares
jochen2026-10-04 02:23:34 +02:00
6a7e4ebd5e
claude-code over NATS: licence events, a token by request, a login pushed to the manager, MCP servers registered per node or mesh-wide
jochen2026-10-04 02:23:23 +02:00
9e8146192c
Merge pull request 'mssql: give TLS a host name when the server is an address' (#252) from fix/mssql-tls-names-the-host into main
mesh-admin2026-10-03 23:31:40 +00:00
6171d747db
mssql: give TLS a host name when the server is an address
jochen2026-10-04 01:31:31 +02:00
84609c0373
Merge pull request 'The last three: mesh-catalog, mongodb and mssql code moves into bundles the node's runtime serves (hq ADR 0198, to-be 38 WP4c)' (#250) from feat/0198-the-last-three-module-code-moves into main
mesh-admin2026-10-03 23:28:58 +00:00
28d5e7f939
Merge pull request 'audit-logger: the test subscribes as the module does' (#251) from fix/audit-logger-test-hears-every-event into main
mesh-admin2026-10-03 23:21:52 +00:00
4128380a3d
audit-logger: its test subscribes as the module does and expects local event names
jochen2026-10-04 01:21:40 +02:00
cf57d3fd8f
mssql: its handlers, tools and provisioner run in the node's runtime, through the driver in its bundle (hq ADR 0198)
jochen2026-10-04 01:17:41 +02:00
da8a46cfe8
mongodb: its handlers, tools and provisioner run in the node's runtime, through the driver in its bundle (hq ADR 0198)
jochen2026-10-04 01:17:41 +02:00
ed50130a6a
mesh-catalog: its consumer and tools run in the node's runtime, and its preparation is a run-once process (hq ADR 0198)
jochen2026-10-04 01:17:41 +02:00
bd2123166f
Merge pull request 'Waves 2-3: nine modules' code moves into bundles the node's runtime serves (hq ADR 0198, to-be 38 WP4c)' (#248) from feat/0198-waves-2-3-module-code-moves into main
mesh-admin2026-10-03 23:01:18 +00:00
d9db931bd0
Merge pull request 'mosquitto: run mosquitto_ctrl inside the broker's container' (#249) from fix/mosquitto-ctrl-from-its-container into main
mesh-admin2026-10-03 23:01:03 +00:00
69f2efb591
mosquitto: run mosquitto_ctrl inside the broker's container
jochen2026-10-04 01:00:51 +02:00
568674fef7
anthropic-consumer: its usage runs in the node's runtime, and its apply is a scheduled process (hq ADR 0198)
jochen2026-10-04 00:37:49 +02:00
3c6b70845c
openai-consumer: its apply is a scheduled process (hq ADR 0198)
jochen2026-10-04 00:36:58 +02:00
35ef72081f
route-adapter: its step is a run-once process (hq ADR 0198)
jochen2026-10-04 00:36:40 +02:00