Documentation
¶
Overview ¶
Command ovnfs opens copy-on-write checkouts of any folder and serves them to agents.
Source Files
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
Package admin implements the daemon's local control protocol.
|
Package admin implements the daemon's local control protocol. |
|
Package api defines the admin operations shared by the daemon and the CLI.
|
Package api defines the admin operations shared by the daemon and the CLI. |
|
Package base provides persistent, fork-time views of a captured source folder.
|
Package base provides persistent, fork-time views of a captured source folder. |
|
Package checkout manages checkouts: isolated, copy-on-write copies of any folder that agents work in, plus their snapshots, forks and the way back to the source.
|
Package checkout manages checkouts: isolated, copy-on-write copies of any folder that agents work in, plus their snapshots, forks and the way back to the source. |
|
Package export presents checkout filesystems through one shared export root.
|
Package export presents checkout filesystems through one shared export root. |
|
Package fuse serves the export root over the Linux kernel's FUSE protocol: the root lists checkouts read-only and each checkout below it is fully writable.
|
Package fuse serves the export root over the Linux kernel's FUSE protocol: the root lists checkouts read-only and each checkout below it is fully writable. |
|
Package git reads facts from git repositories found under a source folder.
|
Package git reads facts from git repositories found under a source folder. |
|
internal
|
|
|
clone
Package clone copies regular files by sharing their data blocks where the filesystem supports it (clonefile on APFS, FICLONE reflinks on Linux) and by copying bytes everywhere else, so callers get one portable copy primitive.
|
Package clone copies regular files by sharing their data blocks where the filesystem supports it (clonefile on APFS, FICLONE reflinks on Linux) and by copying bytes everywhere else, so callers get one portable copy primitive. |
|
dirbottom
Package dirbottom provides a live host-directory bottom for overlay tests.
|
Package dirbottom provides a live host-directory bottom for overlay tests. |
|
durable
Package durable flushes ovnfs's own metadata files (state.json, pins.log, nodes.log and the directories holding them) to stable storage.
|
Package durable flushes ovnfs's own metadata files (state.json, pins.log, nodes.log and the directories holding them) to stable storage. |
|
hostfile
Package hostfile opens, renames and removes host files with POSIX semantics on every platform.
|
Package hostfile opens, renames and removes host files with POSIX semantics on every platform. |
|
nfstest
Package nfstest drives an in-process NFSv3 server without a kernel mount.
|
Package nfstest drives an in-process NFSv3 server without a kernel mount. |
|
search/fsys
Package fsys is the filesystem layer the search tools read through: directory listings, file contents, and change stamps.
|
Package fsys is the filesystem layer the search tools read through: directory listings, file contents, and change stamps. |
|
search/glob
Package glob finds the files and directories below a root whose walk-relative paths match a glob, using the shared filesystem walker.
|
Package glob finds the files and directories below a root whose walk-relative paths match a glob, using the shared filesystem walker. |
|
search/grep
Package grep searches file contents for a regular expression using the shared walker and filesystem layer.
|
Package grep searches file contents for a regular expression using the shared walker and filesystem layer. |
|
search/pattern
Package pattern compiles glob patterns with the semantics of Rust's `globset` crate built with literal separators, the dialect gitignore rules (via the `ignore` crate) and the glob/grep filters use:
|
Package pattern compiles glob patterns with the semantics of Rust's `globset` crate built with literal separators, the dialect gitignore rules (via the `ignore` crate) and the glob/grep filters use: |
|
search/walk
Package walk is the parallel directory walker the search tools traverse with: gitignore-aware, cache-backed, and reading only through fsys.
|
Package walk is the parallel directory walker the search tools traverse with: gitignore-aware, cache-backed, and reading only through fsys. |
|
unixstat
Package unixstat reads the POSIX metadata that os.FileInfo keeps in Sys, for the frontends that report it (NFS, FUSE, remote-fs).
|
Package unixstat reads the POSIX metadata that os.FileInfo keeps in Sys, for the frontends that report it (NFS, FUSE, remote-fs). |
|
Package manifest resolves the rules, cache recipes and environment of a checkout from command-line overrides, the folder's `.o2/ovnfs.yml`, the user's `~/.o2/ovnfs.yml` and the builtin rules, and freezes the result as a Lock.
|
Package manifest resolves the rules, cache recipes and environment of a checkout from command-line overrides, the folder's `.o2/ovnfs.yml`, the user's `~/.o2/ovnfs.yml` and the builtin rules, and freezes the result as a Lock. |
|
Package mesh holds the wire-level building blocks shared by the ovnfs mesh transport: node identities and key files, TLS configurations that pin peers by key, ways to reach a node, and length-prefixed frames.
|
Package mesh holds the wire-level building blocks shared by the ovnfs mesh transport: node identities and key files, TLS configurations that pin peers by key, ways to reach a node, and length-prefixed frames. |
|
node
Package node is the ovnfs mesh runtime, wire-compatible with stencil-net's node: QUIC over a direct UDP socket and through a relay, peers proven by their Ed25519 keys, per-protocol listeners that signal READY, and a pool of dialed connections raced over every known way to a peer.
|
Package node is the ovnfs mesh runtime, wire-compatible with stencil-net's node: QUIC over a direct UDP socket and through a relay, peers proven by their Ed25519 keys, per-protocol listeners that signal READY, and a pool of dialed connections raced over every known way to a peer. |
|
relay
Package relay is a node's link to a stencil relay (`GET /node`, protocols stencil-relay.v2 and v1): it proves the node's identity, keeps the link up, and carries datagrams to and from peers reachable only through the relay.
|
Package relay is a node's link to a stencil relay (`GET /node`, protocols stencil-relay.v2 and v1): it proves the node's identity, keeps the link up, and carries datagrams to and from peers reachable only through the relay. |
|
roster
Package roster keeps who is in this machine's mesh: the members (pinned node keys and where each last said it listens), the single-use invite tickets a new machine joins with, the join token that carries one, and the join and sync exchanges members run on ALPN.
|
Package roster keeps who is in this machine's mesh: the members (pinned node keys and where each last said it listens), the single-use invite tickets a new machine joins with, the join token that carries one, and the join and sync exchanges members run on ALPN. |
|
Package nfs serves a Backend over NFSv3 (RFC 1813, with MOUNT v3) and NFSv4.0 (RFC 7530) on one TCP port.
|
Package nfs serves a Backend over NFSv3 (RFC 1813, with MOUNT v3) and NFSv4.0 (RFC 7530) on one TCP port. |
|
Package ntinfo describes export files in Windows NT terms (FILETIME stamps, FILE_ATTRIBUTE_* masks, allocation sizes, symlink reparse buffers, NTSTATUS codes) for the frontends that serve Windows clients: the SMB server and the WinFsp drive.
|
Package ntinfo describes export files in Windows NT terms (FILETIME stamps, FILE_ATTRIBUTE_* masks, allocation sizes, symlink reparse buffers, NTSTATUS codes) for the frontends that serve Windows clients: the SMB server and the WinFsp drive. |
|
Package overlay merges a writable upper over indexed immutable layers and a read-only bottom.
|
Package overlay merges a writable upper over indexed immutable layers and a read-only bottom. |
|
Package peer is the link protocol that attaches a checkout on one machine to another: the source machine offers a snapshot (every leaf with its git id), the remote machine accepts it and then fetches blob content lazily, verifying each blob by its id before it enters the remote's store.
|
Package peer is the link protocol that attaches a checkout on one machine to another: the source machine offers a snapshot (every leaf with its git id), the remote machine accepts it and then fetches blob content lazily, verifying each blob by its id before it enters the remote's store. |
|
Package remotefs serves one checkout over remote-fs v1, the Unix-socket protocol a vibevmm VM's virtio-fs `home` device (`--remote-fs TAG:SOCK[:rw]`) speaks: 9-byte frames carrying path-addressed JSON requests, one in flight per connection, no hello, no handles and no inode numbers.
|
Package remotefs serves one checkout over remote-fs v1, the Unix-socket protocol a vibevmm VM's virtio-fs `home` device (`--remote-fs TAG:SOCK[:rw]`) speaks: 9-byte frames carrying path-addressed JSON requests, one in flight per connection, no hello, no handles and no inode numbers. |
|
Package rules classifies every path of a source folder into source, cache, local or hidden with an ordered list of `<class> <predicate>` rules.
|
Package rules classifies every path of a source folder into source, cache, local or hidden with an ordered list of `<class> <predicate>` rules. |
|
Package smb serves an overlay filesystem over SMB2 and SMB3 Direct TCP.
|
Package smb serves an overlay filesystem over SMB2 and SMB3 Direct TCP. |
|
auth
Package auth implements NTLMv2 authentication and SMB signing primitives.
|
Package auth implements NTLMv2 authentication and SMB signing primitives. |
|
Package source captures a folder into a snapshot: it walks the folder once, classifies every path with the checkout's rules, and stores the content of source-class files.
|
Package source captures a folder into a snapshot: it walks the folder once, classifies every path with the checkout's rules, and stores the content of source-class files. |
|
Package store keeps git-format objects (blobs and trees) content-addressed under one directory.
|
Package store keeps git-format objects (blobs and trees) content-addressed under one directory. |
|
Package watch reports changes below host directories: FSEvents on macOS, inotify on Linux, ReadDirectoryChangesW on Windows.
|
Package watch reports changes below host directories: FSEvents on macOS, inotify on Linux, ReadDirectoryChangesW on Windows. |
|
Package winfsp serves the export root as a Windows drive through WinFsp (https://winfsp.dev), a user-mode filesystem driver installed once per machine: the root lists checkouts read-only and each checkout below it is fully writable.
|
Package winfsp serves the export root as a Windows drive through WinFsp (https://winfsp.dev), a user-mode filesystem driver installed once per machine: the root lists checkouts read-only and each checkout below it is fully writable. |
Click to show internal directories.
Click to hide internal directories.