Reference implementation of the Ethereum Virtual Machine File System (EVMFS).
The Ethereum Virtual Machine File System is a multi-level distributed, network-independent, cross-network, uncensorable, undeletable, permissionless file system running on Ethereum Virtual Machine-compatible networks.
Links pointing to the file system resources are structured in the following way:
evmfs://<evm_network_id>/<evmfs_contract_address>/<user_namespace>/<file_hash>
Files can be published by running
evmfs \
publish \
[target_files]and retrieved with
evmfs \
get \
<evmfs_uri>Public file system's contracts' deployment addresses on
selected blockchain networks can be found in the
contracts/deployments directory in the source
tree and are configured into the program at install time.
The file system currently has public deployments on around 4% of all Ethereum Virtual Machine compatible blockchains networks.
Options for user-defined deployments are discussed in the documentation.
Extra to the command-line utility, a standalone super simple Bash graphical interface using Zenity has been made available in the evmfs-zenity repository.
The EVMFS is a core component of the Human Instrumentality Project and of the Ur application store for Life and DogeOS.
The EVMFS has been officially published on the Ur, the uncensorable, distributed, permissionless Life and DogeOS user repository and application store, so it can be seamlessly installed by typing
ur evmfsSince the EVMFS is actually an Ur dependency, if you're coming from a system not integrating or packaging the Ur, you may want to install a binary build from the Fur, the fallback user repository.
The project can be built and installed with GNU make.
cd \
evmfs
make
make \
install
A full list of its software dependencies can be found in its Ur uncensorable user repository and application store universal recipe, hosted on the file system itself. An HTTP mirror is provided on The Martian Company's Github.
Upon installation, manual can be consulted by typing:
man \
evmfsNotes and other documentation are in the
docs
source tree directory and installed onto the
<data_dir>/doc/evmfs directory.
You can consult the manual from an online mirror of this
repository. The rst source files are located in the man
directory.
The Ethereum Virtual File System is released under the terms of the GNU Affero General Public License Version 3.
