Skip to content

Releases

Rookparcel 1.2.21

Choose a tag to compare

@github-actions github-actions released this 07 Nov 12:58

Rookparcel 1.2.21 shows a torrent's files in their folders. The Files tab now has the same tree as the Add Torrent dialog in every app (Windows, Linux, macOS and the Web UI), and one click gives back µTorrent's single list of paths. The Add Torrent dialog gets a file filter and type-ahead, the GTK app no longer closes on some systems as soon as a torrent is listed, and rookparcel-nox now comes as a Docker image too.

Rookparcel is a lean BitTorrent client in the spirit of µTorrent 2.2.1: small single-file binaries, a native look, low RAM and CPU use, and an interface that stays responsive with tens of thousands of torrents. The engine is our own Rust port of libtorrent-rasterbar 2.0.11; nothing is linked.

New since 1.2.19

Version 1.2.20 was a development step and was never released; this list covers it.

  • The Files tab's folder tree. The torrent's files show in their folders, as in the Add Torrent dialog:
    • folders open and close with their arrow, a double click, or the Left and Right keys; Left on a file goes to its folder;
    • a folder adds up its files' Size and Done, and shows their priority, or Mixed when they differ;
    • a priority, Don't Download or Prioritize by File Order chosen on a folder applies to all its files (only the shown ones while the filter is on); Open on a folder opens the folder;
    • folders you close stay closed while the torrent downloads and after priority changes.
  • Tree view or one list. The Tree view button beside the Filter files box, or Tree View in the tab's right-click menu, switches to µTorrent 2.2.1's single list of paths. Rookparcel remembers the choice (the Web UI per browser).
  • Add Torrent: filter and type-ahead. A Filter files box above the dialog's files shows only those whose path has every word you type, so you can check or uncheck them in one go; Select All, Select None and a folder's check box then act on the shown files only. Typing a letter jumps to the next file starting with it, in all four apps.
  • Windows: type-ahead in the lists. Typing in the torrent list, the Files tab and the other detail tabs jumps to the matching row, as in Explorer.
  • Web UI: the Add dialog and the Files tab are driven by the keyboard too (arrows, Space, letters).
  • Docker. ghcr.io/balls0fsteel/rookparcel-nox:1.2.21 (and :latest) runs the daemon with its Web UI and qBittorrent-compatible API on amd64 and arm64. Settings and torrents live in the /config volume, downloads in /downloads; ROOKPARCEL_WEBUI_PASS sets the login. The Docker page has a Compose file for use with Sonarr, Radarr and Prowlarr.
  • Fix (GTK): since 1.2.0, the GTK app could close at once (or show an empty list) as soon as a torrent was in the list; it was seen with GTK 4.22. The alternate-row shading changed rows GTK was still building.

Downloads

SHA256SUMS has every file's checksum.

Platform File What is inside
Windows 10 / 11, x64, installer rookparcel-1.2.21-windows-x64-setup.exe rookparcel.exe (the GUI) and rookparcel-nox.exe (the headless daemon), installed with a Start menu entry and an uninstaller
Windows 10 / 11, x64, portable rookparcel-1.2.21-windows-x64.zip the same two programs; statically linked, nothing to install
macOS 11 or newer, Apple silicon or Intel Rookparcel-1.2.21-macos.dmg Rookparcel.app, the native macOS GUI, one universal app
macOS, headless rookparcel-nox-1.2.21-macos-<arch>.tar.gz rookparcel-nox for Apple silicon (arm64, macOS 11+) and Intel (x86_64, macOS 10.14+)
Linux desktop, x86_64 or aarch64 Rookparcel-1.2.21-<arch>.AppImage the GTK 4 GUI with its libraries bundled (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13 or later)
Linux desktop, Flatpak Rookparcel-1.2.21-<arch>.flatpak the GTK 4 GUI on the GNOME 51 runtime (installed from Flathub)
Linux, plain binaries rookparcel-1.2.21-linux-<arch>.tar.gz rookparcel-gtk, rookparcel-nox, the desktop entry and the systemd units; they use the system's GTK 4 (4.12 or newer) and OpenSSL 3, as on Ubuntu 24.04
Linux server, headless rookparcel-nox-1.2.21-<arch>.AppImage rookparcel-nox with OpenSSL bundled
Docker, amd64 or arm64 ghcr.io/balls0fsteel/rookparcel-nox:1.2.21 rookparcel-nox on Debian 12 slim; not a release file, pulled with docker pull

Updating

  • Windows installer. Rookparcel 1.2.5 and later offer the update themselves: Help > Check for Updates, then "Download and install". Settings and torrents are kept.
  • macOS. Quit Rookparcel first, then drag the new Rookparcel.app to Applications over the old one.
  • Everything else. Replace the program, the AppImage or the bundle as before. Settings and torrents are kept.
  • Remote control. The remote protocol is unchanged (16), so 1.2.5 to 1.2.21 GUIs and daemons work with each other.
  • From PaTorrent. PaTorrent does not offer this update. Install Rookparcel by hand, as in 1.2.5's notes.

First run

  • Windows installer. Run the setup. It is not code-signed, so SmartScreen shows "Windows protected your PC": click More info > Run anyway. "Install for anyone using this computer" asks for administrator rights and shows "Unknown publisher". Settings and torrents are in %APPDATA%\Rookparcel.

  • Windows zip. Unzip anywhere and start rookparcel.exe; SmartScreen warns as above. An empty rookparcel.ini next to the exe keeps settings and torrents beside it (portable mode).

  • macOS.

    1. Open the disk image and drag Rookparcel.app to Applications.
    2. The app is ad-hoc signed and not notarised, so Gatekeeper refuses it the first time. Right-click (or Control-click) the app, choose Open, then click Open. If macOS offers no Open button, open System Settings > Privacy & Security and click Open Anyway. Or run xattr -dr com.apple.quarantine /Applications/Rookparcel.app in Terminal.
    3. macOS may ask whether Rookparcel may find devices on local networks. Allow it for peers and a Rookparcel daemon on your own network; downloads from the internet work either way.

    Settings and torrents are in ~/Library/Application Support/Rookparcel/mac.

  • Linux AppImage. Run chmod +x Rookparcel-1.2.21-x86_64.AppImage, then start it. Without FUSE 2 on the system, start it with --appimage-extract-and-run. Settings are in ~/.config/rookparcel/gtk, torrents in ~/.local/share/rookparcel/gtk.

  • Linux Flatpak. The bundle holds the application; the runtime comes from Flathub:

    flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
    flatpak install --user Rookparcel-1.2.21-x86_64.flatpak
    flatpak run io.github.balls0fsteel.Rookparcel
  • Headless. rookparcel-nox run --webui 8080 --webui-pass PASS starts the daemon with its Web UI and a qBittorrent-compatible Web API on port 8080. DAEMON.md describes services: systemd, FreeBSD rc.d, --daemon and Windows, one per profile if you like.

  • Docker.

    docker run -d --name rookparcel -p 8080:8080 -p 6881:6881 -p 6881:6881/udp -e ROOKPARCEL_WEBUI_PASS=choose-one -v rookparcel-config:/config -v /srv/media:/downloads ghcr.io/balls0fsteel/rookparcel-nox:1.2.21

    Then open http://<host>:8080 and log in as admin. Without ROOKPARCEL_WEBUI_PASS, docker logs rookparcel shows a temporary password. Stop it with docker stop -t 60 rookparcel, so it has time to save its torrents.

Known limitations

  • Everything in 1.2.0's limitations, 1.2.5's and 1.2.19's still applies.
  • The folder tree was tried by hand in a test machine for each app, not with right-to-left languages, at high DPI on Windows, or on a real phone. In the Mac app, Return does not open a file while the tree is shown (a double click does).
  • The Docker image was tried on amd64 only. UPnP and NAT-PMP do not reach the router from Docker's default network: forward port 6881 yourself, or run the container with --network host. Other containers reaching the Web UI by name (http://rookparcel:8080) need that name under Preferences > Web UI > Server domains.
  • Do not use it on private trackers yet. The client ID RP is not whitelisted anywhere.

Reporting problems

Open an issue with your platform, the file you used and what happened. For a crash or a stuck torrent, include the Logger tab or rookparcel-nox run --verbose output. On a Mac, Console.app's crash report for Rookparcel helps too. For security problems, see SECURITY.md.

License

Rookparcel is free for noncommercial use under the PolyForm Noncommercial License 1.0.0. Code ported from libtorrent remains under its BSD-3-Clause license; every download carries LICENSE.md and THIRD-PARTY-NOTICES.md. Rookparcel is an independent project, not affiliated with libtorrent, qBittorrent, µTorrent or BitTorrent, Inc.

Rookparcel 1.2.19

Choose a tag to compare

@github-actions github-actions released this 06 Nov 19:11

Rookparcel 1.2.19 brings a native macOS app. Rookparcel.app is now written for macOS itself (AppKit) instead of being the GTK GUI with its libraries bundled. It is one app for Apple silicon and Intel Macs, it runs on macOS 11 Big Sur or newer, and it takes over the settings and torrents of the GTK app at its first start. On every platform, a magnet that was stopped from its Add dialog now reconnects at once when it is started.

Rookparcel is a lean BitTorrent client in the spirit of µTorrent 2.2.1: small single-file binaries, a native look, low RAM and CPU use, and an interface that stays responsive with tens of thousands of torrents. The engine is our own Rust port of libtorrent-rasterbar 2.0.11; nothing is linked.

New since 1.2.5

