64 lines
2.2 KiB
Nix
64 lines
2.2 KiB
Nix
# This is a system configuration template that uses nix-bitcoin.
|
|
#
|
|
# You can adapt this to an existing system flake by copying the parts
|
|
# relevant to nix-bitcoin.
|
|
#
|
|
# Make sure to check and edit all lines marked by 'FIXME:'
|
|
|
|
{
|
|
description = "a simple yet secure bitcoin node using nix-bitcoin";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "nixpkgs/nixos-unstable";
|
|
nix-bitcoin.url = "github:fort-nix/nix-bitcoin/release";
|
|
# You can also use a version branch to track a specific NixOS release
|
|
# nix-bitcoin.url = "github:fort-nix/nix-bitcoin/nixos-24.05";
|
|
};
|
|
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
nix-bitcoin,
|
|
...
|
|
}: let
|
|
lib = nixpkgs.lib;
|
|
in {
|
|
nixosConfigurations = {
|
|
# FIXME: change "host" to the hostname of your system defined in configuration.nix
|
|
host = lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
./configuration.nix
|
|
nix-bitcoin.nixosModules.default
|
|
# Optional:
|
|
# Import the secure-node preset, an opinionated config to enhance security
|
|
# and privacy.
|
|
(nix-bitcoin + "/modules/presets/secure-node.nix")
|
|
{
|
|
nix-bitcoin = {
|
|
# Automatically generate all secrets required by services.
|
|
# The secrets are stored in /etc/nix-bitcoin-secrets
|
|
generateSecrets = true;
|
|
# When using nix-bitcoin as part of a larger NixOS configuration, set the following to enable
|
|
# interactive access to nix-bitcoin features (like bitcoin-cli) for your system's main user
|
|
operator = {
|
|
enable = true;
|
|
# FIXME: Set this to your system's main user
|
|
name = "satoshi";
|
|
};
|
|
};
|
|
}
|
|
# If you use a custom nixpkgs version for evaluating your system
|
|
# (instead of `nix-bitcoin.inputs.nixpkgs` like in this example),
|
|
# consider setting `useVersionLockedPkgs = true` to use the exact pkgs
|
|
# versions for nix-bitcoin services that are tested by nix-bitcoin.
|
|
# The downsides are increased evaluation times and increased system
|
|
# closure size.
|
|
#
|
|
nix-bitcoin.useVersionLockedPkgs = true;
|
|
];
|
|
};
|
|
};
|
|
};
|
|
}
|