Skip to content

Releases

aria_move 1.5.2

Choose a tag to compare

@macg4dave macg4dave released this 14 Nov 05:16

Completed downloads on SMB shares can receive a timestamp refresh after aria2 has finished. Previously this could abort a verified move or leave the original in the incoming folder after the destination was published.

Version 1.5.2 recovers from timestamp-only changes while retaining the source-size, identity and content checks:

  • Before publication, discard staging and retry a fresh inventory and full verified copy, up to three attempts.
  • During cleanup, require a fresh byte-for-byte comparison with the published destination before accepting a timestamp-only change and removing the source.
  • Report old and new size, timestamp and identity values when a source-change check fails.
  • Add concurrent hook tests, opt-in real-share tests, and a Debian 13 QEMU VM with ext4, XFS, Btrfs and Linux SMB test stages.

Downloads

  • Debian/Ubuntu amd64 or arm64: sudo apt install ./aria-move_1.5.2_amd64.deb (use the arm64 package on ARM64).
  • RHEL/AlmaLinux/Rocky 9+ and Fedora: sudo dnf install ./aria-move-1.5.2-1.el9.x86_64.rpm (use aarch64 on ARM64), then enable the service with sudo systemctl enable --now aria-move. RHEL-family systems need EPEL for aria2.
  • Windows x86_64: extract the ZIP or download the standalone executable.
  • Verify every downloaded artifact against SHA256SUMS.

Debian packages use the Debian 12 / glibc 2.36 baseline; RPM packages use the EL9 / glibc 2.34 baseline. Existing settings remain in place on upgrade. See the installation instructions.

Verification

The attached RELEASE_TESTS.md and release-test-logs.zip record the release checks and their limits. The Debian 13 VM exercises a Linux CIFS client against Samba backed by ext4; it does not emulate a ZFS server. World-share testing uses the Windows SMB client. macOS binaries are not provided.

aria_move 1.5.1

Choose a tag to compare

@macg4dave macg4dave released this 31 Oct 18:45

Downloads and installation

  • Debian/Ubuntu: sudo apt install ./aria-move_1.5.1_amd64.deb (arm64 on ARM64)
  • New Fedora / RHEL / AlmaLinux / Rocky 9+: sudo dnf install ./aria-move-1.5.1-1.el9.x86_64.rpm (aarch64 on ARM64), then sudo systemctl enable --now aria-move. On RHEL-family systems enable EPEL first (sudo dnf install epel-release) for aria2.
  • Windows x86_64: extract the ZIP or use the standalone executable.
  • Verify downloads against SHA256SUMS.

The .deb packages need glibc 2.36+ (Debian 12 baseline); the .rpm packages need glibc 2.34+ (EL9 baseline). Both install the same managed setup: a restricted aria-move account, aria-move.service, authenticated localhost RPC on port 6800 and the completion hook. See the README.

Changes

  • RPM packages for x86_64 and aarch64, with the full managed service (not just the binary, as in 1.0.1). Settings in /etc/aria_move are kept on upgrade; downloads, token and logs are kept on removal.
  • Logging rework: application errors, file-access failures and crashes always go to the system log (syslog/journald: journalctl -t aria_move; Windows: Application event log), plus stderr, including errors before the config loads. The log file follows log_level: verbose everything, normal completed moves and errors (packaged default), warn errors only. --json now formats the log file.
  • RPC secret is generated on the machine at install time and is the only source of the token; any rpc-secret line in aria2.conf is ignored, and a malformed secret file is refused with a clear error.
  • Updated packaged aria2.conf (download tuning, BitTorrent and tracker settings).
  • Docs: ReadWritePaths entries must exist (otherwise systemd fails with 226/NAMESPACE); include the log directory when log_file is on custom storage.
  • Package lifecycle tests: negative assertions now actually fail.

Verification

See the attached RELEASE_TESTS.md and release-test-logs.zip. All Debian and RPM packages passed their Docker lifecycle gates on both architectures (ARM64 under QEMU); Debian packages also passed the 2 GiB concurrency test. Windows tests passed. macOS binaries are not provided.

aria_move 1.5

Choose a tag to compare

@macg4dave macg4dave released this 31 Oct 15:33