Versions 1.2.6 to 1.2.18 were development steps and were never released; this list covers them all.

  • A native Mac app. The same main window, menus and dialogs as on Windows and Linux, built with AppKit:
    • the torrent list with all 24 columns, the sidebar with categories, labels and RSS feeds, the seven detail tabs and the status bar;
    • every dialog: Add, Add from URL, Create, Properties, the RSS Downloader, search with its sources, import from µTorrent and qBittorrent, profiles, Connect to Remote and the Setup Guide;
    • menus with ⌘ shortcuts, Full Screen, light and dark mode, and right-to-left languages.
  • Apple silicon and Intel. Rookparcel-1.2.19-macos.dmg holds one universal app for both, macOS 11 Big Sur or newer. The GTK app ran on Apple silicon with macOS 15 only, so Intel Macs now get the GUI too.
  • Preferences apply at once on the Mac, as is usual there. There is no OK or Apply. A value that cannot be used is shown in red under its field and is not applied.
  • Built into macOS:
    • a menu bar icon instead of a tray icon: a click shows or hides the window, and a right-click opens its menu;
    • closing or minimizing into the menu bar, and a click on the Dock icon to bring the window back;
    • notifications when downloads complete;
    • .torrent files and magnet: links opened from Finder and browsers;
    • "Start Rookparcel on system startup" as a login item;
    • Auto Shutdown's Sleep and Shut Down (macOS may ask once whether Rookparcel may do this).
  • From the GTK app to the native one. At its first start, the new app renames ~/Library/Application Support/Rookparcel/gtk to mac, every profile's folder included, and corrects the paths inside, so settings, torrents and profiles carry over. A login item the old app made keeps working.
  • Portable on the Mac. An empty rookparcel.ini beside Rookparcel.app keeps everything in that folder. macOS's own open and save panels still note their last folders in ~/Library/Preferences, so the app puts its entry there back as it found it when it quits.
  • Fix (every platform): a magnet added with "Start torrent" unchecked fetches its metadata and then stops. When it was started later, it waited a minute before reconnecting to the peer it came from. It now reconnects at once.
  • Windows and Linux are otherwise unchanged. The GTK GUI is now for Linux and BSD only.

Downloads

SHA256SUMS has every file's checksum.

Platform File What is inside
Windows 10 / 11, x64, installer rookparcel-1.2.19-windows-x64-setup.exe rookparcel.exe (the GUI) and rookparcel-nox.exe (the headless daemon), installed with a Start menu entry and an uninstaller
Windows 10 / 11, x64, portable rookparcel-1.2.19-windows-x64.zip the same two programs; statically linked, nothing to install
macOS 11 or newer, Apple silicon or Intel Rookparcel-1.2.19-macos.dmg Rookparcel.app, the native macOS GUI, one universal app
macOS, headless rookparcel-nox-1.2.19-macos-<arch>.tar.gz rookparcel-nox for Apple silicon (arm64, macOS 11+) and Intel (x86_64, macOS 10.14+)
Linux desktop, x86_64 or aarch64 Rookparcel-1.2.19-<arch>.AppImage the GTK 4 GUI with its libraries bundled (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13 or later)
Linux desktop, Flatpak Rookparcel-1.2.19-<arch>.flatpak the GTK 4 GUI on the GNOME 51 runtime (installed from Flathub)
Linux, plain binaries rookparcel-1.2.19-linux-<arch>.tar.gz rookparcel-gtk, rookparcel-nox, the desktop entry and the systemd units; they use the system's GTK 4 (4.12 or newer) and OpenSSL 3, as on Ubuntu 24.04
Linux server, headless rookparcel-nox-1.2.19-<arch>.AppImage rookparcel-nox with OpenSSL bundled

Updating

  • Windows installer. Rookparcel 1.2.5 offers the update itself: Help > Check for Updates, then "Download and install". Settings and torrents are kept.
  • macOS, from 1.2.5. Quit the old Rookparcel first. Then drag the new Rookparcel.app to Applications over the old one, and start it. While the old app is still running, the new one says "Another Rookparcel is already using this folder" and closes.
  • Everything else. Replace the program, the AppImage or the bundle as before. Settings and torrents are kept.
  • Remote control. The remote protocol is unchanged (16), so 1.2.5 and 1.2.19 GUIs and daemons work with each other.
  • From PaTorrent. PaTorrent does not offer this update. Install Rookparcel by hand, as in 1.2.5's notes.

First run

  • Windows installer. Run the setup. It is not code-signed, so SmartScreen shows "Windows protected your PC": click More info > Run anyway. "Install for anyone using this computer" asks for administrator rights and shows "Unknown publisher". Settings and torrents are in %APPDATA%\Rookparcel.

  • Windows zip. Unzip anywhere and start rookparcel.exe; SmartScreen warns as above. An empty rookparcel.ini next to the exe keeps settings and torrents beside it (portable mode).

  • macOS.

    1. Open the disk image and drag Rookparcel.app to Applications.
    2. The app is ad-hoc signed and not notarised, so Gatekeeper refuses it the first time. Right-click (or Control-click) the app, choose Open, then click Open. If macOS offers no Open button, open System Settings > Privacy & Security and click Open Anyway. Or run xattr -dr com.apple.quarantine /Applications/Rookparcel.app in Terminal.
    3. macOS may ask whether Rookparcel may find devices on local networks. Allow it for peers and a Rookparcel daemon on your own network; downloads from the internet work either way.

    Settings and torrents are in ~/Library/Application Support/Rookparcel/mac.

  • Linux AppImage. Run chmod +x Rookparcel-1.2.19-x86_64.AppImage, then start it. Without FUSE 2 on the system, start it with --appimage-extract-and-run. Settings are in ~/.config/rookparcel/gtk, torrents in ~/.local/share/rookparcel/gtk.

  • Linux Flatpak. The bundle holds the application; the runtime comes from Flathub:

    flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
    flatpak install --user Rookparcel-1.2.19-x86_64.flatpak
    flatpak run io.github.balls0fsteel.Rookparcel
  • Headless. rookparcel-nox run --webui 8080 --webui-pass PASS starts the daemon with its Web UI and a qBittorrent-compatible Web API on port 8080. DAEMON.md describes services: systemd, FreeBSD rc.d, --daemon and Windows, one per profile if you like.

Known limitations

  • Everything in 1.2.0's limitations and 1.2.5's still applies.
  • The Mac app was tried by hand only in an Intel Mac virtual machine with macOS 15, so not yet on a Retina screen. On Apple silicon it was started on GitHub's macOS 15 machines only. Versions 11 to 14 are supported by the build but not yet tried.
  • Completion notifications may be switched off on the Mac. If none appear when a download completes, turn them on under System Settings > Notifications > Rookparcel. Once allowed, they show with Rookparcel in front and behind.
  • Hibernate in Auto Shutdown is greyed out on the Mac. macOS has no way for an app to ask for it.
  • Going back to 1.2.5 on the Mac starts the GTK app without your settings and torrents: it does not read the mac folder.
  • Do not use it on private trackers yet. The client ID RP is not whitelisted anywhere.

Reporting problems

Open an issue with your platform, the file you used and what happened. For a crash or a stuck torrent, include the Logger tab or rookparcel-nox run --verbose output. On a Mac, Console.app's crash report for Rookparcel helps too. For security problems, see SECURITY.md.

License

Rookparcel is free for noncommercial use under the PolyForm Noncommercial License 1.0.0. Code ported from libtorrent remains under its BSD-3-Clause license; every download carries LICENSE.md and THIRD-PARTY-NOTICES.md. Rookparcel is an independent project, not affiliated with libtorrent, qBittorrent, µTorrent or BitTorrent, Inc.

Rookparcel 1.2.5

Choose a tag to compare

@github-actions github-actions released this 06 Nov 07:56

Rookparcel 1.2.5 is PaTorrent 1.2.0 under its new name, with a new icon, the Postal Rook. There are no new features. Settings, torrents, profiles and portable folders from PaTorrent are taken over at the first start.

Rookparcel is a lean BitTorrent client in the spirit of µTorrent 2.2.1: small single-file binaries, a native look, low RAM and CPU use, and an interface that stays responsive with tens of thousands of torrents. The engine is our own Rust port of libtorrent-rasterbar 2.0.11; nothing is linked.

New since 1.2.0

  • The name. PaTorrent is now Rookparcel: rookparcel.exe, rookparcel-gtk and rookparcel-nox, the app id io.github.balls0fsteel.Rookparcel, the repository Balls0fSteel/Rookparcel and the website https://balls0fsteel.github.io/Rookparcel/. GitHub forwards the old repository's links; the old website address no longer answers.
  • The icon. The Postal Rook: a rook in a postal cap on a stamp, drawn by hand for 16 to 32 px. On Windows, Linux, macOS, the Web UI and the website.
  • Taking over PaTorrent. At its first start Rookparcel moves PaTorrent's folders (%APPDATA%\PaTorrent, ~/.config/patorrent and ~/.local/share/patorrent, ~/Library/Application Support/PaTorrent) to the new name and renames patorrent.ini to rookparcel.ini, every profile included; the paths in the settings follow. A portable folder with a patorrent.ini is taken over where it is. On Windows, .torrent and magnet associations, the Default apps entry and "Start with Windows" move to Rookparcel. On Linux, the desktop and autostart entries move; on macOS, the login item. While a PaTorrent still runs on a folder, Rookparcel leaves it alone and says so: close PaTorrent first.
  • The Windows setup removes an installed PaTorrent, then installs Rookparcel.
  • Peer ID -RP1014-, and the client name Rookparcel/1.2.5 towards trackers and peers.
  • Fix: a Web UI login that comes in after another guess got its address banned is answered "banned" (403), not "Fails.".

Downloads

SHA256SUMS has every file's checksum.

Platform File What is inside
Windows 10 / 11, x64, installer rookparcel-1.2.5-windows-x64-setup.exe rookparcel.exe (the GUI) and rookparcel-nox.exe (the headless daemon), installed with a Start menu entry and an uninstaller
Windows 10 / 11, x64, portable rookparcel-1.2.5-windows-x64.zip the same two programs; statically linked, nothing to install
Linux desktop, x86_64 or aarch64 Rookparcel-1.2.5-<arch>.AppImage the GTK 4 GUI with its libraries bundled (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13 or later)
Linux desktop, Flatpak Rookparcel-1.2.5-<arch>.flatpak the GTK 4 GUI on the GNOME 51 runtime (installed from Flathub)
Linux, plain binaries rookparcel-1.2.5-linux-<arch>.tar.gz rookparcel-gtk, rookparcel-nox, the desktop entry and the systemd units; they use the system's GTK 4 (4.12 or newer) and OpenSSL 3, as on Ubuntu 24.04
Linux server, headless rookparcel-nox-1.2.5-<arch>.AppImage rookparcel-nox with OpenSSL bundled
macOS, Apple silicon Rookparcel-1.2.5-arm64.dmg Rookparcel.app: the GTK 4 GUI with its libraries bundled (macOS 15 or newer)
macOS, headless rookparcel-nox-1.2.5-macos-<arch>.tar.gz rookparcel-nox for Apple silicon (arm64, macOS 11+) and Intel (x86_64, macOS 10.14+)

Coming from PaTorrent

