def observe
near-v-framework@0.4.0.0 · domain/architecture/system/deployment/nix_darwin/effects.bend:254
import near-v-framework@0.4.0.0/domain/architecture/system/deployment/nix_darwin/effects.bend as Effects
import Base
import bend-kit-files@0.1.0.0/files.bend as Fs
import near-v-framework@0.4.0.0/domain/architecture/system/effs/io.bend as X
import near-v-framework@0.4.0.0/domain/architecture/system/plan/type.bend as P
import near-v-framework@0.4.0.0/domain/architecture/system/deployment/nix_darwin/type.bend as ND
import near-v-framework@0.4.0.0/domain/architecture/system/deployment/nix_darwin/ops.bend as NO
254def observe(+what: String, +nd: ND.NixDarwin, +uid: String, lsof: String) -> IO(List<&2, P.Step>):
255 do IO<List<&2, P.Step>>:
256 r : Result<&1, &1, U32 & String, List<&2, String>> <- Fs.list_dir("/run/current-system/user/Library/LaunchAgents")
257 +inst : List<&2, String> = installed(Result.default(&1, &1, U32 & String, List<&2, String>, r, []))
258 owned : List<&2, String> <- pids(List.append(&2, String, service_targets(NO.services(nd), uid), agent_targets(inst, uid)))
259 status : String <- X.run(NO.tailscale_command(nd), ["serve", "status", "--json"])
260 list : String <- X.run("/bin/launchctl", ["list"])
261 auto : String <- X.run("/usr/bin/defaults", ["read", "/Library/Preferences/com.apple.loginwindow", "autoLoginUser"])
262 return steps(what, nd, inst, owned, sockets(lines(lsof), "", ""), status, list, auto)