Refreshed 31 October 2026: the 1.5 assets and tag now include the concurrency
and move-logic fixes below. Version metadata remains 1.5.0. If you installed
the earlier 1.5 Debian package, use sudo apt install --reinstall ./aria-move_1.5.0_ARCH.deb
with the package for your architecture. Windows users should replace the executable.
Verify downloads against the updated SHA256SUMS.

Version 1.5 is packaged as 1.5.0.

Downloads and installation

  • Debian/Ubuntu amd64: sudo apt install ./aria-move_1.5.0_amd64.deb
  • Debian/Ubuntu ARM64: sudo apt install ./aria-move_1.5.0_arm64.deb
  • Windows x86_64: extract the ZIP, or use the standalone executable. Run aria_move.exe --help for setup options.
  • Verify downloaded files against SHA256SUMS.

The Debian packages are built on Debian 12 (glibc 2.36 baseline). They install aria2, a restricted service account, default configuration and the enabled aria-move.service. RPC is authenticated and listens on localhost:6800. See the README for first-run instructions and integration with an existing aria2 service.

Changes

  • Lock individual downloads instead of shared incoming/completed directories; independent hooks run concurrently.

  • Remove per-hook Rayon worker pools and arbitrary scan/sleep sampling; stream files sequentially within each hook.

  • Single-file hooks and explicit paths move only the selected entry, leaving siblings untouched. Multi-file hooks retain folder handling and require a dedicated download folder.

  • Accept completed .tmp, .part and .crdownload files; still refuse aria2 control files.

  • Create Windows lock sidecars exclusively so pre-existing user files cannot be deleted.

  • Tolerate unsupported Unix directory-flush operations while retaining file flushes, byte verification and real storage-error handling.

  • Add a release-gate test with a real 2 GiB aria2 download plus ten 1 MiB downloads; all small moves must finish while the large copy is paused, and every SHA-256 must match.

  • Native Debian/systemd installation replaces the old binary-only package and manual wrapper workflows.

  • Dedicated service account, protected configuration and credentials, persistent data, automatic restart and standard package-manager lifecycle handling.

  • Fix DNS resolution inside the bundled service sandbox by permitting network-interface queries through AF_NETLINK.

  • Safer first-run setup, configuration validation and clearer installation/errors/help.

  • Preserve local configuration during upgrades and downloads during removal/purge.

  • Docker release gate covering the actual amd64/arm64 packages, plus repeatable Windows testing and packaging.

This release provides Debian packages and Windows binaries; it does not provide RPMs or macOS binaries. Existing aria2 users should follow the installation guide instead of running two instances on the same port/storage.

Verification

See the attached RELEASE_TESTS.md and release-test logs for the tested commit, architectures, package lifecycle coverage and limitations. Container restarts test service enablement/startup; native reboot testing is reported separately. The real-storage opt-in ZFS test was not run.

aria_move v1.0.1

Choose a tag to compare

@macg4dave macg4dave released this 31 Oct 05:24

Release binaries for Linux x86_64, Linux ARM64 (AArch64), and Windows x86_64.

Downloads

  • Linux: choose the architecture-matched ZIP, .deb, or .rpm.
  • Windows: download the standalone .exe, or the ZIP containing bin/aria_move.exe, README and license.
  • Linux ZIPs contain bin/aria_move, README and license.
  • Verify downloads against SHA256SUMS.

Installation

Debian/Ubuntu: sudo apt install ./aria-move_1.0.1_amd64.deb (use arm64 on ARM64).

Fedora/RHEL-family: sudo dnf install ./aria-move-1.0.1-1.x86_64.rpm (use aarch64 on ARM64).

Linux builds require glibc 2.36 or newer and include extended attribute support. Older distributions with earlier glibc versions require a source build. Windows builds use the x86_64 MSVC target. These are 64-bit binaries; no 32-bit x86 binaries are included.

Changes

  • Hardened source resolution, unfinished-download detection and verified-copy cleanup.
  • Correct filesystem errors during destination selection and strict XML document validation.
  • Non-Unicode source path support and simpler logging dependencies.
  • Expanded regression coverage and local cross-platform testing.

Default and all-feature Rust suites, formatting and clippy passed on Windows x86_64 and Linux x86_64/ARM64. ARM64 Linux testing uses QEMU emulation. The real-storage ZFS opt-in test and macOS runtime tests were not run. This release contains no macOS binaries.