PaTorrent does not offer this update by itself (its update check read the old website), so install Rookparcel by hand once. Close PaTorrent first.

  • Windows, installed. Run the Rookparcel setup. It removes PaTorrent; the first start of Rookparcel takes over its settings and torrents.

  • Windows, zip or portable. Unzip Rookparcel and start it. A portable PaTorrent folder: put rookparcel.exe beside patorrent.exe and start it there; delete the old exe afterwards.

  • Linux AppImage, tarball; macOS. Start Rookparcel instead of PaTorrent, then delete PaTorrent. On macOS, drag PaTorrent.app to the Bin after Rookparcel has started once.

  • Linux Flatpak. The new app id has its own sandbox folder, which Rookparcel cannot see into. Before the first start, copy PaTorrent's folders across (not yet tried on a real install):

    mkdir -p ~/.var/app/io.github.balls0fsteel.Rookparcel
    cp -a ~/.var/app/io.github.balls0fsteel.PaTorrent/config ~/.var/app/io.github.balls0fsteel.PaTorrent/data ~/.var/app/io.github.balls0fsteel.Rookparcel/
    flatpak uninstall --user io.github.balls0fsteel.PaTorrent
  • patorrent-nox as a service. On Windows, rookparcel-nox service install with the same options replaces the PaTorrentNox service and moves %ProgramData%\PaTorrent. systemd and FreeBSD services move by hand: DAEMON.md.

  • Remote control and scripts. A GUI and the rookparcel-nox it drives must both be 1.2.5 (remote protocol 16); a PaTorrent GUI is told to update. Scripts may keep sending X-Requested-With: PaTorrent.

First run

  • Windows installer. Run the setup. It is not code-signed, so SmartScreen shows "Windows protected your PC": click More info > Run anyway. "Install for anyone using this computer" asks for administrator rights and shows "Unknown publisher". Settings and torrents are in %APPDATA%\Rookparcel.

  • Windows zip. Unzip anywhere and start rookparcel.exe; SmartScreen warns as above. An empty rookparcel.ini next to the exe keeps settings and torrents beside it (portable mode).

  • Linux AppImage. Run chmod +x Rookparcel-1.2.5-x86_64.AppImage, then start it. Without FUSE 2 on the system, start it with --appimage-extract-and-run. Settings are in ~/.config/rookparcel/gtk, torrents in ~/.local/share/rookparcel/gtk.

  • Linux Flatpak. The bundle holds the application; the runtime comes from Flathub:

    flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
    flatpak install --user Rookparcel-1.2.5-x86_64.flatpak
    flatpak run io.github.balls0fsteel.Rookparcel
  • macOS. Drag Rookparcel.app to Applications. It is ad-hoc signed and not notarised, so Gatekeeper refuses it the first time: right-click (or Control-click) the app > Open, then click Open, or run xattr -dr com.apple.quarantine /Applications/Rookparcel.app. The GUI is Apple silicon only; Intel Macs get rookparcel-nox.

  • Headless. rookparcel-nox run --webui 8080 --webui-pass PASS starts the daemon with its Web UI and a qBittorrent-compatible Web API on port 8080. DAEMON.md describes services: systemd, FreeBSD rc.d, --daemon and Windows, one per profile if you like.

  • Sonarr, Radarr, Prowlarr. Rookparcel is added as a qBittorrent download client. Existing entries that pointed at PaTorrent keep working with the same address and password.

Known limitations

  • Everything in 1.2.0's limitations still applies.
  • The takeover was checked on Windows with rookparcel-nox and a scratch settings folder (both the default and a named profile, a portable folder, a PaTorrent still running). Not yet tried: the GUIs over a real PaTorrent install, the setup over an installed PaTorrent, Linux, macOS and the Flatpak.
  • Do not use it on private trackers yet. The client ID RP is not whitelisted anywhere.

Reporting problems

Open an issue with your platform, the file you used and what happened. For a crash or a stuck torrent, include the Logger tab or rookparcel-nox run --verbose output. For security problems, see SECURITY.md.

License

Rookparcel is free for noncommercial use under the PolyForm Noncommercial License 1.0.0. Code ported from libtorrent remains under its BSD-3-Clause license; every download carries LICENSE.md and THIRD-PARTY-NOTICES.md. Rookparcel is an independent project, not affiliated with libtorrent, qBittorrent, µTorrent or BitTorrent, Inc.

Rookparcel 1.2.0 (released as PaTorrent)

Choose a tag to compare

@github-actions github-actions released this 05 Nov 19:25

PaTorrent 1.2.0 brings profiles and portable mode on every platform: run several independent PaTorrents side by side, or carry one in a folder that moves between drives and systems. A first-start Setup Guide, help texts for every setting, a filter in the Files tab, binding torrent traffic to a VPN, and an optional search helper that fetches Jackett for you come with it. A bug hunt fixed 37 findings, among them a Web UI login bypass and a peer message that crashed the engine, so every user of 1.1.40 should update. Everything else is as in 1.1.40. It has been used mostly by its author so far, so reports of what breaks are very welcome.

PaTorrent (PatinaTorrent) is a lean BitTorrent client in the spirit of µTorrent 2.2.1: small single-file binaries, a native look, low RAM and CPU use, and an interface that stays responsive with tens of thousands of torrents. The engine is our own Rust port of libtorrent-rasterbar 2.0.11; nothing is linked.

New since 1.1.40

  • Profiles. Several independent PaTorrents for one user, each with its own settings, torrents, ports and window, running at the same time:
    • File > Profiles in both GUIs lists Default and every named profile and starts one in its own window. New Profile... makes one; Create Shortcut... puts it on the Windows desktop or in the Linux menu; Open Profile Folder shows its files.
    • --profile work works in patorrent, patorrent-gtk and patorrent-nox. Names are up to 32 letters, digits and dashes. The title bar, the tray tooltip and About show [work].
    • A named profile lives in a profiles/<name> folder beside the default one (for example %APPDATA%\PaTorrent\profiles\work). The default profile's folders have not moved.
    • A new profile gets its own random listen port, and the Web UI page proposes the first free port from 8080 up. If a port is taken, the status bar says so; a click opens Preferences > Connection.
    • Only one profile opens .torrent files and magnet links at a time; General names the one that does. Each profile can start with the system on its own.
    • patorrent-nox runs one service per profile: service install --profile work on Windows (service status --all lists them), the patorrent-nox@.service template on systemd, and patorrent_nox_profiles in FreeBSD's rc.d.
  • Portable mode everywhere. An empty patorrent.ini keeps settings, torrents and, by default, downloads (Downloads) in the program's own folder: beside patorrent.exe on Windows, beside patorrent-gtk or the .AppImage on Linux and BSD, and beside PaTorrent.app on macOS (not in the Flatpak). Paths inside that folder are stored relative to it, so it can move to another drive letter, a USB stick or another system without a recheck.
  • One window per folder. Each settings folder is locked by the copy that uses it, and a second start hands its torrent to that copy only. Before, an installed and a portable copy could hand torrents to each other.
  • Setup Guide (Windows and GTK). At a profile's first start, four pages ask where downloads go, whether your router is modern or older (older gets fewer connections), whether to use smart disk I/O, and whether PaTorrent should start with the system and open torrent files. Only Finish changes anything; Skip or Esc leaves the defaults. Options > Setup Guide (Ctrl+G) opens it again.
  • Help for every setting. Hover a setting for its tooltip, read the help pane under each Preferences page, or press F1. In the Windows GUI, menu and toolbar items explain themselves in the status bar. The texts are in English for now.
  • Files tab filter (Windows, GTK, Web UI). A "Filter files" box at the top right shows the files whose path contains every word you type, with "{shown} of {total} files". Ctrl+F jumps to it, Esc or × clears it, and Ctrl+A selects the files shown.
  • Use only this network (Preferences > Connection; --network in patorrent-nox). Binds all torrent traffic to any VPN adapter, an adapter you name, or an address range. While that network is missing, torrents wait ("Waiting for the network") and resume by themselves once it is back. The General tab shows "Your address as trackers see it". Off by default; the Web UI and remote control are not bound.
  • Search helper (optional). In Search Sources, Get the Search Helper (Jackett)... downloads Jackett's own release from GitHub at your click, checks its SHA-256 and adds the source "Search helper (all)". It runs only while you search, on 127.0.0.1, and stops after 10 idle minutes and when PaTorrent exits. Pick Sites... chooses its sites (none are ticked at first). Also in patorrent-nox and the Web UI, where getting and updating it asks for the Web UI password. Not in the Flatpak or on FreeBSD. A step-by-step guide is on the wiki.
  • Smaller additions:
    • GTK: every other row is shaded, as on Windows. Ctrl+S, Ctrl+T and Ctrl+Shift+P start, stop and pause, and Enter opens Properties.
    • Windows: the status bar says "Restoring torrents..." until the torrent list has loaded, and the tray menu offers Show while the window is minimized.
    • Torrent Properties greys DHT and PEX when every selected torrent is private.
    • Scrape replies and failures appear in the Logger.
    • Web seed passwords show as user:***@ in the peer list and the Logger.
    • A 28-page user guide is on the GitHub wiki.
  • Fixes:
    • A stopped torrent with only some files selected shows the progress of those files, not of the whole torrent.
    • The closing window no longer waits for trackers that do not answer, and it fits its content.
    • A priority change, move or rename on one torrent no longer stalls every transfer behind another torrent's check.
    • Peers that connect while a magnet link's files are checked are served once the check ends. Allowed-fast requests survive a choke, and fast peers are no longer snubbed by mistake.
    • Alerts are no longer lost while Torrent Properties is open. A busy first copy no longer swallows a torrent opened by a second start.
    • UPnP no longer spins a CPU core after a port change, and removes its mapping at exit.
    • Downloads with a Latin-1 header or a 1xx reply work. A watched folder no longer mixes up files of the same name.
    • Windows: renames and moves past 260 characters work; a saved window on an unplugged monitor comes back on screen.
    • On Linux, /Data and /data are different folders.
    • The Web UI's qBittorrent-compatible API reports private torrents, sorts queued torrents as the engine queues them, keeps RSS read marks, and leaves an unknown size empty.
  • Security. A bug hunt over the whole code found 38 problems: 5 high, 12 medium and 21 low. All are fixed except one low finding that turned out not to be a problem. Details are in BUGHUNT-2026-11-05.md. The ones to know about:
    • Web UI login bypass. While a client from loopback, with the API key or from a whitelisted subnet was active, a request from anywhere could log in with a forged cookie. This affects patorrent-nox and the Windows GUI's Web UI.
    • Engine crash from a peer. Any peer could stop the engine with a crafted extension message (reqq of 1 to 3) or a web seed with a non-ASCII host name.
    • Path handling. A crafted file name could put a file at the torrent's root folder, and the Web UI's remote adds and moves ignored --webui-save-root.
    • A search result whose torrent has another hash than the result named is refused. The Windows self-update downloads into %LOCALAPPDATA%\PaTorrent\update instead of a shared temporary folder. A slow server can no longer keep an update download open forever.

