Github GitHub - filecoin-project/venus: Filecoin Full Node Implementation in Go
source link: https://github.com/filecoin-project/venus
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Filecoin (venus)
venus is an implementation of the Filecoin Distributed Storage Network. For more details about Filecoin, checkout the Filecoin Spec.
venus was the first Filecoin implementation originially initiated and developed by Protocol Labs, and now is maintained by the Filecoin community. See maintenance for more information.
Questions or problems with venus? Ask the community first. Your problem may already be solved.
Table of Contents
What is Filecoin?
Filecoin is a decentralized storage network that turns the world’s unused storage into an algorithmic market, creating a permanent, decentralized future for the web. Miners earn the native protocol token (also called “Filecoin”) by providing data storage and/or retrieval. Clients pay miners to store or distribute data and to retrieve it. Check out the Filecoin website and Filecoin Documentation for more.
Install
Welcome to venus!
This README outlines the basics for building and running venus. For more background, configuration, and troubleshooting information check out the venus Docs.
System Requirements
venus can build and run on most Linux and MacOS systems. Windows is not yet supported.
A validating node can run on most systems with at least 8GB of RAM. A mining node requires significant RAM and GPU resources, depending on the sector configuration to be used.
Install from Source
Clone this git repository to your machine:
mkdir -p /path/to/filecoin-project git clone https://github.com/filecoin-project/venus.git /path/to/filecoin-project/venus
Install Go
The build process for venus requires Go >= v1.15.5
Installing Go for the first time? We recommend this tutorial which includes environment setup.
Due to our use of cgo
, you'll need a C compiler to build venus whether you're using a prebuilt library or building it yourself from source.
If you want to use gcc
(e.g. export CC=gcc
) when building venus, you will need to use v7.4.0 or higher.
The build process will download a static library containing the Filecoin proofs implementation (which is written in Rust).
If instead you wish to build proofs from source, you'll need (1) Rust development environment and (2) to set the environment variable
FFI_BUILD_FROM_SOURCE=1
. More info at filecoin-ffi.
Install Dependencies
First install componets
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm; sudo yum install -y git gcc bzr jq pkgconfig clang llvm mesa-libGL-devel opencl-headers ocl-icd ocl-icd-devel hwloc-devel
Initialize build dependencies.
make deps
Note: The first time you run deps
can be slow as very large parameter files are either downloaded or generated locally in /var/tmp/filecoin-proof-parameters
.
Have patience; future runs will be faster.
Build and run tests
# First, build the binary make # Then, run the unit tests. go run ./build test # Build and test can be combined! go run ./build best
Other handy build commands include:
# Check the code for style and correctness issues go run ./build lint # Run different categories of tests by toggling their flags go run ./build test -unit=false -integration=true -functional=true # Test with a coverage report go run ./build test -cover # Test with Go's race-condition instrumentation and warnings (see https://blog.golang.org/race-detector) go run ./build test -race # Deps, Lint, Build, Test (any args will be passed to `test`) go run ./build all
Note: Any flag passed to go run ./build test
(e.g. -cover
) will be passed on to go test
.
If you have problems with the build, please consult the Troubleshooting section of the venus Documentation.
Usage
For a complete step-by-step tutorial, see Getting Started.
Quick start:
# Remove any existing symlink to a repo directory rm -rf ~/.venus # Initialize a new repository, Start the daemon. It will block until it connects to at least one bootstrap peer. ./venus daemon #mainnet ./venus daemon --network cali #calibration
Your node should now be connected to some peers, and begin downloading and validating the blockchain.
Open a new terminal to interact with your node:
# Print the node's connection information ./venus swarm id # Show chain sync status ./venus chain status
To see a full list of commands, run ./venus --help
.
Contributing
We all our contributors; this project wouldn’t be what it is without you! If you want to help out, please see CONTRIBUTING.md.
Check out the venus code overview for a brief tour of the code.
Community
Here are a few places to get help and connect with the Filecoin community:
- venus Documentation — for tutorials, troubleshooting, and FAQs
- The
#fil-venus
channel on Filecoin Project Slack or Matrix/Riot - for live help and some dev discussions - Filecoin Community Forum - for talking about design decisions, use cases, implementation advice, and longer-running conversations
- GitHub issues - to report bugs, and view or contribute to ongoing development.
- Filecoin Specification - how Filecoin is supposed to work
Looking for even more? See the full rundown at filecoin-project/community.
Maintenance
Venus (previously called venus
) is now maintained by IPFS-Force Community
Maintainers: @steven004, @diwufeiwen, @hunjixin, @felix00000
This repo is open for anyone to submit issues and PRs.
License
The Filecoin Project is dual-licensed under Apache 2.0 and MIT terms:
Recommend
-
60
Today, we are excited to open several repos on GitHub, and invite everybody to join us on GitHub. Come learn about Filecoin, play with the code, and contribute to development. As described inthis prior update, we made th...
-
133
README.md Filecoin (go-filecoin)
-
114
README.md
-
4
The Whitest Paint Ever Created Is the Opposite of Vantablack, BasicallyThe Whitest Paint Ever Created Is the Opposite of Vantablack, BasicallyThe ultra-white paint reflects 98.1 percent of s...
-
5
Venus (XVS) price aims for $100 amid rising TVL and surge in DeFi users – HodlalertVenus (XVS) price aims for $100 amid rising TVL and surge in DeFi users...
-
8
Venus 将所有借贷市场的预言机升级成 Chainlink 预言机我们很高兴地宣布,币安智能链上的货币市场和合成稳定币协议 Venus 已将所有预言机升级成 Chainlink 预言机。Venus 借贷市场接入了 Chainlink 预言机,在贷款发放和清算流程中获取抵押喂价...
-
3
Venus 的教训 目录: DeFi | 标签: DeFi , 币安智能链 , BSC
-
1
复盘 Venus 最冷一天,2亿美金清算启示录 摘要: 我们能从这次事件中学到什么?
-
8
BSC上的Venus被盗,真的是监守自盗吗? - 律动BlockBeats原文标题:《Venus.IO Exploit—An Inside Job》原文作者:Venus Insider原文来源:陀螺财经
-
16
Awesome Filecoin 1. Website 1.1 浏览器 FilFox - 6Block 团队开发的 Filecoin 浏览器 Filscan - IPFS原力团队开发的 Filecoin 浏览器...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK