Skip to content

Conversation

@Xiseous
Copy link

@Xiseous Xiseous commented Oct 17, 2025

See changes in forked repo.

Deleted libtorrent_funcs.sh
Renamed qbittorrent.sh to qbittorent_analyzer.sh
Created new GitHub Action to daily update the .client files based on qbittorrent_analyzer.sh rework (will run retrospectively, e.g. download older version if missing and available, only downloads stable releases by default)

qbittorrent_analyzer.sh rework:

Usage: ./qbit_analyzer.sh [OPTIONS] [URL]

Analyze qBittorrent source code to extract client identification information.

Options:
-h, --help Show this help message
-v, --verbose Enable verbose output
-f, --force Force re-download (ignore cache)
-o, --output FORMAT Output format: text, json, csv (default: text)
--major-version NUM Get latest stable release for major version (e.g., 4)
--list-releases List available releases and exit
--force-latest Use absolute latest release (including pre-releases)
--no-cache Disable caching
--clear-cache Clear download cache and exit

Arguments:
URL GitHub API tarball URL or release API endpoint
If not provided, uses latest stable release

Examples:
./qbit_analyzer.sh # Analyze latest stable release
./qbit_analyzer.sh --major-version 4 # Latest v4.x stable release
./qbit_analyzer.sh --list-releases # Show available releases
./qbit_analyzer.sh --output json # Output in JSON format
./qbit_analyzer.sh https://api.github.com/repos/qbittorrent/qBittorrent/tarball/refs/tags/release-4.6.2

Example Command:
./qbit_analyzer.sh v5.1.2 or ./qbit_analyzer.sh release-4.6.5

Handle partial searches such as ./qbit-analyzer.sh 5.0 by checking GitAPI:
# Output: "Version 5.0 not found. Did you mean one of these?"
# - 5.0.0
# - 5.0.1
# - 5.0.2
# - 5.0.3
# - 5.0.4
# - 5.0.5

Further Examples -
./qbt_analyzer.sh 5.0.4 # Simple version
./qbt_analyzer.sh v5.0.4 # With v prefix
./qbt_analyzer.sh release-5.0.4 # With release- prefix
./qbt_analyzer.sh 5.1.0rc1 # Pre-releases work too

Improved qBit Client Updater script for manual updates.
Libtorrent_funcs.sh, no longer required due to being incorporated into main script to serve as a AIO.
lowercased the file, updated to include `--batch-update`
update-client.yml for automatic updating the qbittorrent client list based from the qbittorrent_analyzer.sh script to run --batch-update to create all missing .client files, daily and commit these changes with descriptions.
@Xiseous
Copy link
Author

Xiseous commented Oct 17, 2025

@JourneyOver Take a look

Updated `actions/cache: v2.1.6` to `actions/cache@v4`
@Xiseous
Copy link
Author

Xiseous commented Oct 17, 2025

Created dev branch to test, changed nothing and forced a manual run, worked without issues as seen here Xiseous@bf67a40

Edit: Might be worth it to decrease frequency from daily to weekly potentially?

@JourneyOver
Copy link
Contributor

JourneyOver commented Oct 17, 2025

@Xiseous It all looks good and everything, but the thing with the whole github workflow is that Anthony will have to actually merge in the PR before it starts working for this repo, I have no control over this repo so I can't merge in PRs or anything, and well he is MIA, so idk if this would ever get merged in, and I really have no plans myself on taking this project over through a fork or anything as I already have way to much stuff on my plate as is.

also yes, you could probably do weekly or even bi-weekly. Releases are very far and few inbetween (like 5.1.2 came out all the way back in July) usually unless something major breaks.

@Xiseous
Copy link
Author

Xiseous commented Oct 17, 2025

@Xiseous It all looks good and everything, but the thing with the whole github workflow is that Anthony will have to actually merge in the PR before it starts working for this repo, I have no control over this repo so I can't merge in PRs or anything, and well he is MIA, so idk if this would ever get merged in, and I really have no plans myself on taking this project over through a fork or anything as I already have way to much stuff on my plate as is.

also yes, you could probably do weekly or even bi-weekly. Releases are very far and few inbetween (like 5.1.2 came out all the way back in July) usually unless something major breaks.

@JourneyOver I get that, just tagging you in, in case you still use this, even if it doesn't get merged, can still point people over to the files auto generated on the fork so that there's no reliance on yourself to generate them for people (I might also look at doing the same for transmission if I can understand those files).

I also wanted a second opinion to double check that everything looks all good and not messed up.

Xiseous and others added 4 commits October 17, 2025 02:03
Changed schedule from:

Run daily at 6 AM UTC -> Run bi-weekly on the 1st and 15th at 6AM UTC.
- Generated client configurations for newly released versions
- Updated by GitHub Action on 2025-10-21 20:36:23 UTC
Changed Commit Message From "Auto-update: Add missing qBittorrent client files" to "Auto-update: Added missing qBittorent client files".
Updated logic to check only client files and not all files in the repo, fixing previously failing auto update in fork due to uncommitted files.

Logic change includes only committing the client files rather than all uncommitted files.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants