Chia blockchain python implementation (full node, farmer, harvester, timelord, and wallet)
Go to file
Patrick Maslana 3a2dc484b5
Generate a license directory that contains licenses missing from the installers (#15146)
* Add scripts to build a tree of licenses that are missing from the installers

* Add a line that was accidentally removed

* add steps in the build_license_directory script to install pip-licenses and license-checker

* Pip install pip-license

* Added commands to check the working dir in the build_license_direcotory.sh

* Fix the path for the npm commands

* Copy the library dir over

* Add a line to cd back to the previous dir in the build_licenses_directory.sh file

* Fix path to go back to "build_scripts"

* Fixing a typo with a path in the build_license_directory.sh file

* Troubleshoot path

* Change word from library to licenses

* Add a command to list contents of "dist/$CLI_DEB_BASE/opt/chia/" for troubleshooting

* Copy the license file to the "GUI" directory

* Fix the last for loop

* Move the step to change directory back to build scripts in the build_license_directory.sh file

* Add some more steps to troubleshoot the path and license-checker usage

* Fix a typo

* Add an "npm install ." before running the license-checker

* Fix a typo

* Change back to the build_scripts dir before the first loop in build_license_directory.sh file

* Revert "Change back to the build_scripts dir before the first loop in build_license_directory.sh file"

This reverts commit a3e88a2583.

* Fix the path for moving the license file

* Change the first loop for printing licenses from npm license-checker

* Add steps to copy the license file over to the builds and comment out the "npm install ." step out of the build_license_firectory script

* Add npm ci to the build_license_directory file

* Adding a dir for troubleshooting

* Fix errors in the scripts

* Fix a path to the licenses file

* Remove a dir from the windows installer script

* Remove a copy command

* Remove a few more copy commands

* Adding a ps1 script for usage in the windows installer build script

* Replace the powershell script

* Made a couple changes to the ps1 script for building the license directory

* Remove the ps1 script for building the license dir

* Add a new script for the windows installer to build the license dir

* Fix issues with the code for windows

* Remove the -1 from NF

* Changing the script for windows to test

* Remove filename=$(basename "$i")

* Remove some ls command lines

* Add "cp -r dist/daemon ../chia-blockchain-gui/packages/gui" to the RPM installer script

* Remove "|| 'exit" or "cd' || return" from when CD'ing in the license creation scripts

* Remove extra set of ||
2023-06-21 16:51:05 -05:00
.github build(deps): bump mheap/github-action-required-labels from 4 to 5 (#15504) 2023-06-21 13:03:38 -05:00
benchmarks util: Drop `chia.util.chunks` and use `chia.util.to_batches` instead (#15418) 2023-06-09 16:35:31 -05:00
build_scripts Generate a license directory that contains licenses missing from the installers (#15146) 2023-06-21 16:51:05 -05:00
chia bump chia_rs to 0.2.8 (#15575) 2023-06-21 13:59:22 -05:00
chia-blockchain-gui@018f0b08f6 Merge commit 'b519ff42934d5bea5d1d9545f18cee95ebf18c7a' into checkpoint/main_from_release_1.8.2_b519ff42934d5bea5d1d9545f18cee95ebf18c7a 2023-06-20 22:40:12 +01:00
mozilla-ca@b0ac9fd708 CA Cert updates (#15397) 2023-05-30 15:18:01 -05:00
tests Annotate test_full_node_store.py (#15573) 2023-06-21 16:16:53 -05:00
tools Fork infrastructure (#15299) 2023-05-18 20:20:11 -05:00
.coveragerc coverage ignore `if TYPE_CHECKING:` (#15473) 2023-06-09 05:13:08 -05:00
.flake8 black the generated protocol messages code (#11786) 2022-06-08 10:21:03 -05:00
.gitignore mypy: Build `mypy.ini` config with exclusions dynamically (#15158) 2023-05-22 16:50:13 -05:00
.gitmodules catchup: into main from long_lived/post_1.5.0 @ 916ccee549 (#12629) 2022-07-29 16:58:21 -05:00
.isort.cfg isort: Remove the remaining exceptions and sort the related files (#14124) 2022-12-13 17:10:55 -06:00
.markdown-lint.yml move all linter config to the root (#9830) 2022-01-19 11:38:11 -08:00
.pre-commit-config.yaml mypy: Build `mypy.ini` config with exclusions dynamically (#15158) 2023-05-22 16:50:13 -05:00
BUILD_TIMELORD.md update permissions (#6061) 2021-05-26 11:33:26 -07:00
CHANGELOG.md 1.8.1 changelog (#15311) 2023-05-17 14:20:20 -05:00
CODE_OF_CONDUCT.md Bram's edit to code_of_conduct and start new dev branch 2020-09-15 12:26:16 -07:00
CONTRIBUTING.md Adding signed commit requirment info (#15313) 2023-05-17 10:47:58 -05:00
INSTALL.md Improve style consistency in root directory docs files (#4493) 2021-05-12 13:12:30 -07:00
Install-gui.ps1 Adding submodule branch override to Install-gui.ps1 (#13752) 2022-10-31 11:23:53 -05:00
Install-plotter.ps1 Deprecate `chia plotters install` command (#13584) (#13643) 2022-10-17 14:29:02 -05:00
Install.ps1 Move to Discord in docs and install scripts (#15193) (#15210) 2023-05-04 23:12:13 -05:00
LICENSE update copyright year to 2023 (#14358) 2023-01-17 15:37:50 -07:00
PRETTY_GOOD_PRACTICES.md Update PRETTY_GOOD_PRACTICES.md (#13763) 2022-10-31 13:58:02 -05:00
README.md Update the README to link to the Chia website (#14801) 2023-03-10 16:45:18 -06:00
SECURITY.md removing duped text 2022-11-22 15:53:40 -07:00
activated.ps1 Add .clvm.hex pre-commit check (#12050) 2022-09-12 16:08:55 -05:00
activated.py configure isort to add the future annotations import (#13327) 2022-09-30 03:40:22 -05:00
activated.sh pre-commit: Fix a venv activation issue on linux (#12822) 2022-08-09 18:27:11 -05:00
install-gui.sh Add Arch Linux to install-gui.sh script (#14059) 2022-12-09 20:29:23 -06:00
install-plotter.sh bump default bladebit version to 2.0.1 in install-plotter.sh (#14181) 2022-12-19 10:55:28 -06:00
install-timelord.sh Setting actions version to latest (#14361) 2023-01-19 17:00:41 -06:00
install.sh Move to Discord in docs and install scripts (#15193) (#15210) 2023-05-04 23:12:13 -05:00
installhelper.py configure isort to add the future annotations import (#13327) 2022-09-30 03:40:22 -05:00
manage-mypy.py mypy: Build `mypy.ini` config with exclusions dynamically (#15158) 2023-05-22 16:50:13 -05:00
mypy-exclusions.txt Annotate test_full_node_store.py (#15573) 2023-06-21 16:16:53 -05:00
mypy.ini.template Add **kwargs to all generate_signed_transaction definitions (#15240) 2023-06-13 17:24:17 -05:00
pylintrc util: Remove legacy keyring support (#13398) 2022-11-18 10:33:18 -06:00
pyproject.toml Add support for Python 3.11 (#11407) 2023-01-27 17:16:03 -06:00
pytest.ini add `datacases()` and `named_datacases()` (#15265) 2023-05-12 12:58:45 -05:00
setup.py build(deps): bump cryptography from 41.0.0 to 41.0.1 (#15506) 2023-06-21 16:17:55 -05:00
start-gui.sh more set -o errexit (#10468) 2022-03-17 09:13:27 -07:00

README.md

chia-blockchain

Chia Network logo

Current Release/main Development Branch/dev
Ubuntu Core Tests MacOS Core Tests Windows Installer on Windows 10 and Python 3.7 Ubuntu Core Tests MacOS Core Tests Windows Installer on Windows 10 and Python 3.7

GitHub contributors

Chia is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure. Here are some of the features and benefits:

  • Proof of space and time based consensus which allows anyone to farm with commodity hardware
  • Very easy to use full node and farmer GUI and cli (thousands of nodes active on mainnet)
  • Chia seeder, which maintains a list of reliable nodes within the Chia network via a built-in DNS server.
  • Simplified UTXO based transaction model, with small on-chain state
  • Lisp-style Turing-complete functional programming language for money related use cases
  • BLS keys and aggregate signatures (only one signature per block)
  • Pooling protocol that allows farmers to have control of making blocks
  • Support for light clients with fast, objective syncing
  • A growing community of farmers and developers around the world

Please check out the Chia website, the wiki, and FAQ for information on this project.

Python 3.7+ is required. Make sure your default python version is >=3.7 by typing python3.

If you are behind a NAT, it can be difficult for peers outside your subnet to reach you when they start up. You can enable UPnP on your router or add a NAT (for IPv4 but not IPv6) and firewall rules to allow TCP port 8444 access to your peer. These methods tend to be router make/model specific.

Most users should only install harvesters, farmers, plotter, full nodes, and wallets. Setting up a seeder is best left to more advanced users. Building Timelords and VDFs is for sophisticated users, in most environments. Chia Network and additional volunteers are running sufficient Timelords for consensus.

Installing

Install instructions are available in the INSTALL section of the chia-blockchain repository wiki.

Running

Once installed, a Quick Start Guide is available from the repository wiki.