NAME 

0store - manage the implementation cache

SYNOPSIS 

0store add DIGEST DIRECTORY

0store add DIGEST ARCHIVE [ EXTRACT ]

0store copy DIRECTORY [ DIRECTORY ]

0store find DIGEST

0store list

0store manifest DIRECTORY [ ALGORITHM ]

0store verify ( DIGEST | DIRECTORY )

DESCRIPTION 

0store provides access to the low-level implementation cache. Normally, the cache is updated automatically using 0launch(1).

ADD 

To add a directory to the store (makes a copy):

0store add sha1=XXX directory

To add an archive to the store:

0store add sha1=XXX archive.tgz

To add a subdirectory of an archive to the store:

0store add sha1=XXX archive.tgz subdir

The actual digest is calculated and compared to the given one. If they don't match, the operation is rejected.

COPY 

To copy an implementation (a directory with a name in the form "algorithm=value"), use the copy function. This is similar to performing a normal recursive directory copy followed by a 0store verify to check that the name matches the contents. E.g.:

0store copy ~someuser/.cache/0install.net/implementations/sha256=XXX /var/cache/0install.net/implementations/

FIND 

To find the path of a stored item:

0store find sha1=XXX

LIST 

See the list of implementation caches currently configured:

0store list

To add directories to this list, add them to your 'implementation-dirs' configuration file.

MANIFEST 

To generate the manifest for a directory structure:

0store manifest DIRECTORY [ALGORITHM]

The manifest lists every file and directory in the tree, along with the digest of each file, thus uniquely identifying that particular set of files. After the manifest, the last line gives the digest of the manifest itself.

This value is needed when creating interface files. However, the 0publish command will automatically calculate the required digest for you and add it to an interface file. See the packager's guide on the Zero Install web site for details.

Supported algorithms are 'sha1' (supported by all versions), 'sha1new' (requires injector 0.20 or later) and 'sha256' (requires injector 0.20 or later AND the Python hashlib module).

VERIFY 

To check that an item is stored correctly:

0store verify /path/to/sha1=XXX

This calculates the manifest of the directory and checks that its digest matches the directory's name. It also checks that it matches the digest of the .manifest file inside the directory. If the .manifest doesn't correspond to the current tree, it displays a list of the differences (in unified diff format).

COMMAND-LINE OPTIONS 

-h, --help
Show the built-in help text.
-v, --verbose
More verbose output. Use twice for even more verbose output.
-V, --version
Display version information.

FILES 

~/.cache/0install.net/implementations
Cached implementations, indexed by manifest digest.
~/.config/0install.net/injector/implementation-dirs
List of system cache directories, one per line.

LICENSE 

Copyright (C) 2006 Thomas Leonard.

You may redistribute copies of this program under the terms of the GNU General Public License.

BUGS 

Please report bugs to the developer mailing list:

http://0install.net/support.html

AUTHOR 

The Zero Install Injector was created by Thomas Leonard.

SEE ALSO 

0alias(1), 0launch(1)

The Zero Install web-site: