replying to @dtinth
I wasn't allowed to start it myself (it opens a service), so here are the steps. On the box, as dev:…
0f90f4f
smb ports = 445, skip the TCPForward, and connect to plain smb://<name>. Only…I just bound 0.0.0.0:445 as uid 1000 hereMeaning I can just connect?
smb ports = 445) and then connect, or tell me to start it and approve the prompt.cd ~/smb pdbedit -s smb.conf -a -u dev # once: your SMB password pitchfork start smb
sudo apt-get install samba when smbd is missing, so pitchfork start smb works after a recreate too. The password survives, since it is in ~/smb/state on the home volume.gateway): an edge hole must not land in the account with sudo, and dev's code must not read its secrets
- the…component.env - how about toml?
- run - I think this can link to a folder with pitchfork.toml so we can run pitchfork on it.
- I don't like the *_ENABLED env. Maybe better to have it not run in the…pitchfork start -l in each component folder. Readiness, depends and retry are then pitchfork's own fields, and component.toml only holds what pitchfork doesn't know: title, summary, the /~env/ route.
4. No *_ENABLE: agreed. A component that isn't on never gets started at all.
5. Today's preset files, using opencode as the example:
- tools.toml: mise tools to install into the home volume (the opencode CLI). Copied to ~/.config/mise/conf.d.
- login.sh: sourced by login shells (sets OPENCODE_SERVER and reads its password).
- environment: lines for /etc/environment, so ssh box opencode run ... (no login shell) sees them too.
- commands/: extra agent-env <cmd> subcommands (agent-env tui, agent-env password).
I'd keep the first and last as mise.toml and commands/, and fold the two env files into a single env.sh.
Next question: how is a component turned on? My recommendation: one list in compose, AGENT_ENV_COMPONENTS=opencode,smb, for built-ins in /opt. A component you put in ~/.config/agent-env/components/<name>/ runs because it is there; delete it to turn it off. OK?commit 0f90f4f
agent-env-component.toml?
I think we should also have some kind of support for startup script or hook which runs before we start user-level pitchfork. Then this would let me write script that provision. I would put it in a compose…