syndicate_utils/src/msg.nim

22 lines
681 B
Nim
Raw Normal View History

# SPDX-FileCopyrightText: ☭ Emery Hemingway
# SPDX-License-Identifier: Unlicense
import std/[asyncdispatch, sequtils, os]
import preserves, syndicate, syndicate/capabilities
proc unixSocketPath: string =
result = getEnv("SYNDICATE_SOCK")
if result == "":
result = getEnv("XDG_RUNTIME_DIR", "/run/user/1000") / "dataspace"
proc main =
let label = getAppFilename().extractFilename
bootDataspace(label) do (root: Ref; turn: var Turn):
connectUnix(turn, unixSocketPath(), capabilities.mint()) do (turn: var Turn; ds: Ref):
message(turn, ds, initRecord(label, map(commandLineParams(), parsePreserves)))
for i in 0..3: poll(20)
# A hack to exit
main()