provcat.stores.local

The local file system: file:///absolute/path.

Files are already local, so fetch returns the path itself and the cache is not used. put writes a file through a temporary file in the same folder, so a reader never sees half of it, and makes the folders it needs. The file keeps the mode of the file it replaces. put replaces the file, so a hard link to the old file keeps the old bytes, and put refuses to write over a link. A crash can leave a temporary file named .NAME.XXXXXXXX beside it. The option root confines the store to one folder; a URI path is then relative to that folder. A path that leaves the root through a symbolic link is refused.