Settings and torrents from 1.1.x carry over unchanged, and the default profile's folders stay where they were. A portable folder written by 1.2.0 needs 1.2.0 or later, because its paths are now relative. The peer ID is now -PA1013-, because peers see the fixes to requests, upload mode and invalid pieces. The remote protocol is now version 15, so a GUI and the patorrent-nox it drives must both be 1.2.0.

Downloads

SHA256SUMS has every file's checksum.

Platform File What is inside
Windows 10 / 11, x64, installer patorrent-1.2.0-windows-x64-setup.exe patorrent.exe (the GUI) and patorrent-nox.exe (the headless daemon), installed with a Start menu entry and an uninstaller
Windows 10 / 11, x64, portable patorrent-1.2.0-windows-x64.zip the same two programs; statically linked, nothing to install
Linux desktop, x86_64 or aarch64 PaTorrent-1.2.0-<arch>.AppImage the GTK 4 GUI with its libraries bundled (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13 or later)
Linux desktop, Flatpak PaTorrent-1.2.0-<arch>.flatpak the GTK 4 GUI on the GNOME 51 runtime (installed from Flathub)
Linux, plain binaries patorrent-1.2.0-linux-<arch>.tar.gz patorrent-gtk, patorrent-nox, the desktop entry and the systemd units; they use the system's GTK 4 (4.12 or newer) and OpenSSL 3, as on Ubuntu 24.04
Linux server, headless patorrent-nox-1.2.0-<arch>.AppImage patorrent-nox with OpenSSL bundled
macOS, Apple silicon PaTorrent-1.2.0-arm64.dmg PaTorrent.app: the GTK 4 GUI with its libraries bundled (macOS 15 or newer)
macOS, headless patorrent-nox-1.2.0-macos-<arch>.tar.gz patorrent-nox for Apple silicon (arm64, macOS 11+) and Intel (x86_64, macOS 10.14+)

First run

  • Windows installer. Run the setup. It is not code-signed, so SmartScreen shows "Windows protected your PC": click More info > Run anyway. "Install for anyone using this computer" asks for administrator rights and shows "Unknown publisher". Over an installed 1.0.1 or 1.1.x it upgrades in place. Settings and torrents are in %APPDATA%\PaTorrent.
  • Updating from 1.1.40. Its update box offe...
Read more

Rookparcel 1.1.40 (released as PaTorrent)

Choose a tag to compare

@github-actions github-actions released this 03 Nov 09:35

PaTorrent 1.1.40 brings a gamer mode that keeps your ping low while it downloads, and smart disk I/O: gentle rechecks, drive type detection and, if you want it, slowing down while a disk is busy. The Windows GUI now updates itself. When you close it, both GUIs show what PaTorrent is still doing instead of looking stuck. The Files tab gets µTorrent 2.2.1's menu, completed downloads can move into a folder named after their label, and the engine carries the fixes from libtorrent 2.0.12 to 2.1.2 that apply to it. Everything else is as in 1.1.17. It has been used mostly by its author so far, so reports of what breaks are very welcome.

PaTorrent (PatinaTorrent) is a lean BitTorrent client in the spirit of µTorrent 2.2.1: small single-file binaries, a native look, low RAM and CPU use, and an interface that stays responsive with tens of thousands of torrents. The engine is our own Rust port of libtorrent-rasterbar 2.0.11; nothing is linked.

New since 1.1.17

  • Gamer mode: keep ping low. Preferences > Bandwidth has 2.2.1's Global Rate Limit Options in all three frontends:
    • "Keep ping low (limit speeds automatically)" (off by default) pings the first router past your line and slows uploads and downloads down as soon as its queue grows, then speeds them up again when it clears. Your own limits stay as they are; the lower one applies. The status bar shows the automatic limit, as in "(auto 450 kB/s)".
    • On a test line with half a second of buffer, the ping fell from about 480 ms to 9-10 ms while PaTorrent kept 80-92% of the line's speed.
    • It pings on Windows, Linux and macOS. On Linux, the net.ipv4.ping_group_range setting must allow it; the Logger says so when it does not. On FreeBSD and OpenBSD, and wherever pings get no answer, it uses the delays measured by three or more uTP peers.
    • "Apply rate limit to transport overhead" (off) and "Apply rate limit to uTP connections" (on) work as in 2.2.1.
  • Smart disk I/O. A new page, Preferences > Advanced > Disk I/O, in all three frontends:
    • Gentle checks (on by default). A check or recheck runs at the system's background disk priority and keeps other programs' files in memory. It also waits whenever its reads get clearly slower than usual, so it takes at most about half of a disk another program is using. On an idle disk it runs at full speed. Limit checking to (MB/s) caps it further (off by default).
    • One check per drive, several drives at once. Two torrents on one disk are checked one after the other, while torrents on different disks are checked side by side ("Drives checked at once", 4 by default).
    • Drive types. PaTorrent tells SSDs, hard disks, removable drives and network shares apart: on Windows and Linux from the system, on macOS from IOKit and on FreeBSD from GEOM. The Logger names what it found, for example "Disk I/O: drive D: (HDD, SATA)". With "Tune for the drive type" (on), a hard disk or removable drive gets at most two disk jobs at once and a network server four, so the disk does not waste its time seeking. A wrong guess can be corrected in drive_overrides in the Advanced table (E:\=hdd, /mnt/nas=network).
    • When the disk is busy (both off by default): "Slow downloads down (disk writes)" and "Slow uploads down (disk reads)". While a drive answers clearly more slowly than usual, the download or the upload is halved, and halved again while it stays slow. Once the drive is quiet, it grows back. The status bar shows the limit as "(auto ...)", and the Logger says which drive was busy.
  • Updates on Windows.
    • The update box appears once for each new version. After that, a notice stays in the status bar until you click it.
    • In an installed copy, "Download and install" fetches the setup with a progress bar and checks it against the release's SHA256SUMS. It then closes PaTorrent, installs the update and starts it again. A portable copy opens the download page, as before.
  • Closing.
    • A closing window in both GUIs. If closing takes more than a second, a window shows what PaTorrent is doing: stopping torrents, finishing moves (with a scrollable list and one progress bar), saving the torrent list and progress, or telling trackers. Quit Now cancels the moves, deletes their partial copies and leaves every torrent in its old folder. Saving the torrent list and progress is always allowed to finish.
    • Signing out on Windows. Windows now waits while PaTorrent saves, so a logoff or shutdown no longer loses progress. The GTK GUI does the same through the desktop's session manager, and SIGTERM and SIGINT now save before it quits.
    • Starting it again while it closes waits for the old copy to finish and then opens your torrents. Before, it gave up silently after 5 seconds.
  • Files tab menu, as in µTorrent 2.2.1, in both GUIs:
    • Open, Open Containing Folder | Prioritize by File Order, Priority | Don't Download | Relocate...
    • A double click or Enter opens a file in its default program.
    • Prioritize by File Order gives the selected files falling priorities, so they finish in order. Relocate points one file at a new path and moves it there if it is on disk.
  • Label folders. "Append the torrent's label" beside "Move completed downloads to:" (off by default; Windows, GTK and the Web UI) moves a finished labelled torrent to <completed folder>\<label>.
  • Engine fixes from libtorrent 2.0.12 to 2.1.2. Every change in that range was checked against our engine, and the ones that apply were ported:
    • Requests for v2-only torrents are sized as newer libtorrent peers expect, and their piece layers can be fetched from us in every case.
    • A forced reannounce of a hybrid torrent announces both its hashes.
    • Renaming a file never overwrites another one. Resume data is about a third the size. If you go back to an older version, it rechecks each torrent once.
    • Web seeds request the right file names and drop their login on a redirect to another site. The IP filter applies to the DHT (on by default). Tracker URLs and path names in .torrent files are checked more strictly.
    • New engine options under Advanced: dont_count_slow_torrents works, plus inactive_down_rate, inactive_up_rate, auto_manage_startup, natpmp_gateway and natpmp_lease_duration.
  • Smaller additions:
    • The Web UI's Bandwidth page names its rate limit options instead of showing their setting names.
    • "Show current speed in the title bar" (off) in both GUIs.
    • Preferences > Web UI in the Windows GUI sets the API key and the subnet whitelist that came with 1.1.17.
    • RSS feeds are fetched with conditional requests and gzip, so an unchanged feed costs almost nothing.
    • The qBittorrent importer takes each torrent's share limits as its seeding goal.
    • The qBittorrent-compatible API offers Torznab search to apps that use qBittorrent's search calls. The indexer's key never leaves PaTorrent.
  • Fixes:
    • Session and torrent totals no longer count part of the traffic twice under a rate limit. They ran about half again too high before.
    • A check or recheck now stops promptly when its torrent is stopped. Watched folders are scanned off the GUI thread, so a slow network share cannot hold up the window.
  • Security. The release review fixed 15 low-severity findings, each with a test. The self-update installs only the setup it checked, and a crafted search result can no longer make PaTorrent fetch a link on your own computer or local network. Details are in SECURITY-REVIEW.md.

Settings and torrents from 1.1.x carry over unchanged. The peer ID is now -PA1012-, because peers see the v2 hash and request changes. The remote protocol is now version 13, so a GUI and the patorrent-nox it drives must both be 1.1.40.

Downloads

SHA256SUMS has every file's checksum.

Platform File What is inside
Windows 10 / 11, x64, installer patorrent-1.1.40-windows-x64-setup.exe patorrent.exe (the GUI) and patorrent-nox.exe (the headless daemon), installed with a Start menu entry and an uninstaller
Windows 10 / 11, x64, portable patorrent-1.1.40-windows-x64.zip the same two programs; statically linked, nothing to install
Linux desktop, x86_64 or aarch64 PaTorrent-1.1.40-<arch>.AppImage the GTK 4 GUI with its libraries bundled (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13 or later)
Linux desktop, Flatpak PaTorrent-1.1.40-<arch>.flatpak the GTK 4 GUI on the GNOME 51 runtime (installed from Flathub)
Linux, plain binaries patorrent-1.1.40-linux-<arch>.tar.gz patorrent-gtk, patorrent-nox, the desktop entry and the systemd units; they use the system's GTK 4 (4.12 or newer) and OpenSSL 3, as on Ubuntu 24.04
Linux server, headless patorrent-nox-1.1.40-<arch>.AppImage patorrent-nox with OpenSSL bundled
macOS, Apple silicon PaTorrent-1.1.40-arm64.dmg PaTorrent.app: the GTK 4 GUI with its libraries bundled (macOS 15 or newer)
macOS, headless patorrent-nox-1.1.40-macos-<arch>.tar.gz patorrent-nox for Apple silicon (arm64, macOS 11+) and Intel (x86_64, macOS 10.14+)

