Files
dat-thang/INSTALL
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

66 lines
2.3 KiB
Plaintext

dat-thang requires a C99 compiler, make, libsodium development headers, and the
system DNS resolver development library (`libresolv` on glibc systems).
Build and test:
./configure
make
make test
Install under /usr/local by default:
make install
Choose another prefix during configuration:
./configure --prefix="$HOME/.local"
make
make test
make install
Packagers can stage an install without writing to the live prefix:
make DESTDIR=/tmp/dat-thang-package install
The installed C command is named `ddat`, so the historical JavaScript `dat`
command can remain installed beside it. To build the old Hypercore V6 session
mode for side-by-side compatibility work, use:
make NETWORK_PROTOCOL=hypercore build/linux/ddat
The SDL2 mockup is optional. Install SDL2 development headers and pkg-config,
then build and run it with:
make ENABLE_SDL2=1
build/linux/dat-thang
The GNU/Linux default output path is `build/linux`; the native Windows
development build is `build/windows`. Release files belong under `dist/`, so
the source tree and platform build outputs stay separate. Create a staged
GNU/Linux install-tree archive with:
make package
This creates `dist/linux-<architecture>/dat-thang-<version>-linux-<architecture>.tar.gz`.
The tarball contains the installed programs, headers, library, Dillo DPI, and
manuals; the target system supplies the linked system libraries. On Windows,
`build-windows.ps1` creates a portable ZIP and `build-windows-installer.ps1`
creates the install wizard package.
To make a source-only ZIP from PowerShell without including ignored build or
release outputs, run `./package-source.ps1`. See
`docs/source-distribution.md` for its archive contents.
To include the SDL2 clients in the Linux install and release archive, install
SDL2 and SDL2_ttf development files, then run `make ENABLE_SDL2=1 package`.
`NETWORK_PROTOCOL` remains the repository-root setting; the make override above
is temporary and does not change that file.
S7 is bundled and required. The default build includes the embedded Scheme
runtime, `ddat-scheme`, and the shared JSON reader used for JavaScript Dat
metadata. `--disable-s7` is rejected because Dat metadata parsing depends on it.
Use `make uninstall` to remove installed dat-thang files and `make distclean` to
remove all generated build and configuration files.