Skip to content

Repository files navigation

HoboNickels

HoboNickels (HBN)

A Scrypt proof-of-work / proof-of-stake hybrid cryptocurrency — a 2014-era Bitcoin / Peercoin / Novacoin fork, modernized to build and run on a current toolchain.

CI Release License Platforms

Download · Build from source · Specifications · Documentation


HoboNickels is a self-mintable PoS coin: hold coins in an unlocked wallet and it stakes them to earn rewards and secure the network. This repository is a modernization of the original 2014 client — the consensus rules (signatures, addresses, hashing, the kernel) are byte-for-byte unchanged and fully network-compatible, while everything around them was brought up to date:

  • 🛠️ Modern toolchain — Ubuntu 24.04 · GCC 13 · OpenSSL 3 · Boost 1.83 · Berkeley DB · Qt 5, built with CMake (the old autotools/.pro system is retired).
  • ⚡ Instant & faster sync — automatic P2P snap-sync brings a fresh node up in seconds; classic sync is headers-first, multi-peer, and height-windowed (~5–9× faster IBD), with a profiled fix to an O(height²) checkpoint walk and redundant scrypt re-hashing removed. Plus libsecp256k1 signature verification (OpenSSL fallback, no fork), dynamic checkpointing, and tuned LevelDB caching.
  • 🖥️ Modern Qt5 wallet — high-DPI aware, light/dark themes (-uitheme), a fully redrawn flat icon set and coin-render branding (no 2014 artwork left).
  • 🪙 Smarter staking — autocombine actually consolidates ripe dust and split no longer fragments stakes; the per-block staking metadata cache cuts disk I/O. All wallet policy — no consensus change.
  • 🔌 Modern RPC — lightweight read-only endpoints (getblockchaininfo, getnetworkinfo, getwalletinfo, getblockheader, getmempoolinfo, uptime).
  • ✅ CI & Docker — every change is built and tested on Linux + Windows + Docker.

Latest release: v2.3.6-modern — the consolidated modern client: instant P2P snap-sync, profiled sync-speed fixes, dynamic-checkpoint fast validation, a rebuilt non-destructive traffic graph, and a staking wallet that no longer slows sync. The release notes carry the full changelog since the fork; see also doc/MODERNIZATION.md.

Download

Pre-built, self-contained binaries for Linux and Windows are on the Releases page:

Component Linux Windows
Daemon (headless) HoboNickelsd-*-linux-x86_64.tar.gz HoboNickelsd-*-windows-x86_64.zip
Wallet GUI (Qt5) HoboNickels-qt-*-linux-x86_64.tar.gz HoboNickels-qt-*-windows-x86_64.zip

The Windows .zips bundle every runtime DLL (and the Qt platform plugin) and are verified in CI to launch with the build toolchain off the PATH — just unzip and run the .exe.

Windows SmartScreen flags the unsigned .exe ("unknown publisher"). Click More info → Run anyway, or right-click → Properties → Unblock first. Verify the download against SHA256SUMS.txt on the release. To remove the warning entirely we need an Authenticode code-signing certificate — CI is already set up to sign automatically once one is provided; see doc/windows-code-signing.md.

Build from source

Linux (daemon):

sudo apt-get install -y build-essential cmake pkg-config \
    libboost-all-dev libssl-dev libdb++-dev libminiupnpc-dev zlib1g-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j"$(nproc)"
./build/HoboNickelsd --help

Add the Qt5 GUI with -DWITH_QT_GUI=ON (needs qtbase5-dev qttools5-dev). For the GUI, Windows/MSYS2, Docker, unit tests, and all other options see doc/build-unix-modern.md.

Run

# create the data dir + config (the daemon prints a suggested rpcpassword on first run)
./build/HoboNickelsd          # start the node
./build/HoboNickelsd getinfo  # query it

Known-good peers and DNS seeds are built in. Tunable options (sync, staking, networking, GUI theme) are documented in doc/configuration.md.

Specifications

Algorithm Scrypt
Type Hybrid Proof-of-Work + Proof-of-Stake
PoW block reward 5 HBN
Supply No fixed cap — proof-of-stake is inflationary
Confirmations 25
Difficulty retarget Linear
Stake reward 20% min → 100% max annual, capped at 250 HBN
Stake weight 1 day min, 30 days max
Default P2P port 7372
Default RPC port 7373

Based on NovaCoin / BitGems / Bottlecaps.

Wallet features

  • Proof-of-stake minting with Stake-For-Charity — donate a configurable percentage of each stake to an address.
  • Multi-wallet — dynamically load and unload wallets at runtime.
  • Automatic stake-output management — autocombine consolidates ripe small outputs and split keeps them a sensible size, plus coin control; all tunable via splitthreshold / combinethreshold.
  • Built-in block browser and a modern network traffic graph (smooth area chart, adaptive B/KB/MB units, hover readout).
  • At-a-glance peer, stake, and block information.
  • Modern Qt5 GUI: high-DPI, light/dark/native themes (-uitheme).
  • RPC console in the GUI exposing the full command set.
  • Self-compacting wallet — wallet.dat is rewritten automatically so it never bloats over time (-walletcompact, on by default; compactwallet RPC on demand).

Tools

  • contrib/explorer/ — a single-file, dependency-free (Python 3 stdlib only) block explorer. Point it at a local node and browse the chain in your browser: python3 contrib/explorer/hbn_explorer.py. Read-only.

Documentation

Everything lives under doc/:

Document What it covers
MODERNIZATION.md What changed and why — start here
build-unix-modern.md Building with CMake (daemon, GUI, Windows, Docker, tests)
configuration.md Runtime options (sync, staking, networking, GUI, RPC)
gui.md The Qt5 wallet — theming, high-DPI, RPC console
staking-performance.md How PoS minting works and the performance work
performance.md Sync/validation/memory optimizations + the deferred roadmap

Brand and UI graphics for designers are in media-kit/.

License

Released under the MIT/X11 license — see COPYING. Built on the work of the Bitcoin, Peercoin (PPCoin), and Novacoin developers.

About

HoboNickels (HBN) — modernized: builds on Ubuntu 24.04 / GCC 13 / OpenSSL 3 / Boost 1.83 / BDB 5.3 with a CMake build, CI and Docker. Fork of Tranz5/HoboNickels.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages