Skip to content

userdocs/qbittorrent-nox-static

Repository files navigation

qBittorrent-nox Static Builds

Codacy Badge CodeFactor CI

Cross-platform static builds of qBittorrent-nox with the latest dependencies

πŸ“¦ Latest Release β€’ πŸ“– Documentation β€’ 🏷️ All Releases

Tip

Docker: Use https://hotio.dev/containers/qbittorrent

Libtorrent v1.2 and v2 static builds combined into a single docker image with vpn support.

πŸš€ Quick Start

Quick Install

Note

qi.bash: The quick installer supports Alpine or Debian like systems.

Latest release using libtorrent v2

bash <(curl -sL https://raw.githubusercontent.com/userdocs/qbittorrent-nox-static/refs/heads/master/qi.bash)

Latest release using libtorrent v1.2

bash <(curl -sL https://raw.githubusercontent.com/userdocs/qbittorrent-nox-static/refs/heads/master/qi.bash) -lt v1

Using Libtorrent v1.2 and forcing the armv7 binary

bash <(curl -sL https://raw.githubusercontent.com/userdocs/qbittorrent-nox-static/refs/heads/master/qi.bash) -lt v1 -fa armv7

Show the help section

bash <(curl -sL https://raw.githubusercontent.com/userdocs/qbittorrent-nox-static/refs/heads/master/qi.bash) -h

You can now run it using this command:

~/bin/qbittorrent

Tip

Access the WebUI at http://localhost:8080

What You Get

βœ… No installation hassles - Single static binary βœ… Latest versions - Always up-to-date dependencies βœ… Universal compatibility - Runs on any Linux distro βœ… Multiple architectures - Support for ARM devices too

πŸ“‹ Table of Contents

πŸ” Overview

The qbittorrent-nox-static project provides a bash build script that compiles static qbittorrent-nox binaries using the latest available dependencies from their source. These statically linked binaries offer several advantages:

  • Universal compatibility: Run on any Linux distribution with matching CPU architecture
  • No dependencies: All required libraries are statically linked
  • Latest versions: Built with the most recent stable releases of all dependencies
  • Multiple architectures: Support for x86, x86_64, ARM variants

✨ Features

  • πŸ”§ Static compilation - No external dependencies required
  • πŸ—οΈ Multi-architecture support - x86, x86_64, armhf, armv7, aarch64
  • πŸ“¦ Latest dependencies - Always built with current stable versions
  • πŸ”„ Automated builds - CI/CD pipeline ensures fresh releases
  • πŸ›‘οΈ Build attestation - Cryptographically signed provenance
  • πŸ“Š Version tracking - JSON metadata for dependency versions

πŸ“¦ Installation

Choose the command that matches your system architecture:

x86 (32-bit Intel/AMD)

mkdir -p ~/bin && source ~/.profile
wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/x86-qbittorrent-nox
chmod 700 ~/bin/qbittorrent-nox

x86_64 (64-bit Intel/AMD)

mkdir -p ~/bin && source ~/.profile
wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/x86_64-qbittorrent-nox
chmod 700 ~/bin/qbittorrent-nox

armhf (ARM v6 - Raspberry Pi 1/Zero)

mkdir -p ~/bin && source ~/.profile
wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/armhf-qbittorrent-nox
chmod 700 ~/bin/qbittorrent-nox

armv7 (ARM v7 - Raspberry Pi 2/3/4 32-bit)

mkdir -p ~/bin && source ~/.profile
wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/armv7-qbittorrent-nox
chmod 700 ~/bin/qbittorrent-nox

aarch64 (ARM 64-bit - Raspberry Pi 3/4/5 64-bit)

mkdir -p ~/bin && source ~/.profile
wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/aarch64-qbittorrent-nox
chmod 700 ~/bin/qbittorrent-nox

πŸ”§ Libtorrent Versions

Important

Libtorrent v1.2 is currently the main branch supported by qBittorrent since the release of 4.4.5. However, both v1.2 and v2.0 builds are provided.

This project automatically builds and releases binaries for both Libtorrent versions:

  • Libtorrent v1.2: Stable and widely supported (recommended)
  • Libtorrent v2.0: Latest features and improvements

Tip

You can view all current releases and pre-releases at https://github.com/userdocs/qbittorrent-nox-static/tags

🎯 Version Management

Getting Version-Specific Releases

Since this project builds both v1.2 and v2.0 simultaneously, you can target specific libtorrent versions using these commands:

Libtorrent v1.2 Release Info

jq -r '. | "release-\(.qbittorrent)_v\(.libtorrent_1_2)"' < <(curl -sL https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/dependency-version.json)

Libtorrent v2.0 Release Info

jq -r '. | "release-\(.qbittorrent)_v\(.libtorrent_2_0)"' < <(curl -sL https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/dependency-version.json)

Build Revisions

The build system tracks 5 main dependencies that trigger automatic rebuilds:

  • qBittorrent
  • Libtorrent
  • Qt
  • Boost
  • OpenSSL

Revision Tracking:

  • New releases start at revision 0
  • Incremented by 1 for each rebuild
  • Updates to Qt, Boost, or OpenSSL only update existing release assets
  • Updates to qBittorrent or Libtorrent create new releases

Check Latest Revision

jq -r '.revision' < <(curl -sL "https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/dependency-version.json")

Track Specific Version Revisions

For independent tracking of v1.2 and v2.0 revisions:

  1. Get the release tag:

    release="$(jq -r '. | "release-\(.qbittorrent)_v\(.libtorrent_1_2)"' < <(curl -sL https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/dependency-version.json))"
  2. Get the revision for that release:

    jq -r '.revision' < <(curl -sL "https://github.com/userdocs/qbittorrent-nox-static/releases/download/${release}/dependency-version.json")

πŸ“Š Dependency Tracking

Each release includes a dependency-version.json file that provides version information shared across latest and pre-releases. This helps overcome API limitations for consistent access to version data.

Download Dependency Information

curl -sL https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/dependency-version.json

Example Output

{
    "openssl": "3.2.0",
    "boost": "1.84.0",
    "libtorrent_1_2": "1.2.19",
    "libtorrent_2_0": "2.0.9",
    "qt5": "5.15.12",
    "qt6": "6.6.1",
    "qbittorrent": "4.6.2",
    "revision": "3"
}

Important

Starting with qBittorrent v5, configure-based builds will be unsupported. Only CMake builds will be available, with Qt6 as the default. Qt5 builds will be considered legacy and eventually dropped.

πŸ›‘οΈ Build Attestation

Binaries built from release-5.0.0_v2.0.10 and release-5.0.0_v1.2.19 revision 1 onwards use actions/attest-build-provenance for cryptographic verification.

Verify Binary Integrity

You can verify the integrity and provenance of downloaded binaries using GitHub CLI:

gh attestation verify x86_64-qbittorrent-nox -o userdocs

Example Verification Output

Loaded digest sha256:a656ff57b03ee6218205d858679ea189246caaecbbcc38d4d2b57eb81d8e59bb for file://x86_64-qbittorrent-nox
Loaded 1 attestation from GitHub API
βœ“ Verification succeeded!

sha256:a656ff57b03ee6218205d858679ea189246caaecbbcc38d4d2b57eb81d8e59bb was attested by:
REPO                             PREDICATE_TYPE                  WORKFLOW
userdocs/qbittorrent-nox-static  https://slsa.dev/provenance/v1  .github/workflows/matrix_multi_build_and_release_qbt_workflow_files.yml@refs/heads/master

For more information, visit the GitHub CLI attestation documentation.

πŸ”— Related Projects

This build script depends on several related repositories:

πŸ’» WSL2 Support

Tip

These static builds work perfectly on WSL2! After installation, access the WebUI at localhost:8080 from your Windows browser.

The static nature of these builds makes them ideal for WSL2 environments where dependency management can be challenging.

πŸ“– Documentation

Tip

For comprehensive documentation, visit the project documentation which covers:

  • Detailed build instructions
  • Advanced configuration options
  • Troubleshooting guides
  • Contributing guidelines

About

A bash script which builds a fully static qbittorrent-nox binary with current dependencies to use on any Linux OS

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages