Files
dat-thang/docs/dat.1
T
divorce b735900f2e 0.0.002
ddat interop with dat js
cable interop with cabal js
ddat's frontend = dat-thang
cable fe = cable-thang
dillo support based on cel's dillo-dat
bootstrap node
xplatform support

Signed-off-by: divo <418@cryspace.space>
2026-10-19 00:17:02 -04:00

113 lines
4.4 KiB
Groff

.Dd 2025-09-25
.Dt DATT 1
.Os WORLIO
.ds REPO dat://59d8099399510e23a3c693fb5887b7bba1586f4117f7ef1c5872622ada0c1181
.Sh NAME
.Nm dat-thang
.Nd call a dat method
.Sh SYNOPSIS
.Nm
.Oo
.Op Fl c Ar create
.Oo
.Op Fl d Ar debug
.Oo
.Op Fl s Ar sync
.Oo
.Op Fl t Ar type
.Oo
.Op Fl v Ar version
.Ar method
.Op Ar argument ...
.Oc
.Sh DESCRIPTION
The C dat command creates and maintains local Dat archives. Archive metadata
is append-only, so each metadata entry advances the archive version and older
file contents remain addressable by their earlier version number.
.Pp
The status subcommand reports the archive key, current version, metadata entry
count, and latest live path counts. The files subcommand lists the paths at
the current version, or at a selected historical version.
.Pp
Canonical archive addresses use the historical 64-character hexadecimal key.
Base32768 is available for compact test addresses with Cm dat url --compact;
the parser accepts both forms. Secret key filenames and dat-dns records
continue to use hexadecimal keys.
.Pp
The library provides an archive session, Cesspool discovery, and a Hypercore
feed codec. The `hypercore` build selects the legacy V6 wire session. Discovery
and transport establishment are separate layers.
.Sh COMMANDS
.Bl -tag -width "checkout"
.It Cm create , init
Create an archive, write its title, description, and dat:// address as a
`dat.scm` S-expression, and print the address. New archives do not get a
`dat.json` sidecar. `--title` and `--description` set the presentation fields.
.It Cm share , sync
Import changed local paths into the archive.
.It Cm status
Show the archive key and metadata/version counts.
.It Cm files Op version
List the live files and directories at a version.
.It Cm log
Show appended metadata entries, including history and tombstones.
.It Cm cat Ar version path
Write a historical file's bytes to standard output.
.It Cm checkout Ar version destination
Export a historical snapshot to a directory.
.It Cm url Op version Op path
Print an archive URL, optionally pinned to a version and path.
.It Cm resolve Ar hostname
Resolve a dat-dns hostname through the legacy HTTPS /.well-known/dat response
and print its canonical dat:// key and TTL. This does not use the operating
system DNS TXT resolver.
.It Cm dns set Ar hostname archive-dir|dat://key
Create or replace this machine's local dat-dns name mapping. Names are stored
in Pa ~/.dat/dat-dns and used by resolve and the dat-thang SITE field. For
public Dillo-compatible resolution, publish an HTTPS /.well-known/dat file
whose first line is dat:// followed by the archive's 64-digit key and whose
optional second line is TTL=<seconds>.
.It Cm dns list
List local dat-dns name mappings.
.It Cm dns remove Ar hostname
Remove a local dat-dns name mapping.
.It Cm verify Op dir
Verify metadata and content feeds with the archive's public keys.
.It Cm bootstrap Op udp-port
Run a Cesspool rendezvous node on all local interfaces. The node prints the
DDAT_BOOTSTRAP setting participating C clients should use. The UDP port must
be reachable from those clients through the host firewall and router. Peer
records expire after ten minutes without an announce or lookup. This is the
Cesspool protocol used by dat-thang and cable-thang, not the historical
JavaScript Dat BitTorrent DHT bootstrap protocol.
.It Cm bootstrap add Ar host:port
Save a Cesspool rendezvous endpoint for dat-thang and cable-thang in the
per-user configuration file. It is used in addition to DDAT_BOOTSTRAP.
.It Cm bootstrap set Ar host:port
Replace the active rendezvous list with one Cesspool endpoint. The desktop
client exposes the same setting under Settings, so this command is only needed
for terminal-only setup.
.El
.Sh OPTIONS
.It Fl d
Debug
.Sh FILES
.Bl -tag -width -indent
.It Pa ~/.dat/secret_keys/
Contains private feed secrets as raw Ed25519 secret bytes, indexed by
discovery key. See the key format and Dat Desktop compatibility notes in
the installed key-management.md documentation.
.Sh AUTHORS
"Dat" was first written about by Mathias Buus Madsen & Maxwell Ogden (c) 2015
.Nm
was written and directed by
.An 𝖼̴̸͍͚͍̝͓̘͌̽͑̚͝͝𝗁̵̸̻͇̘̝̞͍̈́̔̾̾̓͘𝗎̸̴̡̼͕̻̦̓́̓̈́͘͜͠𝗋̸̵̡͎̼͇͖͊͐͆͜͝͝𝗍̸̸͕̠̼̙͚̻͆́̈́̒͛͝𝗓̵̴̢̟̝͎̝̪̓̀̕̚͝𝖺̸̸͚͓̠͕͕̒̒́͋͜͝͠𝗇̴̵͙̞͇̙͕̐͋̈́͌͒͜ Aq @4c3NtV5p+7MRCwinLcD+dVMgz2rGbX2wF/ZtDxBA/Lw=.ed25519
.Sh BUGS
.Pp
Go ahead an fix em ;)
.Lk \*[REPO]