Update, 2024-08-20:
Added a missing step, to install the qBittorrent files to their relevant places
Also, it had to happen. No releases for close to three months and then just as I learn to compile, a new version has to release the very next day 😂
It gave me a chance to test my notes. It hardly took me a few minutes to get the new release in place. So all is good!
A compilation of letters, courtesy Cosmos
I wanted to always have the lastest stable version of qBittorent on my Pi.
So today, I sat down and followed the project’s excellent instructions and got it running.
I did however stray off the beaten path a teensy bit1.
I didn’t want a gui and I wanted to be able to control it with systemd.
So here’s my checklist for next release. I’m currently running Bookworm on my Pi 5
In case you run into problems, compile instructions are here: https://github.com/qbittorrent/qBittorrent/wiki/Compilation-Debian,-Ubuntu,-and-derivatives
Do all off this after switching to root. (or
sudo
)Install build tools
sudo apt install build-essential cmake git ninja-build pkg-config libboost-dev libssl-dev zlib1g-dev libgl1-mesa-dev
Install Qt dependencies (
qtbase5-private-dev
is not part of the instructions, but compile will fail if you don’t include it)2sudo apt install --no-install-recommends qtbase5-dev qtbase5-private-dev qttools5-dev libqt5svg5-dev
Qt requires Python at runtime, so:
sudo apt install python3
Install the libtorrent library. I compiled from source. Check page for fresh instructions, if stuff here doesn’t work
git clone --recurse-submodules https://github.com/arvidn/libtorrent.git cd libtorrent git checkout RC_2_0 # or a 2.0.x tag cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr/local cmake --build build -j4 # the -j4 is to do on four cores at once. my addition. sudo cmake --install build
If you ever want to uninstall libtorrent, then don’t delete this main folder. The build process would have created a
install_manifest.txt
in the build folder. So you can then uninstall with:sudo xargs rm < install_manifest.txt
Get qb source: https://www.qbittorrent.org/download.
Unzip:
tar xzvf qbittorrent-4.6.5.tar.gz
and thencd qbittorrent-4.6.5/
Create Build configuration (disabled GUI and enabled systemd. Those aren’t part of the defaults)
cmake -G "Ninja" -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr/local -DGUI=OFF -DSYSTEMD=ON
Build
cmake --build build
Install all the files to their relevant locations
cmake --install build
Install service to run for a specific user.
systemctl daemon-reload systemctl enable qbittorrent-nox@<some-user>.service systemctl start qbittorrent-nox@<some-user>.service
We’re done.
Feedback on this post? Mail me at feedback at this domain
P.S. Subscribe to my mailing list!
Forward these posts and letters to your friends and get them to subscribe!
P.P.S. Feed my insatiable reading habit.