{"id":13687998,"url":"https://github.com/fort-nix/nix-bitcoin","last_synced_at":"2025-05-15T08:08:30.198Z","repository":{"id":34088776,"uuid":"160699139","full_name":"fort-nix/nix-bitcoin","owner":"fort-nix","description":"A collection of Nix packages and NixOS modules for easily installing full-featured Bitcoin nodes with an emphasis on security.","archived":false,"fork":false,"pushed_at":"2025-03-28T09:54:09.000Z","size":3927,"stargazers_count":553,"open_issues_count":41,"forks_count":115,"subscribers_count":21,"default_branch":"master","last_synced_at":"2025-04-14T12:18:32.041Z","etag":null,"topics":["bitcoin","bitcoind","nix","nix-packages","nixops","nixos"],"latest_commit_sha":null,"homepage":"https://nixbitcoin.org","language":"Nix","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fort-nix.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-12-06T16:06:42.000Z","updated_at":"2025-04-11T06:56:35.000Z","dependencies_parsed_at":"2023-09-29T08:21:47.375Z","dependency_job_id":"0f54f9e1-5282-4f61-aca8-a289558d98fa","html_url":"https://github.com/fort-nix/nix-bitcoin","commit_stats":{"total_commits":1560,"total_committers":31,"mean_commits":50.32258064516129,"dds":"0.43141025641025643","last_synced_commit":"901f1250fdb6fdfffa0258909e3aff94d3c81de4"},"previous_names":[],"tags_count":116,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fort-nix%2Fnix-bitcoin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fort-nix%2Fnix-bitcoin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fort-nix%2Fnix-bitcoin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fort-nix%2Fnix-bitcoin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fort-nix","download_url":"https://codeload.github.com/fort-nix/nix-bitcoin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248877968,"owners_count":21176244,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bitcoin","bitcoind","nix","nix-packages","nixops","nixos"],"created_at":"2024-08-02T15:01:04.757Z","updated_at":"2025-04-14T12:18:52.140Z","avatar_url":"https://github.com/fort-nix.png","language":"Nix","funding_links":[],"categories":["Nix","NixOS Modules"],"sub_categories":["Zig"],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg\n    width=\"320\"\n    src=\"docs/img/nix-bitcoin-logo.png\"\n    alt=\"nix-bitcoin logo\"\u003e\n\u003c/p\u003e\n\u003cbr/\u003e\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://cirrus-ci.com/github/fort-nix/nix-bitcoin\" target=\"_blank\"\u003e\n        \u003cimg src=\"https://api.cirrus-ci.com/github/fort-nix/nix-bitcoin.svg?branch=master\" alt=\"CirrusCI status\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/fort-nix/nix-bitcoin/releases/latest\" target=\"_blank\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/v/release/fort-nix/nix-bitcoin\" alt=\"GitHub tag (latest SemVer)\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/fort-nix/nix-bitcoin/commits/master\" target=\"_blank\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/commit-activity/y/fort-nix/nix-bitcoin\" alt=\"GitHub commit activity\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/fort-nix/nix-bitcoin/graphs/contributors\" target=\"_blank\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/contributors-anon/fort-nix/nix-bitcoin\" alt=\"GitHub contributors\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/fort-nix/nix-bitcoin/releases\" target=\"_blank\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/downloads/fort-nix/nix-bitcoin/total\" alt=\"GitHub downloads\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\u003cbr/\u003e\n\nnix-bitcoin is a collection of Nix packages and NixOS modules for easily installing **full-featured Bitcoin nodes** with an emphasis on **security**.\n\nOverview\n---\nnix-bitcoin can be used for personal or merchant wallets, public infrastructure or\nfor Bitcoin application backends. In all cases, the aim is to provide security and\nprivacy by default. However, while nix-bitcoin is used in production today, it is\nstill considered experimental.\n\nnix-bitcoin nodes can be deployed on dedicated hardware, virtual machines or containers.\nThe Nix packages and NixOS modules can be used independently and combined freely.\n\nnix-bitcoin is built on top of Nix and [NixOS](https://nixos.org/) which provide powerful abstractions to keep it highly customizable and\nmaintainable. Testament to this are nix-bitcoin's robust security features and its potent test framework.  However,\nrunning nix-bitcoin does not require any previous experience with the Nix ecosystem.\n\nGet started\n---\n- See the [examples](examples/README.md) for an overview of all features.\n- To setup a new node from scratch, see the [installation instructions](docs/install.md).\n- To add nix-bitcoin to an existing NixOS configuration, see [importable-configuration.nix](examples/importable-configuration.nix)\n  and the [Flake example](examples/flakes/flake.nix).\n\nDocs\n---\nHint: To show a table of contents, click the button (![Github TOC button](docs/img/github-table-of-contents.svg)) in the\ntop left corner of the documents.\n\n\u003c!-- TODO-EXTERNAL: --\u003e\n\u003c!-- Change query to `nix-bitcoin` when upstream search has been fixed --\u003e\n* [NixOS options search](https://search.nixos.org/flakes?channel=unstable\u0026sort=relevance\u0026type=options\u0026query=bitcoin)\n* [Hardware requirements](docs/hardware.md)\n* [Installation](docs/install.md)\n* [Configuration and maintenance](docs/configuration.md)\n* [Using services](docs/services.md)\n* [FAQ](docs/faq.md)\n\nFeatures\n---\nA [configuration preset](modules/presets/secure-node.nix) for setting up a secure node\n* All applications use Tor for outbound connections and support accepting inbound connections via onion services.\n\nNixOS modules ([src](modules/modules.nix))\n* Application services\n  * [bitcoind](https://github.com/bitcoin/bitcoin)\n  * [clightning](https://github.com/ElementsProject/lightning) with support for announcing an onion service\n    and [database replication](docs/services.md#setup-clightning-database-replication).\\\n    Available plugins:\n    * [clboss](https://github.com/ZmnSCPxj/clboss): automated C-Lightning Node Manager\n    * [currencyrate](https://github.com/lightningd/plugins/tree/master/currencyrate): currency converter\n    * [monitor](https://github.com/lightningd/plugins/tree/master/monitor): helps you analyze the health of your peers and channels\n    * [rebalance](https://github.com/lightningd/plugins/tree/master/rebalance): keeps your channels balanced\n    * [trustedcoin](https://github.com/nbd-wtf/trustedcoin) ([experimental](docs/services.md#trustedcoin)): replaces bitcoind with trusted public explorers\n    * [zmq](https://github.com/lightningd/plugins/tree/master/zmq): publishes notifications via ZeroMQ to configured endpoints\n  * [lnd](https://github.com/lightningnetwork/lnd) with support for announcing an onion service and [static channel backups](https://github.com/lightningnetwork/lnd/blob/master/docs/recovery.md)\n    * [Lightning Loop](https://github.com/lightninglabs/loop)\n    * [Lightning Pool](https://github.com/lightninglabs/pool)\n    * [charge-lnd](https://github.com/accumulator/charge-lnd): policy-based channel fee manager\n  * [lndconnect](https://github.com/LN-Zap/lndconnect): connect your wallet to lnd or\n    clightning [via WireGuard](./docs/services.md#use-zeus-mobile-lightning-wallet-via-wireguard) or\n    [Tor](./docs/services.md#use-zeus-mobile-lightning-wallet-via-tor)\n  * [Ride The Lightning](https://github.com/Ride-The-Lightning/RTL): web interface for `lnd` and `clightning`\n  * [mempool](https://github.com/mempool/mempool): Bitcoin visualizer, explorer, and API service\n  * [electrs](https://github.com/romanz/electrs): Electrum server\n  * [fulcrum](https://github.com/cculianu/Fulcrum): Electrum server (see [the module](modules/fulcrum.nix) for a comparison with electrs)\n  * [btcpayserver](https://github.com/btcpayserver/btcpayserver)\n  * [liquid](https://github.com/elementsproject/elements): federated sidechain\n  * [JoinMarket](https://github.com/joinmarket-org/joinmarket-clientserver)\n    * [JoinMarket Orderbook Watcher](https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/orderbook.md)\n  * [bitcoin-core-hwi](https://github.com/bitcoin-core/HWI)\n* Helper\n  * [netns-isolation](modules/netns-isolation.nix): isolates applications on the network-level via network namespaces\n  * [nodeinfo](modules/nodeinfo.nix): script which prints info about the node's services\n  * [backups](modules/backups.nix): duplicity backups of all your node's important files\n  * [operator](modules/operator.nix): configures a non-root user who has access to client tools (e.g. `bitcoin-cli`, `lightning-cli`)\n\nSecurity\n---\nSee [SECURITY.md](SECURITY.md) for the security policy and how to report a vulnerability.\n\nnix-bitcoin aims to achieve a high degree of security by building on the following principles:\n\n* **Simplicity:** Only services enabled in `configuration.nix` and their dependencies are installed, support for [doas](https://github.com/Duncaen/OpenDoas) ([sudo alternative](https://lobste.rs/s/efsvqu/heap_based_buffer_overflow_sudo_cve_2021#c_c6fcfa)), code is continuously reviewed and refined.\n* **Integrity:** The Nix package manager guarantees that all dependencies are exactly specified, packages can be built from source to reduce reliance on binary caches, nix-bitcoin merge commits are signed, all commits are approved by multiple nix-bitcoin developers, upstream packages are cryptographically verified where possible, we use this software ourselves.\n* **Principle of Least Privilege:** Services operate with least privileges; they each have their own user and are restricted further with [systemd features](pkgs/lib.nix), [RPC whitelisting](modules/bitcoind-rpc-public-whitelist.nix) and [netns-isolation](modules/netns-isolation.nix). There's a non-root user *operator* to interact with the various services.\n* **Defense-in-depth:** nix-bitcoin supports a [hardened kernel](https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/profiles/hardened.nix), services are confined through discretionary access control, Linux namespaces, [dbus firewall](modules/security.nix) and seccomp-bpf with continuous improvements.\n\nNote that if the machine you're deploying *from* is insecure, there is nothing nix-bitcoin can do to protect itself.\n\nSecurity fund\n---\nThe nix-bitcoin security fund is a 2 of 3 bitcoin multisig address open for donations, used to reward\nsecurity researchers who discover vulnerabilities in nix-bitcoin or its upstream dependencies.\\\nSee [Security Fund](./SECURITY.md#nix-bitcoin-security-fund) for details.\n\nDeveloping\n---\nSee [dev/README](./dev/README.md).\n\nTroubleshooting\n---\nIf you are having problems with nix-bitcoin check the [FAQ](docs/faq.md) or submit an issue.\\\nThere's also a Matrix room at [#general:nixbitcoin.org](https://matrix.to/#/#general:nixbitcoin.org).\\\nWe are always happy to help.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffort-nix%2Fnix-bitcoin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffort-nix%2Fnix-bitcoin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffort-nix%2Fnix-bitcoin/lists"}