Repository and install layout
Canonical sources: tuf-profile-v1 for the repository, the transaction model for the install root, and the path policy in libs/planner/paths.zig.
Repository
Section titled “Repository”metadata/<N>.root.json one per root versionmetadata/timestamp.json the only file without a version numbermetadata/<N>.snapshot.jsonmetadata/<N>.targets.jsonmetadata/<N>.<channel>.json stable, beta, nightlytargets/<sha256 hex> manifests and artifacts, named by their hashThe layout is the same served over HTTP or read from a directory. Only nbpack writes it.
Offline bundle
Section titled “Offline bundle”<bundle>/ setup setup.exe on Windows repository/ a complete repository, as above licenses/Inter-OFL.txt license of the font compiled into setupInstall root
Section titled “Install root”<install root>/ installation.json installed product, release, manifest, integrations, bootstrap state current -> versions/<n> the active version versions/<n>/<component>/ files of each component staging/tx-<n>/ staging of user-scope transactions maintainer/setup copy of setup for update, repair, uninstall (setup.exe on Windows) trust/state.json accepted TUF versions and release sequence journal/ transaction journalDefault locations
Section titled “Default locations”| macOS | Windows | Linux | |
|---|---|---|---|
| Install root, user scope | ~/Library/Application Support/<id> |
%LOCALAPPDATA%\Programs\<id> |
$XDG_DATA_HOME/<id>, or ~/.local/share/<id> |
| Install root, machine scope | /Library/Application Support/<id> |
%ProgramFiles%\<id> |
/opt/<id> |
| Per-user cache | ~/Library/Caches/<id> |
%LOCALAPPDATA%\<id>\Cache |
$XDG_CACHE_HOME/<id>, or ~/.cache/<id> |
<id> is the product id. --install-dir replaces the install root. Components cannot choose any of these paths.
Per-user cache
Section titled “Per-user cache”<cache>/ lock transaction lock, one per user and product downloads/ artifacts being downloaded staging/tx-<n>/ staging of machine-scope transactions (user scope stages in the install root) logs/crash-<time>.json crash records portable/ Portable Run cache sha256/<hex>/ unpacked component, its component.json and last-use time downloads/ trust.json accepted TUF versions for Portable Run