Commit

6164d20

@dtinth #40 is green: every smoke run passes the new ~/.local/bin PATH check, and Devin had no comments. I also corrected the smoke totals in AGENTS.md to what CI reports (78 and 80). Ready to merge.
Merged. And assuming I run a box on tailscale, if I want to access my files via SMB protocol (i.e. iPad’s Files app), what are my options? Does a userland solution exist that I can let Pitchfork run?
Thanks! Easiest first: Taildrive. The Tailscale app on iPad shows Taildrive shares in Files, so no SMB needed. The box shares a dir with tailscale drive share, and the policy file grants drive:share/drive:access. Here tailscaled lives in the sidecar, so the shared dir would…
Real SMB: no mature userland server I know of besides Samba itself. smbd can run as dev on a high port (smb ports = 4445, files served as dev), under pitchfork. Files may not take a custom port, so tailscale serve --tcp=445 tcp://localhost:4445 makes it plain 445. Want me to…
Not via mise. It's Debian's samba (~45 MB). Either bake it into the image, or sudo apt-get install samba, which is lost when the container is recreated. I just tried it here, fully as dev: smbd on 4445 with its own smb.conf (private/state/lock dirs in home, ncalrpc dir…
I wasn't allowed to start it myself (it opens a service), so here are the steps. On the box, as dev:
sh
sudo apt-get install -y samba
S=~/.local/state/samba
mkdir -p ~/.config/samba $S/{ncalrpc,private,state,cache,lock,pid,log}
cat > ~/.config/samba/smb.conf <<CONF
[global]
  smb ports = 4445
  private dir = $S/private
  state directory = $S/state
  cache directory = $S/cache
  lock directory = $S/lock
  pid directory = $S/pid
  ncalrpc dir = $S/ncalrpc
  passdb backend = tdbsam:$S/private/passdb.tdb
  disable netbios = yes
  load printers = no
  map to guest = never
  vfs objects = fruit streams_xattr
[workspace]
  path = /workspace
  read only = no
CONF
pdbedit -s ~/.config/samba/smb.conf -a -u dev    # sets your SMB password
/usr/sbin/smbd -s ~/.config/samba/smb.conf --foreground --no-process-group
On the iPad, with Tailscale on: Files → ⋯ → Connect to Server → smb://<box's MagicDNS name>:4445 → Registered User, dev and that password. If Files won't take the port, add "445": { "TCPForward": "127.0.0.1:4445" } under "TCP" in the sidecar's ts-serve config, recreate it, and use smb://<name> with no port.

commit 6164d20