zsh and systemd: the first two modules of the operator's machine (hq to-be 37) #224
Open
mesh-admin
wants to merge 2 commits from
feat/the-operators-machine into main
pull from: feat/the-operators-machine
merge into: :main
:main
:feat/the-store-keeps-what-the-records-name
:feat/a-provider-declares-what-it-derives
:feat/the-operators-machine
:fix/adr-0170-cited
:feat/the-firewall-seat-serves-its-verbs
:fix/resolver-passes-the-dnssec-bit
:fix/mailu-admin-asks-the-machines-resolver
:fix/110-the-resolver-answers-a-container
:feat/qbittorrent-for-ace
:feat/servarr-api-provision
:feat/home-assistant-for-ace
:feat/tautulli-for-ace
:feat/bookshelf-for-ace
:feat/lidarr-for-ace
:feat/radarr-for-ace
:feat/sonarr-for-ace
:feat/kometa-for-ace
:feat/plex-for-ace
:fix/manifests-publish-software-ports
:feat/nzbget-for-ace
:feat/bazarr-for-ace
:fix/sidecars-dial-the-port-they-were-given
:feat/ombi-for-ace
:chore/remove-the-network-checker-module
:feat/a-network-checker-module
:feat/modules-name-their-endpoints
:fix/a-routed-module-listens-from-the-mesh
:fix/the-resolver-declares-both-protocols
:fix/sshd-declares-the-daemon-it-owns
:fix/fail2ban-bans-through-what-every-machine-has
:fix/fail2ban-declares-the-log-its-own-jail-reads
:fix/fail2ban-restarts-on-its-log-target
:fix/fail2ban-declares-where-it-logs
:feat/the-catalogue-hears-what-it-missed
:feat/the-catalogue-prepares-its-own-schema
:fix/the-catalogue-declares-the-event-it-emits
:feat/a-merge-rebuilds-what-it-changed
:fix/a-merge-older-than-the-watching-is-history
:fix/a-merge-announced-is-said
:fix/the-forge-watches-every-repository
:feat/the-forge-announces-every-merge
:feat/nats-serves-the-meshs-certificate
:fix/nats-declares-its-base
:feat/amqp-leaves-the-catalogue
:restore/broker-claim
:revert/broker-seat-claim
:fix/broker-seat-must-stay-held
:fix/go-126-base
:feat/nats-genesis
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The first two modules of novox/hq to-be 37, under ADR 0173–0177. Depends on hq #293, mesh-controller (the seat and the
name/userplaceholders) and mesh-host (user-scoped units) PRs of the same branch name.zsh— a package; the mesh's default~/.zshrcas a block inside the account's file (into: block, path${machine:account-home}/.zshrc, owner${machine:account}), so the operator's own lines around it survive every push (ADR 0174 as the host realises it); ausershape that makes zsh the account's login shell; thelogin-shellseat declared with its one verb; a tools bundle withexecuteunder the seat's name andzsh_configunder the module's (ADR 0176). No container, no process.systemd— claimsnode-service-managerand serves its eight verbs over both scopes, reaching the account's manager assystemctl --user --machine=<account>@when the runtime is not that account; one own tool,systemd_failed(ADR 0177). No container, no process.Both pass
module checkagainst a controller carrying the seat, and their tools type-check against the SDK. Neither can serve yet: their tools wait on the node tools runtime (ADR 0175), which is the next piece — the bundles build and the manifests register ahead of it. Two things the manifests cannot say and the controller does not yet do: theusershape applies whereverzshis assigned rather than only where it holds the seat, and the runtime learns the account fromMESH_OPERATOR_ACCOUNT, which nothing sets yet.Do not assign until the runtime exists and the operator account is stated on the nodes.
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.