First run

  • Windows installer. Run the setup. It is not code-signed, so SmartScreen shows "Windows protected your PC": click More info > Run anyway. "Install for anyone using this computer" asks for administrator rights and shows "Unknown publisher". Over an installed 1.0.1 or 1.1.x it upgrades in place. Settings and torrents are in %APPDATA%\PaTorrent.
  • Updating an installed 1.1.17. 1.1.17 cannot install updates itself: its update box opens the download page, so run the new setup by hand once. From 1.1.40 on, the update box offers "Download and install".
  • Windows zip. Unzip anywhere and start patorrent.exe; SmartScreen warns as above. Settings and torrents go to %APPDATA%\PaTorrent. An empty `patorren...
Read more

Rookparcel 1.1.17 (released as PaTorrent)

Choose a tag to compare

@github-actions github-actions released this 30 Oct 12:25

PaTorrent 1.1.17 adds torrent search through your own Prowlarr or Jackett, in the Windows GUI, the GTK GUI and the Web UI. It also gives the Windows GUI's Web UI the RSS Downloader, and gives patorrent-nox an update check like the GUIs'. For Sonarr, Radarr and Prowlarr there is an optional API key and subnet whitelist, plus a few smaller fixes. Everything else is 1.1.7. It has been used mostly by its author so far, so reports of what breaks are very welcome.

PaTorrent (PatinaTorrent) is a lean BitTorrent client in the spirit of µTorrent 2.2.1: small single-file binaries, a native look, low RAM and CPU use, and an interface that stays responsive with tens of thousands of torrents. The engine is our own Rust port of libtorrent-rasterbar 2.0.11; nothing is linked.

New since 1.1.7

  • Torrent search (Torznab). PaTorrent searches through the Prowlarr or Jackett you already run. It has no search plugins or site scrapers of its own, so nothing breaks when a site changes.
    • Windows: the arrow beside the toolbar's search box picks a source, or "All sources". Enter then opens Search Torrents, where results can be sorted and added.
    • GTK: the menu beside the search box does the same.
    • Web UI: a Find button beside the filter box opens the same search.
    • Sources: each source is a Torznab URL, with Prowlarr's per-indexer URL or Jackett's all URL, and its API key. Manage Sources adds, edits, tests and switches them.
    • API keys are stored encrypted on Windows and never shown again.
    • Proxy: a source on this computer or your local network is reached directly; a public one goes through the proxy, if you set one.
  • RSS in the Windows GUI's Web UI. The page's RSS Downloader edits the window's own feeds and filters, and its downloads go through the window's Add dialog rules.
  • Sonarr, Radarr and Prowlarr:
    • API key and subnet whitelist: Web UI Preferences > Authentication has an optional API key, sent as Authorization: Bearer, and an optional list of subnets that need no login. Both are off by default and need the current password to change. The whitelist never applies to requests that come through a proxy.
    • Category folders: an add without a folder now goes to its category's folder.
    • Unused categories: in the Windows GUI's Web UI, a category no torrent uses yet survives a restart.
    • Tags: tag requests are accepted, and ignored, so the apps stop logging warnings.
  • Windows Web UI settings: Preferences > Web UI has a Server domains field, for apps that reach PaTorrent by a host name.
  • Update check in patorrent-nox. Like the GUIs, it reads the website's list of releases shortly after it starts and every 12 hours, and prints a line and shows a link in the Web UI when a newer version is out. --no-update-check, or the Web UI's General > Privacy setting, turns it off.

Settings and torrents from 1.1.x carry over unchanged. The remote protocol is still version 9. The peer ID stays -PA1011-, because nothing changed on the wire.

Downloads

SHA256SUMS has every file's checksum.

Platform File What is inside
Windows 10 / 11, x64, installer patorrent-1.1.17-windows-x64-setup.exe patorrent.exe (the GUI) and patorrent-nox.exe (the headless daemon), installed with a Start menu entry and an uninstaller
Windows 10 / 11, x64, portable patorrent-1.1.17-windows-x64.zip the same two programs; statically linked, nothing to install
Linux desktop, x86_64 or aarch64 PaTorrent-1.1.17-<arch>.AppImage the GTK 4 GUI with its libraries bundled (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13 or later)
Linux desktop, Flatpak PaTorrent-1.1.17-<arch>.flatpak the GTK 4 GUI on the GNOME 51 runtime (installed from Flathub)
Linux, plain binaries patorrent-1.1.17-linux-<arch>.tar.gz patorrent-gtk, patorrent-nox, the desktop entry and the systemd units; they use the system's GTK 4 (4.12 or newer) and OpenSSL 3, as on Ubuntu 24.04
Linux server, headless patorrent-nox-1.1.17-<arch>.AppImage patorrent-nox with OpenSSL bundled
macOS, Apple silicon PaTorrent-1.1.17-arm64.dmg PaTorrent.app: the GTK 4 GUI with its libraries bundled (macOS 15 or newer)
macOS, headless patorrent-nox-1.1.17-macos-<arch>.tar.gz patorrent-nox for Apple silicon (arm64, macOS 11+) and Intel (x86_64, macOS 10.14+)

First run

  • Windows installer. Run the setup. It is not code-signed, so SmartScreen shows "Windows protected your PC": click More info > Run anyway. "Install for anyone using this computer" asks for administrator rights and shows "Unknown publisher". Over an installed 1.0.1 or 1.1.0 it upgrades in place. Settings and torrents are in %APPDATA%\PaTorrent.

  • Windows zip. Unzip anywhere and start patorrent.exe; SmartScreen warns as above. Settings and torrents go to %APPDATA%\PaTorrent. An empty patorrent.ini next to the exe keeps them beside it instead (portable mode).

  • Web UI from the Windows GUI. In Preferences > Web UI, tick Enable Web UI, set a password and click OK. The page then shows the URL (http://127.0.0.1:8080/ by default). For other computers, tick "Allow connections from other computers" and let the port through the Windows firewall. Use HTTPS when the connection leaves your home network.

  • Sonarr, Radarr, Prowlarr. Add PaTorrent as a qBittorrent download client, with the Web UI's address, port, user name and password. If the app reaches PaTorrent by a host name rather than an IP address, add that name under Preferences > Web UI > Server domains (webui.domain_list).

  • Torrent search. In your Prowlarr, copy an indexer's Torznab feed URL and the API key (Settings > General); in Jackett, use the all indexer's Torznab URL. Then open Manage Sources from the search box's menu (the Web UI: Find > Manage Sources), add the source and press Test.

  • Linux AppImage. Run chmod +x PaTorrent-1.1.17-x86_64.AppImage, then start it. Without FUSE 2 on the system, start it with --appimage-extract-and-run. Settings are in ~/.config/patorrent/gtk, torrents in ~/.local/share/patorrent/gtk.

  • Linux Flatpak. The bundle holds the application; the runtime comes from Flathub:

    flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
    flatpak install --user PaTorrent-1.1.17-x86_64.flatpak
    flatpak run io.github.balls0fsteel.PaTorrent
  • macOS. Drag PaTorrent.app to Applications. It is ad-hoc signed and not notarised, so Gatekeeper refuses it the first time ("cannot be opened because the developer cannot be verified"). Right-click (or Control-click) the app > Open, then click Open. Or remove the quarantine flag: xattr -dr com.apple.quarantine /Applications/PaTorrent.app. The GUI is Apple silicon only; Intel Macs get patorrent-nox.

  • Headless. patorrent-nox run --webui 8080 --webui-pass PASS starts the daemon with its Web UI and a qBittorrent-compatible Web API on port 8080; add --webui-https for a self-signed certificate. patorrent-nox add file.torrent --save DIR adds a torrent. docs/DAEMON.md describes running it as a service: systemd units, FreeBSD rc.d, --daemon and a Windows service.

  • Remote control. Either GUI can drive a patorrent-nox elsewhere: use File > Connect to Remote..., or start it with --remote. Both sides must be 1.1.0 or newer.

Known limitations

  • Most features have been exercised by the author only; some dialogs and settings have had little use. Keep a copy of torrents you care about elsewhere.
  • Do not use it on private trackers yet. The client ID PA is not whitelisted anywhere.
  • Nothing is code-signed, so Windows SmartScreen and macOS Gatekeeper warn (see above).
  • The Web UI served by the Windows GUI is new. It is covered by automated tests, a session on the author's PC and a Sonarr/Radarr/Prowlarr run, but not yet by wide use. The GTK GUI has no such page yet; on Linux and macOS the Web UI comes with patorrent-nox.
  • Search has been run against Prowlarr; Jackett only through its documented answers. With Sonarr and Radarr, only .torrent grabs have been tested. Magnet grabs, "First" priority and Force Start have not. Tags are accepted but not kept.
  • The search windows have been run against a test Prowlarr on Windows and Linux, but not yet at high DPI or in wide use. The importers have been tested against qBittorrent's and µTorrent's file formats, but not yet against many real installations.
  • The GTK GUI's icons have been built and checked on CI but not yet looked at on a Linux desktop.
  • macOS: the .app has only been built and started on GitHub's runners; it has not been used on a real Mac.
  • The Linux AppImages and the Flatpak have had command-line smoke checks but little desktop use; the aarch64 builds are untried on real hardware.

Reporting problems

Open an issue with your platform, the file you used and what happened. For a crash or a stuck torrent, include the Logger tab or patorrent-nox run --verbose output. For security problems, see SECURITY.md.

License

PaTorrent is free for noncommercial use under the PolyForm Noncommercial License 1.0.0. Code ported from libtorrent remains under its BSD-3-Clause license; every download carries LICENSE.md and THIRD-PARTY-NOTICES.md. PaTorrent is an independent project, not affiliated with libtorrent, qBittorrent, µTorrent or BitTorrent, Inc.

Rookparcel 1.1.7 (released as PaTorrent)

Choose a tag to compare

@github-actions github-actions released this 30 Oct 08:31

PaTorrent 1.1.7 gives the Windows GUI a Web UI of its own and makes PaTorrent a working download client for Sonarr, Radarr and Prowlarr. Preferences > Web UI starts the same Web UI patorrent-nox serves, inside patorrent.exe, over that window's torrents, as µTorrent and qBittorrent do. The *arr apps' seed limits now arrive with each grab and their Remove Completed works, against both patorrent-nox and the Windows GUI. Everything else is 1.1.0. It has been used mostly by its author so far, so reports of what breaks are very welcome. (1.1.2 was drafted but never published; this release includes it.)

PaTorrent (PatinaTorrent) is a lean BitTorrent client in the spirit of µTorrent 2.2.1: small single-file binaries, a native look, low RAM and CPU use, and an interface that stays responsive with tens of thousands of torrents. The engine is our own Rust port of libtorrent-rasterbar 2.0.11; nothing is linked.

New since 1.1.0

  • Web UI in the Windows GUI. Preferences > Web UI has these settings, and the Web UI is off by default:

    • Enable Web UI;
    • a user name and password (the password is stored hashed);
    • the listening port;
    • "Allow connections from other computers";
    • "Use HTTPS (self-signed certificate)".

    With it on, a browser at the URL the page shows logs in and sees this window's torrents. From the browser you can add, start, stop, pause, label and remove torrents, change the rate limits and most other preferences, and shut the client down. Changes made in the browser appear in the window within a second, and changes made in the window appear in the browser. The Web UI starts with the program when enabled, and its settings are webui.* keys in patorrent.ini. In this mode the page has no RSS Downloader and no alternative speed limits; the window keeps those.

  • Sonarr, Radarr and Prowlarr. These were tested against the real apps, both with patorrent-nox and with the Windows GUI's Web UI.

    • The per-indexer seed ratio and seed time the apps send with a grab become that torrent's seeding goal.
    • Each torrent's limits and the global goal are reported back to the apps, so their "Remove Completed" removes a torrent once PaTorrent has stopped it.
    • Removing a category from the Web UI now clears the window's label too.
  • Clearer Host-check error. A Web UI or API request that names the client by a host name it does not know (as an app in Docker often does) is still refused. The error now says how to allow that name: open the page by IP address and add the name under Preferences > Web UI > Server domains.

  • Idle seeds keep their seeding time. A seed without peers now advances its seeding time each minute, so a time-based seeding goal stops it on time. Before this, its time stood still until a peer came.

  • Adding a torrent brings the window forward. Opening a .torrent or magnet while PaTorrent runs now activates its window, as µTorrent's UI Settings > "Activate the program window" does; this is on by default. A torrent added stopped reads Stopped instead of "Checking 0.0 %".

  • nox service on Windows. patorrent-nox service install now stores the --webui-user / --webui-pass login hashed in its state folder. Before, it was on the service's command line, which every local user could read. --replace removes an installed service first and --now starts the new one, so a changed setup is one command.

Settings and torrents from 1.1.0 carry over unchanged. The remote protocol is still version 9, so for remote mode a GUI and a patorrent-nox must both be 1.1.0 or newer. The peer ID stays -PA1011-, because nothing changed on the wire.

Downloads

SHA256SUMS has every file's checksum.

Platform File What is inside
Windows 10 / 11, x64, installer patorrent-1.1.7-windows-x64-setup.exe patorrent.exe (the GUI) and patorrent-nox.exe (the headless daemon), installed with a Start menu entry and an uninstaller
Windows 10 / 11, x64, portable patorrent-1.1.7-windows-x64.zip the same two programs; statically linked, nothing to install
Linux desktop, x86_64 or aarch64 PaTorrent-1.1.7-<arch>.AppImage the GTK 4 GUI with its libraries bundled (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13 or later)
Linux desktop, Flatpak PaTorrent-1.1.7-<arch>.flatpak the GTK 4 GUI on the GNOME 51 runtime (installed from Flathub)
Linux, plain binaries patorrent-1.1.7-linux-<arch>.tar.gz patorrent-gtk, patorrent-nox, the desktop entry and the systemd units; they use the system's GTK 4 (4.12 or newer) and OpenSSL 3, as on Ubuntu 24.04
Linux server, headless patorrent-nox-1.1.7-<arch>.AppImage patorrent-nox with OpenSSL bundled
macOS, Apple silicon PaTorrent-1.1.7-arm64.dmg PaTorrent.app: the GTK 4 GUI with its libraries bundled (macOS 15 or newer)
macOS, headless patorrent-nox-1.1.7-macos-<arch>.tar.gz patorrent-nox for Apple silicon (arm64, macOS 11+) and Intel (x86_64, macOS 10.14+)

First run

  • Windows installer. Run the setup. It is not code-signed, so SmartScreen shows "Windows protected your PC": click More info > Run anyway. "Install for anyone using this computer" asks for administrator rights and shows "Unknown publisher". Over an installed 1.0.1 or 1.1.0 it upgrades in place. Settings and torrents are in %APPDATA%\PaTorrent.

  • Windows zip. Unzip anywhere and start patorrent.exe; SmartScreen warns as above. Settings and torrents go to %APPDATA%\PaTorrent. An empty patorrent.ini next to the exe keeps them beside it instead (portable mode).

  • Web UI from the Windows GUI. In Preferences > Web UI, tick Enable Web UI, set a password and click OK. The page then shows the URL (http://127.0.0.1:8080/ by default). For other computers, tick "Allow connections from other computers" and let the port through the Windows firewall. Use HTTPS when the connection leaves your home network.

  • Sonarr, Radarr, Prowlarr. Add PaTorrent as a qBittorrent download client, with the Web UI's address, port, user name and password. If the app reaches PaTorrent by a host name rather than an IP address, add that name under Preferences > Web UI > Server domains (webui.domain_list).

  • Linux AppImage. Run chmod +x PaTorrent-1.1.7-x86_64.AppImage, then start it. Without FUSE 2 on the system, start it with --appimage-extract-and-run. Settings are in ~/.config/patorrent/gtk, torrents in ~/.local/share/patorrent/gtk.

  • Linux Flatpak. The bundle holds the application; the runtime comes from Flathub:

    flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
    flatpak install --user PaTorrent-1.1.7-x86_64.flatpak
    flatpak run io.github.balls0fsteel.PaTorrent
  • macOS. Drag PaTorrent.app to Applications. It is ad-hoc signed and not notarised, so Gatekeeper refuses it the first time ("cannot be opened because the developer cannot be verified"). Right-click (or Control-click) the app > Open, then click Open. Or remove the quarantine flag: xattr -dr com.apple.quarantine /Applications/PaTorrent.app. The GUI is Apple silicon only; Intel Macs get patorrent-nox.

  • Headless. patorrent-nox run --webui 8080 --webui-pass PASS starts the daemon with its Web UI and a qBittorrent-compatible Web API on port 8080; add --webui-https for a self-signed certificate. patorrent-nox add file.torrent --save DIR adds a torrent. docs/DAEMON.md describes running it as a service: systemd units, FreeBSD rc.d, --daemon and a Windows service.

  • Remote control. Either GUI can drive a patorrent-nox elsewhere: use File > Connect to Remote..., or start it with --remote. Both sides must be 1.1.0 or newer.

Known limitations

  • Most features have been exercised by the author only; some dialogs and settings have had little use. Keep a copy of torrents you care about elsewhere.
  • Do not use it on private trackers yet. The client ID PA is not whitelisted anywhere.
  • Nothing is code-signed, so Windows SmartScreen and macOS Gatekeeper warn (see above).
  • The Web UI served by the Windows GUI is new. It is covered by automated tests, a session on the author's PC and a Sonarr/Radarr/Prowlarr run, but not yet by wide use. The GTK GUI has no such page yet; on Linux and macOS the Web UI comes with patorrent-nox.
  • With Sonarr and Radarr, only .torrent grabs have been tested. Magnet grabs, "First" priority and Force Start have not. Tags are not supported, so the apps log a warning when they send one.
  • The search box and the importers have had little hand testing. The importers have been tested against qBittorrent's and µTorrent's file formats, but not yet against many real installations.
  • The GTK GUI's icons have been built and checked on CI but not yet looked at on a Linux desktop.
  • macOS: the .app has only been built and started on GitHub's runners; it has not been used on a real Mac.
  • The Linux AppImages and the Flatpak have had command-line smoke checks but little desktop use; the aarch64 builds are untried on real hardware.

Reporting problems

Open an issue with your platform, the file you used and what happened. For a crash or a stuck torrent, include the Logger tab or patorrent-nox run --verbose output. For security problems, see SECURITY.md.

License

PaTorrent is free for noncommercial use under the PolyForm Noncommercial License 1.0.0. Code ported from libtorrent remains under its BSD-3-Clause license; every download carries LICENSE.md and THIRD-PARTY-NOTICES.md. PaTorrent is an independent project, not affiliated with libtorrent, qBittorrent, µTorrent or BitTorrent, Inc.

Rookparcel 1.1.0 (released as PaTorrent)

Choose a tag to compare

@github-actions github-actions released this 28 Oct 13:42

PaTorrent 1.1.0 adds a search box and importers from qBittorrent and µTorrent, hardens the engine, the Web UI and the remote mode after a security review of the whole code base, fixes what the author's hand test of 1.0.1 on Windows found, and puts icons beside the category list, the detail tabs, the Preferences pages and the Windows menus. It has been used mostly by its author so far, so reports of what breaks are very welcome.

PaTorrent (PatinaTorrent) is a lean BitTorrent client in the spirit of µTorrent 2.2.1: small single-file binaries, a native look, low RAM and CPU use, and an interface that stays responsive with tens of thousands of torrents. The engine is our own Rust port of libtorrent-rasterbar 2.0.11; nothing is linked.

New since 1.0.1

  • Search box. Where µTorrent 2.2.1 had its web search, the toolbar now has a box that filters the torrent list by name as you type, on top of the category or label picked on the left. Ctrl+F jumps to it.
  • Import from qBittorrent and µTorrent. File > Import reads qBittorrent's BT_backup folder or µTorrent's resume.dat and adds those torrents with their save folders, labels and settings. The other client must not be running; nothing of it is changed. The files are checked again after the import, rather than trusting the old client's records, and every file stays inside its save folder: the question before the import lists those folders. patorrent-nox run --import does the same for the daemon.
  • Security hardening. A review of the engine, the Web UI, the remote mode, fetches and the Windows integration led to fixes across them. Among them: peers that never read, degenerate encryption keys and unbounded web-seed headers can no longer tie the client up; the DHT ignores replies from addresses it did not ask and refuses to be pointed at loopback or the LAN; trackers elsewhere cannot list peers on your machine, and no peer connections go to ports below 1024; seed mode checks each piece before uploading it; HTTPS needs TLS 1.2 and refuses revoked certificates; feeds and redirects cannot reach your local network unless you added that address yourself; cookies stay on their site; the Web UI bounds connections before login, bans per client, ends other sessions when the password changes and asks for the current password before its security settings change; random numbers come from a ChaCha20 generator seeded by the operating system, with no weak fallback.
  • Remote mode over HTTPS. The GUIs connect to a patorrent-nox over HTTPS by default; plain HTTP to another computer needs your agreement first.
  • Windows fixes. Stopped torrents no longer show their last speed; rows no longer go blank after hovering or Select All; the scheduler grid no longer flickers and uses µTorrent's colours; alternating row shading (Preferences > UI Settings, on by default); Ctrl+S, Ctrl+T, Ctrl+Shift+P and Enter for Start, Stop, Pause and Properties, shown in the menus; redrawn toolbar icons and a magnifier for the checking states.
  • Icons beside the category list, the detail tabs and the Preferences pages (Windows and GTK), and beside the Windows menu commands.
  • Version strings. A build that is not a tagged release shows <version>-dev.<commit> in its title bar, About box and --version, so test builds can be told apart.

Settings and torrents from 1.0.1 carry over unchanged.

The remote protocol changed (version 9). A GUI and a patorrent-nox must both be 1.1.0 to work together in the remote mode; update both.

The peer ID is now -PA1011- (it was -PA1010-): the engine's behaviour on the wire changed with the fixes above.

Downloads

SHA256SUMS has every file's checksum.

Platform File What is inside
Windows 10 / 11, x64, installer patorrent-1.1.0-windows-x64-setup.exe patorrent.exe (the GUI) and patorrent-nox.exe (the headless daemon), installed with a Start menu entry and an uninstaller
Windows 10 / 11, x64, portable patorrent-1.1.0-windows-x64.zip the same two programs; statically linked, nothing to install
Linux desktop, x86_64 or aarch64 PaTorrent-1.1.0-<arch>.AppImage the GTK 4 GUI with its libraries bundled (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13 or later)
Linux desktop, Flatpak PaTorrent-1.1.0-<arch>.flatpak the GTK 4 GUI on the GNOME 51 runtime (installed from Flathub)
Linux, plain binaries patorrent-1.1.0-linux-<arch>.tar.gz patorrent-gtk, patorrent-nox, the desktop entry and the systemd units; they use the system's GTK 4 (4.12 or newer) and OpenSSL 3, as on Ubuntu 24.04
Linux server, headless patorrent-nox-1.1.0-<arch>.AppImage patorrent-nox with OpenSSL bundled
macOS, Apple silicon PaTorrent-1.1.0-arm64.dmg PaTorrent.app: the GTK 4 GUI with its libraries bundled (macOS 15 or newer)
macOS, headless patorrent-nox-1.1.0-macos-<arch>.tar.gz patorrent-nox for Apple silicon (arm64, macOS 11+) and Intel (x86_64, macOS 10.14+)

First run

  • Windows installer. Run the setup. It is not code-signed, so SmartScreen shows "Windows protected your PC": More info > Run anyway. "Install for anyone using this computer" asks for administrator rights and shows "Unknown publisher". Over an installed 1.0.1 it upgrades in place. Settings and torrents are in %APPDATA%\PaTorrent.

  • Windows zip. Unzip anywhere and start patorrent.exe (SmartScreen as above). Settings and torrents go to %APPDATA%\PaTorrent; an empty patorrent.ini next to the exe keeps them beside it instead (portable mode).

  • Linux AppImage. chmod +x PaTorrent-1.1.0-x86_64.AppImage, then run it. Without FUSE 2 on the system, start it with --appimage-extract-and-run. Settings are in ~/.config/patorrent/gtk, torrents in ~/.local/share/patorrent/gtk.

  • Linux Flatpak. The bundle holds the application; the runtime comes from Flathub:

    flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
    flatpak install --user PaTorrent-1.1.0-x86_64.flatpak
    flatpak run io.github.balls0fsteel.PaTorrent
  • macOS. Drag PaTorrent.app to Applications. It is ad-hoc signed and not notarised, so Gatekeeper refuses it the first time ("cannot be opened because the developer cannot be verified"): right-click (or Control-click) the app > Open, then Open. Or remove the quarantine flag: xattr -dr com.apple.quarantine /Applications/PaTorrent.app. The GUI is Apple silicon only; Intel Macs get patorrent-nox.

  • Headless. patorrent-nox run --webui 8080 --webui-pass PASS starts the daemon with its Web UI and a qBittorrent-compatible Web API on port 8080 (--webui-https for a self-signed certificate). patorrent-nox add file.torrent --save DIR adds a torrent. Running it as a service (systemd units, FreeBSD rc.d, --daemon, a Windows service) is described in docs/DAEMON.md.

  • Remote control. Either GUI can drive a patorrent-nox elsewhere: File > Connect to Remote..., or start it with --remote. Both sides must be 1.1.0.

Known limitations

  • Most features have been exercised by the author only; some dialogs and settings have had little use. Keep a copy of torrents you care about elsewhere.
  • Do not use it on private trackers yet. The client ID PA is not whitelisted anywhere.
  • Nothing is code-signed: Windows SmartScreen and macOS Gatekeeper warn (see above).
  • The search box and the importers are new and have had little hand testing; the importers have been tested against qBittorrent's and µTorrent's file formats, not yet against many real installations.
  • The GTK GUI's new icons have been built and checked on CI but not yet looked at on a Linux desktop.
  • macOS: the .app has only been built and started on GitHub's runners; it has not been used on a real Mac.
  • The Linux AppImages and the Flatpak have had command-line smoke checks but little desktop use; the aarch64 builds are untried on real hardware.

Reporting problems

Open an issue with your platform, the file you used and what happened. For a crash or a stuck torrent, the Logger tab or patorrent-nox run --verbose output helps. Security problems: see SECURITY.md.

License

PaTorrent is free for noncommercial use under the PolyForm Noncommercial License 1.0.0. Code ported from libtorrent remains under its BSD-3-Clause license; every download carries LICENSE.md and THIRD-PARTY-NOTICES.md. PaTorrent is an independent project, not affiliated with libtorrent, qBittorrent, µTorrent or BitTorrent, Inc.

Rookparcel 1.0.1 (released as PaTorrent)

Choose a tag to compare

@github-actions github-actions released this 27 Oct 10:21

PaTorrent 1.0.1 is the first stable release. It follows 1.0.0-rc.1 with no second candidate: the release candidate ran without trouble, and what changed since is listed below. There is no 1.0.0 release: its tagged build stopped on a packaging check, and the version moved on rather than reuse the tag. It has been used mostly by its author so far, so reports of what breaks are very welcome.

PaTorrent (PatinaTorrent) is a lean BitTorrent client in the spirit of µTorrent 2.2.1: small single-file binaries, a native look, low RAM and CPU use, and an interface that stays responsive with tens of thousands of torrents. The engine is our own Rust port of libtorrent-rasterbar 2.0.11; nothing is linked.

New since 1.0.0-rc.1

  • A Windows installer beside the portable zip: for you alone (no administrator rights, into %LOCALAPPDATA%\Programs\PaTorrent) or for all users (into Program Files, through UAC), with a Start menu entry, an optional desktop shortcut and .torrent / magnet: associations, in-place upgrades and an uninstaller that keeps your settings unless you ask.
  • An update check that only tells. 10 seconds after the start and every 12 hours, the Windows and GTK GUIs read a small list of releases from the website. A newer version shows for a minute in the status bar and in the Logger; a click opens its release page. Nothing is downloaded or installed for you. Help > Check for Updates asks at once; Preferences > General > Privacy turns the automatic check off. The Flatpak leaves updating to Flathub. 1.0.0-rc.1 has no check, so its users have to fetch this release by hand.
  • The version where µTorrent showed it: the window title, the tray tooltip, the Web UI's tab and the Windows executables' file properties.
  • Help > PaTorrent Website, and the website itself: downloads with how to start each file, an FAQ and the documentation.

Settings and torrents from 1.0.0-rc.1 carry over unchanged.

Downloads

SHA256SUMS has every file's checksum.

Platform File What is inside
Windows 10 / 11, x64, installer patorrent-1.0.1-windows-x64-setup.exe patorrent.exe (the GUI) and patorrent-nox.exe (the headless daemon), installed with a Start menu entry and an uninstaller
Windows 10 / 11, x64, portable patorrent-1.0.1-windows-x64.zip the same two programs; statically linked, nothing to install
Linux desktop, x86_64 or aarch64 PaTorrent-1.0.1-<arch>.AppImage the GTK 4 GUI with its libraries bundled (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13 or later)
Linux desktop, Flatpak PaTorrent-1.0.1-<arch>.flatpak the GTK 4 GUI on the GNOME 51 runtime (installed from Flathub)
Linux, plain binaries patorrent-1.0.1-linux-<arch>.tar.gz patorrent-gtk, patorrent-nox, the desktop entry and the systemd units; they use the system's GTK 4 (4.12 or newer) and OpenSSL 3, as on Ubuntu 24.04
Linux server, headless patorrent-nox-1.0.1-<arch>.AppImage patorrent-nox with OpenSSL bundled
macOS, Apple silicon PaTorrent-1.0.1-arm64.dmg PaTorrent.app: the GTK 4 GUI with its libraries bundled (macOS 15 or newer)
macOS, headless patorrent-nox-1.0.1-macos-<arch>.tar.gz patorrent-nox for Apple silicon (arm64, macOS 11+) and Intel (x86_64, macOS 10.14+)

First run

  • Windows installer. Run the setup. It is not code-signed, so SmartScreen shows "Windows protected your PC": More info > Run anyway. "Install for anyone using this computer" asks for administrator rights and shows "Unknown publisher". Running a newer setup later upgrades in place. Settings and torrents are in %APPDATA%\PaTorrent.

  • Windows zip. Unzip anywhere and start patorrent.exe (SmartScreen as above). Settings and torrents go to %APPDATA%\PaTorrent; an empty patorrent.ini next to the exe keeps them beside it instead (portable mode).

  • Linux AppImage. chmod +x PaTorrent-1.0.1-x86_64.AppImage, then run it. Without FUSE 2 on the system, start it with --appimage-extract-and-run. Settings are in ~/.config/patorrent/gtk, torrents in ~/.local/share/patorrent/gtk.

  • Linux Flatpak. The bundle holds the application; the runtime comes from Flathub:

    flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
    flatpak install --user PaTorrent-1.0.1-x86_64.flatpak
    flatpak run io.github.balls0fsteel.PaTorrent
  • macOS. Drag PaTorrent.app to Applications. It is ad-hoc signed and not notarised, so Gatekeeper refuses it the first time ("cannot be opened because the developer cannot be verified"): right-click (or Control-click) the app > Open, then Open. Or remove the quarantine flag: xattr -dr com.apple.quarantine /Applications/PaTorrent.app. The GUI is Apple silicon only; Intel Macs get patorrent-nox.

  • Headless. patorrent-nox run --webui 8080 --webui-pass PASS starts the daemon with its Web UI and a qBittorrent-compatible Web API on port 8080 (--webui-https for a self-signed certificate). patorrent-nox add file.torrent --save DIR adds a torrent. Running it as a service (systemd units, FreeBSD rc.d, --daemon, a Windows service) is described in docs/DAEMON.md.

  • Remote control. Either GUI can drive a patorrent-nox elsewhere: File > Connect to Remote..., or start it with --remote.

What is in it

  • Engine: downloads and seeds over TCP and uTP, with HTTP, HTTPS and UDP trackers, magnet links, DHT, peer exchange, local peer discovery, protocol encryption, web seeds, SOCKS and HTTP proxies, UPnP / NAT-PMP port mapping, IP filters, super-seeding, sequential download and per-torrent speed limits. BitTorrent v2 and hybrid torrents (BEP 52), including creating them.
  • Windows GUI (patorrent): the µTorrent 2.2.1 main window with its category list, every column, the detail tabs (General, Trackers, Peers, Pieces, Files, Speed, Logger), Preferences, Add New Torrent, Create New Torrent, Torrent Properties, the RSS downloader, the scheduler, Auto Shutdown, the tray icon, file and magnet associations and autostart.
  • GTK 4 GUI (patorrent-gtk, Linux / BSD / macOS): the same main window and dialogs on the shared frontend model, with the tray, notifications, associations and autostart (through the Background portal in a Flatpak).
  • Daemon (patorrent-nox): headless operation, its own Web UI, a qBittorrent-compatible Web API subset so existing tools can talk to it, HTTPS, and service integration (systemd units, a FreeBSD rc.d script, a Windows service).
  • 34 languages, including right-to-left layouts; the translations are machine-made and unreviewed, so corrections are welcome.
  • Scale: on the author's PC the Windows GUI lists 100,000 torrents in about a second with idle GUI CPU under 0.1 %.

Known limitations

  • Most features have been exercised by the author only; some dialogs and settings have had little use. Keep a copy of torrents you care about elsewhere.
  • Do not use it on private trackers yet. The client ID PA is not whitelisted anywhere.
  • Nothing is code-signed: Windows SmartScreen and macOS Gatekeeper warn (see above).
  • The installer is new: every build installs, checks and uninstalls it silently, but its wizard and the all-users path have had little hand testing.
  • macOS: the .app has only been built and started on GitHub's runners; it has not been used on a real Mac. Window content, opening files and magnets from Finder, Login Items and the menu-bar icon are unverified.
  • The Linux AppImages and the Flatpak have had command-line smoke checks but little desktop use; the aarch64 builds are untried on real hardware.
  • The 100,000-torrent target has been measured on one mid-range PC only.

Reporting problems

Open an issue with your platform, the file you used and what happened. For a crash or a stuck torrent, the Logger tab or patorrent-nox run --verbose output helps.

License

PaTorrent is free for noncommercial use under the PolyForm Noncommercial License 1.0.0. Code ported from libtorrent remains under its BSD-3-Clause license; every download carries LICENSE.md and THIRD-PARTY-NOTICES.md. PaTorrent is an independent project, not affiliated with libtorrent, qBittorrent, µTorrent or BitTorrent, Inc.

Rookparcel 1.0.0-rc.1 (released as PaTorrent)

Choose a tag to compare

@github-actions github-actions released this 27 Oct 06:49

PaTorrent 1.0.0-rc.1 is the first public build: a release candidate for 1.0, for people who want to try it and report what breaks. It is pre-release software. The author uses it; nobody else has yet.

PaTorrent (PatinaTorrent) is a lean BitTorrent client in the spirit of µTorrent 2.2.1: small single-file binaries, a native look, low RAM and CPU use, and an interface that stays responsive with tens of thousands of torrents. The engine is our own Rust port of libtorrent-rasterbar 2.0.11; nothing is linked.

Downloads

Nothing to install: unpack and run. SHA256SUMS has every file's checksum.

Platform File What is inside
Windows 10 / 11, x64 patorrent-1.0.0-rc.1-windows-x64.zip patorrent.exe (the GUI) and patorrent-nox.exe (the headless daemon); statically linked, no runtime needed
Linux desktop, x86_64 or aarch64 PaTorrent-1.0.0-rc.1-<arch>.AppImage the GTK 4 GUI with its libraries bundled (needs glibc 2.39 or newer: Ubuntu 24.04, Fedora 40, Debian 13 or later)
Linux desktop, Flatpak PaTorrent-1.0.0-rc.1-<arch>.flatpak the GTK 4 GUI on the GNOME 51 runtime (installed from Flathub)
Linux, plain binaries patorrent-1.0.0-rc.1-linux-<arch>.tar.gz patorrent-gtk, patorrent-nox, the desktop entry and the systemd units; they use the system's GTK 4 (4.12 or newer) and OpenSSL 3, as on Ubuntu 24.04
Linux server, headless patorrent-nox-1.0.0-rc.1-<arch>.AppImage patorrent-nox with OpenSSL bundled
macOS, Apple silicon PaTorrent-1.0.0-rc.1-arm64.dmg PaTorrent.app: the GTK 4 GUI with its libraries bundled (macOS 15 or newer)
macOS, headless patorrent-nox-1.0.0-rc.1-macos-<arch>.tar.gz patorrent-nox for Apple silicon (arm64, macOS 11+) and Intel (x86_64, macOS 10.14+)

First run

  • Windows. Unzip anywhere and start patorrent.exe. The binaries are not code-signed, so SmartScreen shows "Windows protected your PC" the first time: More info > Run anyway. Settings and torrents go to %APPDATA%\PaTorrent; an empty patorrent.ini next to the exe keeps them beside it instead (portable mode).

  • Linux AppImage. chmod +x PaTorrent-1.0.0-rc.1-x86_64.AppImage, then run it. Without FUSE 2 on the system, start it with --appimage-extract-and-run. Settings are in ~/.config/patorrent/gtk, torrents in ~/.local/share/patorrent/gtk.

  • Linux Flatpak. The bundle holds the application; the runtime comes from Flathub:

    flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
    flatpak install --user PaTorrent-1.0.0-rc.1-x86_64.flatpak
    flatpak run io.github.balls0fsteel.PaTorrent
  • macOS. Drag PaTorrent.app to Applications. It is ad-hoc signed and not notarised, so Gatekeeper refuses it the first time ("cannot be opened because the developer cannot be verified"): right-click (or Control-click) the app > Open, then Open. Or remove the quarantine flag: xattr -dr com.apple.quarantine /Applications/PaTorrent.app. The GUI is Apple silicon only; Intel Macs get patorrent-nox.

  • Headless. patorrent-nox run --webui 8080 --webui-pass PASS starts the daemon with its Web UI and a qBittorrent-compatible Web API on port 8080 (--webui-https for a self-signed certificate). patorrent-nox add file.torrent --save DIR adds a torrent. Running it as a service (systemd units, FreeBSD rc.d, --daemon) is described in docs/DAEMON.md.

  • Remote control. Either GUI can drive a patorrent-nox elsewhere: File > Connect to Remote..., or start it with --remote.

What is in it

  • Engine: downloads and seeds over TCP and uTP, with HTTP, HTTPS and UDP trackers, magnet links, DHT, peer exchange, local peer discovery, protocol encryption, web seeds, SOCKS and HTTP proxies, UPnP / NAT-PMP port mapping, IP filters, super-seeding, sequential download and per-torrent speed limits. BitTorrent v2 and hybrid torrents (BEP 52), including creating them.
  • Windows GUI (patorrent): the µTorrent 2.2.1 main window with its category list, every column, the detail tabs (General, Trackers, Peers, Pieces, Files, Speed, Logger), Preferences, Add New Torrent, Create New Torrent, Torrent Properties, the RSS downloader, the scheduler, Auto Shutdown, the tray icon, file and magnet associations and autostart.
  • GTK 4 GUI (patorrent-gtk, Linux / BSD / macOS): the same main window and dialogs on the shared frontend model, with the tray, notifications, associations and autostart (through the Background portal in a Flatpak).
  • Daemon (patorrent-nox): headless operation, its own Web UI, a qBittorrent-compatible Web API subset so existing tools can talk to it, HTTPS, and service integration (systemd units, a FreeBSD rc.d script, a Windows service).
  • 34 languages, including right-to-left layouts; the translations are machine-made and unreviewed, so corrections are welcome.
  • Scale: on the author's PC the Windows GUI lists 100,000 torrents in about a second with idle GUI CPU under 0.1 %.

Known limitations

  • Pre-release: settings and saved state may still change before 1.0, and some dialogs and settings have only been exercised by the author. Keep a copy of torrents you care about elsewhere.
  • Do not use it on private trackers yet. The client ID PA is not whitelisted anywhere.
  • Nothing is code-signed: Windows SmartScreen and macOS Gatekeeper warn (see above).
  • macOS: the .app has only been built and started on GitHub's runners; it has not been used on a real Mac. Window content, opening files and magnets from Finder, Login Items and the menu-bar icon are unverified.
  • The Linux AppImages and the Flatpak have had command-line smoke checks but little desktop use; the aarch64 builds are untried on real hardware.
  • The 100,000-torrent target has been measured on one mid-range PC only.

Reporting problems

Open an issue with your platform, the file you used and what happened. For a crash or a stuck torrent, the Logger tab or patorrent-nox run --verbose output helps.

License

PaTorrent is free for noncommercial use under the PolyForm Noncommercial License 1.0.0. Code ported from libtorrent remains under its BSD-3-Clause license; every archive carries LICENSE.md and THIRD-PARTY-NOTICES.md. PaTorrent is an independent project, not affiliated with libtorrent, qBittorrent, µTorrent or BitTorrent, Inc.