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>
39 lines
1.8 KiB
Markdown
39 lines
1.8 KiB
Markdown
# Source and release layout
|
|
|
|
The repository has one source tree for both platforms. Generated files have
|
|
separate destinations:
|
|
|
|
- GNU/Linux compiler outputs: `build/linux/`
|
|
- Windows compiler outputs: `build/windows/`
|
|
- Windows portable runtime staging: `dist/windows-x64/`
|
|
- Installers and platform packages: `dist/installers/` and `dist/linux-*/`
|
|
- Source archive: `dist/source/`
|
|
|
|
`build/` is disposable compiler output and is ignored by Git. External Dillo
|
|
checkouts live in `test-deps/`; machine keys and test-run output live in
|
|
`local-data/`. Both are local-only and ignored. Reusable tests and archive
|
|
fixtures live under `tests/`, so a clean operation cannot remove them. Do not
|
|
zip the working directory directly. To make a source-only archive that retains
|
|
the historical fixtures and interoperability tests while excluding machine
|
|
data and generated outputs, run from PowerShell at the repository root:
|
|
|
|
```powershell
|
|
.\package-source.ps1
|
|
```
|
|
|
|
The script writes `dist\source\dat-gpt-v0.0.002-source.zip` (the version comes
|
|
from `VERSION`). It includes project sources, documentation, assets, the
|
|
historical code under `extra/`, `third_party/`, the complete `tests/` tree, and
|
|
the root historical `.dat` verifier fixture. It excludes installed
|
|
`node_modules/`, `build/`, `dist/`,
|
|
`local-data/`, `test-deps/`, `.git/`, per-machine Dillo keys, and generated
|
|
configure files. It also skips local identity keys, cookie jars, SSH private
|
|
keys, and `.env` files by name. It does not compile or bundle executables.
|
|
|
|
Keep persistent node identity files in per-user application data outside the
|
|
checkout. The source ZIP excludes local runtime state.
|
|
|
|
For target packages, use `make package` on GNU/Linux and
|
|
`build-windows-installer.ps1` on Windows. The Windows `build-windows.ps1` also
|
|
creates a portable ZIP without requiring Inno Setup.
|