mirror of
https://github.com/StuffAnThings/qbit_manage.git
synced 2025-09-16 18:14:31 +08:00
chore(docs): Sync docs to wiki [skip-cd]
parent
90899f05db
commit
6c18410711
7 changed files with 330 additions and 60 deletions
|
@ -8,7 +8,7 @@
|
||||||
| `-r` or`--run` | QBT_RUN | N/A | Run without the scheduler. Script will exit after completion. | False |
|
| `-r` or`--run` | QBT_RUN | N/A | Run without the scheduler. Script will exit after completion. | False |
|
||||||
| `-sch` or `--schedule` | QBT_SCHEDULE | N/A | Schedule to run every x minutes or choose customize schedule via [cron](https://crontab.guru/examples.html). (Default set to 1440 (1 day)) | 1440 |
|
| `-sch` or `--schedule` | QBT_SCHEDULE | N/A | Schedule to run every x minutes or choose customize schedule via [cron](https://crontab.guru/examples.html). (Default set to 1440 (1 day)) | 1440 |
|
||||||
| `-sd` or `--startup-delay` | QBT_STARTUP_DELAY | N/A | Set delay in seconds on the first run of a schedule (Default set to 0) | 0 |
|
| `-sd` or `--startup-delay` | QBT_STARTUP_DELAY | N/A | Set delay in seconds on the first run of a schedule (Default set to 0) | 0 |
|
||||||
| `-c CONFIG` or `--config-file CONFIG` | QBT_CONFIG | N/A | This is used if you want to use a different name for your config.yml. `Example: tv.yml`. Supports wildcards to use multiple configs. `Example: config-*.yml` | config.yml |
|
| `-c CONFIG` or `--config-file CONFIG` | QBT_CONFIG | N/A | Override the default config file location. By default, qbit_manage looks for `config.yml` in platform-specific directories (see [Config-Setup](Config-Setup.md) for details). Use this to specify a custom path or filename. `Example: tv.yml`. Supports wildcards to use multiple configs. `Example: config-*.yml` | Platform-specific |
|
||||||
| `-lf LOGFILE,` or `--log-file LOGFILE,` | QBT_LOGFILE | N/A | This is used if you want to use a different name for your log file. `Example: tv.log` | activity.log |
|
| `-lf LOGFILE,` or `--log-file LOGFILE,` | QBT_LOGFILE | N/A | This is used if you want to use a different name for your log file. `Example: tv.log` | activity.log |
|
||||||
| `-re` or `--recheck` | QBT_RECHECK | recheck | Recheck paused torrents sorted by lowest size. Resume if Completed. | False |
|
| `-re` or `--recheck` | QBT_RECHECK | recheck | Recheck paused torrents sorted by lowest size. Resume if Completed. | False |
|
||||||
| `-cu` or `--cat-update` | QBT_CAT_UPDATE | cat_update | Use this if you would like to update your categories or move from one category to another. | False |
|
| `-cu` or `--cat-update` | QBT_CAT_UPDATE | cat_update | Use this if you would like to update your categories or move from one category to another. | False |
|
||||||
|
|
|
@ -3,7 +3,19 @@
|
||||||
|
|
||||||
The script utilizes a YAML config file to load information to connect to the various APIs you can connect with. Alternatively, you can configure qBit Manage using the [Web UI](Web-UI.md), which requires the [Web API](Web-API.md) to be enabled.
|
The script utilizes a YAML config file to load information to connect to the various APIs you can connect with. Alternatively, you can configure qBit Manage using the [Web UI](Web-UI.md), which requires the [Web API](Web-API.md) to be enabled.
|
||||||
|
|
||||||
By default, the script looks at `/config/config.yml` when running locally or `/app/config.yml` in docker for the Configuration File unless otherwise specified.
|
## Default Configuration File Locations
|
||||||
|
|
||||||
|
The script looks for the configuration file in different locations depending on your platform:
|
||||||
|
|
||||||
|
### Local Installation (Platform-specific)
|
||||||
|
- **Windows**: `%APPDATA%\qbit-manage\config.yml` (typically `C:\Users\<username>\AppData\Roaming\qbit-manage\config.yml`)
|
||||||
|
- **macOS**: `~/Library/Application Support/qbit-manage/config.yml`
|
||||||
|
- **Linux/Unix**: `~/.config/qbit-manage/config.yml` (or `$XDG_CONFIG_HOME/qbit-manage/config.yml` if XDG_CONFIG_HOME is set)
|
||||||
|
|
||||||
|
### Docker Installation
|
||||||
|
- `/app/config.yml` (inside the container)
|
||||||
|
|
||||||
|
You can override the default location by using the `--config-file` or `-c` command line option to specify a custom path.
|
||||||
|
|
||||||
A template Configuration File can be found in the repo [config/config.yml.sample](https://github.com/StuffAnThings/qbit_manage/blob/master/config/config.yml.sample).
|
A template Configuration File can be found in the repo [config/config.yml.sample](https://github.com/StuffAnThings/qbit_manage/blob/master/config/config.yml.sample).
|
||||||
|
|
||||||
|
@ -265,7 +277,7 @@ Provide webhook notifications based on event triggers
|
||||||
|
|
||||||
Payload will be sent on any errors
|
Payload will be sent on any errors
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "run_error", // Webhook Trigger keyword
|
"function": "run_error", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -279,7 +291,7 @@ Payload will be sent on any errors
|
||||||
|
|
||||||
Payload will be sent at the start of the run
|
Payload will be sent at the start of the run
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "run_start", // Webhook Trigger keyword
|
"function": "run_start", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -294,7 +306,7 @@ Payload will be sent at the start of the run
|
||||||
|
|
||||||
Payload will be sent at the end of the run
|
Payload will be sent at the end of the run
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "run_end", // Webhook Trigger keyword
|
"function": "run_end", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -327,7 +339,7 @@ Payload will be sent at the end of the run
|
||||||
|
|
||||||
Payload will be sent when rechecking/resuming a torrent that is paused
|
Payload will be sent when rechecking/resuming a torrent that is paused
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "recheck", // Webhook Trigger keyword
|
"function": "recheck", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -344,7 +356,7 @@ Payload will be sent when rechecking/resuming a torrent that is paused
|
||||||
|
|
||||||
Payload will be sent when updating torrents with missing category
|
Payload will be sent when updating torrents with missing category
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "cat_update", // Webhook Trigger keyword
|
"function": "cat_update", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -361,7 +373,7 @@ Payload will be sent when updating torrents with missing category
|
||||||
|
|
||||||
Payload will be sent when updating torrents with missing tag
|
Payload will be sent when updating torrents with missing tag
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "tag_update", // Webhook Trigger keyword
|
"function": "tag_update", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -378,7 +390,7 @@ Payload will be sent when updating torrents with missing tag
|
||||||
|
|
||||||
Payload will be sent when Unregistered Torrents are found
|
Payload will be sent when Unregistered Torrents are found
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "rem_unregistered", // Webhook Trigger keyword
|
"function": "rem_unregistered", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -397,7 +409,7 @@ Payload will be sent when Unregistered Torrents are found
|
||||||
|
|
||||||
Payload will be sent when trackers with errors are tagged/untagged
|
Payload will be sent when trackers with errors are tagged/untagged
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "tag_tracker_error", // Webhook Trigger keyword
|
"function": "tag_tracker_error", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -411,7 +423,7 @@ Payload will be sent when trackers with errors are tagged/untagged
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "untag_tracker_error", // Webhook Trigger keyword
|
"function": "untag_tracker_error", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -428,7 +440,7 @@ Payload will be sent when trackers with errors are tagged/untagged
|
||||||
|
|
||||||
Payload will be sent when Orphaned Files are found and moved into the orphaned folder
|
Payload will be sent when Orphaned Files are found and moved into the orphaned folder
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "rem_orphaned", // Webhook Trigger keyword
|
"function": "rem_orphaned", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -443,7 +455,7 @@ Payload will be sent when Orphaned Files are found and moved into the orphaned f
|
||||||
|
|
||||||
Payload will be sent when no hard links are found for any files in a particular torrent
|
Payload will be sent when no hard links are found for any files in a particular torrent
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "tag_nohardlinks", // Webhook Trigger keyword
|
"function": "tag_nohardlinks", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -458,7 +470,7 @@ Payload will be sent when no hard links are found for any files in a particular
|
||||||
|
|
||||||
Payload will be sent when hard links are found for any torrents that were previously tagged with `noHL`
|
Payload will be sent when hard links are found for any torrents that were previously tagged with `noHL`
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "untag_nohardlinks", // Webhook Trigger keyword
|
"function": "untag_nohardlinks", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -475,7 +487,7 @@ Payload will be sent when hard links are found for any torrents that were previo
|
||||||
|
|
||||||
Payload will be sent when Share Limits are updated for a specific group
|
Payload will be sent when Share Limits are updated for a specific group
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "share_limits", // Webhook Trigger keyword
|
"function": "share_limits", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -492,7 +504,7 @@ Payload will be sent when Share Limits are updated for a specific group
|
||||||
|
|
||||||
Payload will be sent when `cleanup` flag is set to true and torrent meets share limit criteria.
|
Payload will be sent when `cleanup` flag is set to true and torrent meets share limit criteria.
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "cleanup_share_limits", // Webhook Trigger keyword
|
"function": "cleanup_share_limits", // Webhook Trigger keyword
|
||||||
"title": str, // Title of the Payload
|
"title": str, // Title of the Payload
|
||||||
|
@ -511,7 +523,7 @@ Payload will be sent when `cleanup` flag is set to true and torrent meets share
|
||||||
|
|
||||||
Payload will be sent when files are deleted/cleaned up from the various folders
|
Payload will be sent when files are deleted/cleaned up from the various folders
|
||||||
|
|
||||||
```json
|
```yaml
|
||||||
{
|
{
|
||||||
"function": "cleanup_dirs", // Webhook Trigger keyword
|
"function": "cleanup_dirs", // Webhook Trigger keyword
|
||||||
"location": str, // Location of the folder that is being cleaned
|
"location": str, // Location of the folder that is being cleaned
|
||||||
|
|
18
Home.md
18
Home.md
|
@ -4,9 +4,21 @@ This wiki should tell you everything you need to know about the script to get it
|
||||||
|
|
||||||
## Getting Started
|
## Getting Started
|
||||||
|
|
||||||
1. Install qbit_manage either by installing Python3.9.0+ on the localhost and following the [Local Installation](https://github.com/StuffAnThings/qbit_manage/wiki/Local-Installations) Guide or by installing Docker and following the [Docker Installation](https://github.com/StuffAnThings/qbit_manage/wiki/Docker-Installation) Guide or the [unRAID Installation](https://github.com/StuffAnThings/qbit_manage/wiki/Unraid-Installation) Guide.<br>
|
1. **Choose your installation method:**
|
||||||
1. Once installed, you have to [set up your Configuration](https://github.com/StuffAnThings/qbit_manage/wiki/Config-Setup) by create a [Configuration File](https://github.com/StuffAnThings/qbit_manage/blob/master/config/config.yml.sample) filled with all your values to connect to your qBittorrent instance.
|
- **Desktop App** (Recommended): Download and install the GUI application for [Windows, macOS, or Linux](Installation.md#desktop-app-installation)
|
||||||
1. Please refer to the list of [Commands](https://github.com/StuffAnThings/qbit_manage/wiki/Commands) that can be used with this tool.
|
- **Standalone Binary**: Download the command-line executable for [Windows, macOS, or Linux](Installation.md#standalone-binary-installation)
|
||||||
|
- **Docker**: Follow the [Docker Installation](Docker-Installation) guide for containerized environments
|
||||||
|
- **Python/Source**: Install from [PyPI or source code](Local-Installations) for development
|
||||||
|
- **unRAID**: Follow the [unRAID Installation](Unraid-Installation) guide for unRAID systems
|
||||||
|
|
||||||
|
2. **Configure qbit_manage:**
|
||||||
|
- Desktop app users: Configuration is handled through the GUI
|
||||||
|
- Command-line users: [Set up your Configuration](Config-Setup) by creating a [Configuration File](https://github.com/StuffAnThings/qbit_manage/blob/master/config/config.yml.sample) with your qBittorrent connection details
|
||||||
|
|
||||||
|
3. **Start using qbit_manage:**
|
||||||
|
- Review the [Commands](Commands) documentation to understand available features
|
||||||
|
- Try the [Web UI](Web-UI) for an intuitive configuration experience
|
||||||
|
- Use the [Web API](Web-API) for automation and integration
|
||||||
|
|
||||||
## Support
|
## Support
|
||||||
|
|
||||||
|
|
125
Installation.md
125
Installation.md
|
@ -1,7 +1,120 @@
|
||||||
# Installation Table of Contents
|
# Installation Options
|
||||||
|
|
||||||
- [Installation](https://github.com/StuffAnThings/qbit_manage/wiki/Installation)
|
qbit_manage offers multiple installation methods to suit different use cases:
|
||||||
- [unRAID Installation](https://github.com/StuffAnThings/qbit_manage/wiki/Unraid-Installation)
|
|
||||||
- [Local Installation](https://github.com/StuffAnThings/qbit_manage/wiki/Local-Installations)
|
## Installation Methods
|
||||||
- [NIX Installation](https://github.com/StuffAnThings/qbit_manage/wiki/Nix-Installation)
|
|
||||||
- [Docker Installation](https://github.com/StuffAnThings/qbit_manage/wiki/Docker-Installation)
|
### 1. Desktop App (Recommended for most users)
|
||||||
|
- **Windows**: Download and run the `.exe` installer
|
||||||
|
- **macOS**: Download and install the `.dmg` package
|
||||||
|
- **Linux**: Download and install the `.deb` package
|
||||||
|
|
||||||
|
The desktop app provides a graphical interface and automatically handles configuration file setup.
|
||||||
|
|
||||||
|
### 2. Standalone Binary (Command-line)
|
||||||
|
- **Windows**: `qbit-manage-windows-amd64.exe`
|
||||||
|
- **macOS**: `qbit-manage-macos-arm64` (Apple Silicon) or `qbit-manage-macos-x86_64` (Intel)
|
||||||
|
- **Linux**: `qbit-manage-linux-amd64`
|
||||||
|
|
||||||
|
Perfect for server environments, automation, or users who prefer command-line tools.
|
||||||
|
|
||||||
|
### 3. Docker Container
|
||||||
|
- Multi-architecture support (amd64, arm64, arm/v7)
|
||||||
|
- Ideal for containerized environments and NAS systems
|
||||||
|
|
||||||
|
### 4. Python Installation
|
||||||
|
- Install from source or PyPI
|
||||||
|
- For developers or users who want to modify the code
|
||||||
|
|
||||||
|
## Detailed Installation Guides
|
||||||
|
|
||||||
|
- [Desktop App Installation](#desktop-app-installation)
|
||||||
|
- [Standalone Binary Installation](#standalone-binary-installation)
|
||||||
|
- [Docker Installation](Docker-Installation)
|
||||||
|
- [Python/Source Installation](Local-Installations)
|
||||||
|
- [unRAID Installation](Unraid-Installation)
|
||||||
|
- [NIX Installation](Nix-Installation)
|
||||||
|
|
||||||
|
## Desktop App Installation
|
||||||
|
|
||||||
|
### Windows
|
||||||
|
1. Download `qbit-manage-*-desktop-installer-setup.exe` from the [releases page](https://github.com/StuffAnThings/qbit_manage/releases)
|
||||||
|
2. Run the installer and follow the setup wizard
|
||||||
|
3. Launch qbit_manage from the Start Menu or desktop shortcut
|
||||||
|
4. The app will automatically create the configuration directory and files
|
||||||
|
|
||||||
|
### macOS
|
||||||
|
1. Download `qbit-manage-*-desktop-installer.dmg` from the [releases page](https://github.com/StuffAnThings/qbit_manage/releases)
|
||||||
|
2. Open the DMG file and drag qbit_manage to your Applications folder
|
||||||
|
3. Launch qbit_manage from Applications (you may need to allow it in System Preferences > Security & Privacy)
|
||||||
|
4. The app will automatically create the configuration directory and files
|
||||||
|
|
||||||
|
### Linux
|
||||||
|
1. Download `qbit-manage-*-desktop-installer.deb` from the [releases page](https://github.com/StuffAnThings/qbit_manage/releases)
|
||||||
|
2. Install using your package manager:
|
||||||
|
```bash
|
||||||
|
sudo dpkg -i qbit-manage-*-desktop-installer.deb
|
||||||
|
sudo apt-get install -f # Fix any dependency issues
|
||||||
|
```
|
||||||
|
3. Launch qbit_manage from your applications menu or run `qbit-manage` in terminal
|
||||||
|
4. The app will automatically create the configuration directory and files
|
||||||
|
|
||||||
|
## Standalone Binary Installation
|
||||||
|
|
||||||
|
### Windows
|
||||||
|
1. Download `qbit-manage-windows-amd64.exe` from the [releases page](https://github.com/StuffAnThings/qbit_manage/releases)
|
||||||
|
2. Place the executable in a directory of your choice (e.g., `C:\Program Files\qbit-manage\`)
|
||||||
|
3. Add the directory to your PATH environment variable (optional)
|
||||||
|
4. Run from Command Prompt or PowerShell:
|
||||||
|
```cmd
|
||||||
|
qbit-manage-windows-amd64.exe --help
|
||||||
|
```
|
||||||
|
|
||||||
|
### macOS
|
||||||
|
1. Download the appropriate binary from the [releases page](https://github.com/StuffAnThings/qbit_manage/releases):
|
||||||
|
- `qbit-manage-macos-arm64` for Apple Silicon Macs (M1, M2, M3, etc.)
|
||||||
|
- `qbit-manage-macos-x86_64` for Intel Macs
|
||||||
|
2. Make the binary executable:
|
||||||
|
```bash
|
||||||
|
chmod +x qbit-manage-macos-*
|
||||||
|
```
|
||||||
|
3. Move to a directory in your PATH (optional):
|
||||||
|
```bash
|
||||||
|
sudo mv qbit-manage-macos-* /usr/local/bin/qbit-manage
|
||||||
|
```
|
||||||
|
4. Run the binary:
|
||||||
|
```bash
|
||||||
|
./qbit-manage-macos-* --help
|
||||||
|
```
|
||||||
|
|
||||||
|
### Linux
|
||||||
|
1. Download `qbit-manage-linux-amd64` from the [releases page](https://github.com/StuffAnThings/qbit_manage/releases)
|
||||||
|
2. Make the binary executable:
|
||||||
|
```bash
|
||||||
|
chmod +x qbit-manage-linux-amd64
|
||||||
|
```
|
||||||
|
3. Move to a directory in your PATH (optional):
|
||||||
|
```bash
|
||||||
|
sudo mv qbit-manage-linux-amd64 /usr/local/bin/qbit-manage
|
||||||
|
```
|
||||||
|
4. Run the binary:
|
||||||
|
```bash
|
||||||
|
./qbit-manage-linux-amd64 --help
|
||||||
|
```
|
||||||
|
|
||||||
|
## Quick Reference: Default Configuration File Locations
|
||||||
|
|
||||||
|
### Desktop App & Standalone Binary
|
||||||
|
- **Windows**: `%APPDATA%\qbit-manage\config.yml`
|
||||||
|
- **macOS**: `~/Library/Application Support/qbit-manage/config.yml`
|
||||||
|
- **Linux**: `~/.config/qbit-manage/config.yml`
|
||||||
|
|
||||||
|
### Docker Installation
|
||||||
|
- **Container Path**: `/app/config.yml`
|
||||||
|
- **Host Mount**: Typically mounted from `/path/to/your/config:/config`
|
||||||
|
|
||||||
|
### Custom Location
|
||||||
|
You can override the default location using the `--config-file` or `-c` command line option:
|
||||||
|
```bash
|
||||||
|
qbit-manage --config-file /path/to/your/config.yml
|
||||||
|
```
|
||||||
|
|
|
@ -1,64 +1,179 @@
|
||||||
# Local Installations
|
# Python/Source Installation
|
||||||
|
|
||||||
Below is a simple high level set of instructions for cloning the repository and executing qbit_manage
|
This guide covers installing qbit_manage from source code or PyPI for development purposes or when you need the latest features.
|
||||||
|
|
||||||
* Requires `python 3.9.0`. Dependencies must be installed by running:
|
**Note**: For most users, we recommend using the [Desktop App or Standalone Binary](Installation.md) instead, as they're easier to install and use.
|
||||||
|
|
||||||
Navigate to the directory you'd liked to clone the repo into
|
## Prerequisites
|
||||||
|
|
||||||
Clone the repo
|
* Python 3.9.0 or higher
|
||||||
|
* pip (Python package installer)
|
||||||
|
* Git (for source installation)
|
||||||
|
|
||||||
|
## Installation Methods
|
||||||
|
|
||||||
|
### Method 1: Install from PyPI (Recommended)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/StuffAnThings/qbit_manage
|
pip install qbit-manage
|
||||||
```
|
```
|
||||||
|
|
||||||
Install requirements
|
### Method 2: Install from Source
|
||||||
|
|
||||||
|
Navigate to the directory where you'd like to clone the repository:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
# Clone the repository
|
||||||
|
git clone https://github.com/StuffAnThings/qbit_manage
|
||||||
|
cd qbit_manage
|
||||||
|
|
||||||
|
# Install the package
|
||||||
pip install .
|
pip install .
|
||||||
```
|
```
|
||||||
|
|
||||||
If there are issues installing dependencies try:
|
If you encounter dependency issues, try:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pip install . --ignore-installed
|
pip install . --ignore-installed
|
||||||
```
|
```
|
||||||
|
|
||||||
## Usage
|
### Method 3: Development Installation
|
||||||
|
|
||||||
To run the script in an interactive terminal run:
|
For development or to get the latest unreleased features:
|
||||||
|
|
||||||
* copy the `config.yml.sample` file to `config.yml`
|
|
||||||
* Fill out the config file as outlined in the [Config-Setup](https://github.com/StuffAnThings/qbit_manage/wiki/Config-Setup)
|
|
||||||
|
|
||||||
Run the script `-h` to see a list of commands
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
# Clone the repository
|
||||||
|
git clone https://github.com/StuffAnThings/qbit_manage
|
||||||
|
cd qbit_manage
|
||||||
|
|
||||||
|
# Install in development mode
|
||||||
|
pip install -e .
|
||||||
|
```
|
||||||
|
|
||||||
|
## Configuration File Setup
|
||||||
|
|
||||||
|
After installation, qbit_manage will look for configuration files in platform-specific locations:
|
||||||
|
|
||||||
|
- **Windows**: `%APPDATA%\qbit-manage\config.yml`
|
||||||
|
- **macOS**: `~/Library/Application Support/qbit-manage/config.yml`
|
||||||
|
- **Linux/Unix**: `~/.config/qbit-manage/config.yml`
|
||||||
|
|
||||||
|
### Setting up the Configuration
|
||||||
|
|
||||||
|
1. Create the configuration directory:
|
||||||
|
```bash
|
||||||
|
# Windows (PowerShell)
|
||||||
|
New-Item -ItemType Directory -Force -Path "$env:APPDATA\qbit-manage"
|
||||||
|
|
||||||
|
# macOS/Linux
|
||||||
|
mkdir -p ~/.config/qbit-manage # Linux
|
||||||
|
mkdir -p ~/Library/Application\ Support/qbit-manage # macOS
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Copy the sample configuration:
|
||||||
|
```bash
|
||||||
|
# From the cloned repository
|
||||||
|
cp config/config.yml.sample ~/.config/qbit-manage/config.yml # Linux
|
||||||
|
cp config/config.yml.sample ~/Library/Application\ Support/qbit-manage/config.yml # macOS
|
||||||
|
copy config\config.yml.sample "%APPDATA%\qbit-manage\config.yml" # Windows
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Edit the configuration file as outlined in the [Config-Setup](Config-Setup.md) guide.
|
||||||
|
|
||||||
|
**Alternative**: You can place the config file anywhere and specify its location using the `--config-file` option.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Running the Script
|
||||||
|
|
||||||
|
### Basic Usage
|
||||||
|
|
||||||
|
Run the script with `-h` to see all available commands:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
qbit-manage -h
|
||||||
|
# or if installed from source
|
||||||
python qbit_manage.py -h
|
python qbit_manage.py -h
|
||||||
```
|
```
|
||||||
|
|
||||||
### Web API and Web UI
|
### Common Usage Examples
|
||||||
|
|
||||||
To run the Web API and Web UI, use the `--web-server` flag:
|
|
||||||
|
|
||||||
|
**Run with default configuration:**
|
||||||
```bash
|
```bash
|
||||||
python qbit_manage.py --web-server
|
qbit-manage
|
||||||
```
|
```
|
||||||
|
|
||||||
You can then access the Web UI in your browser, typically at `http://localhost:8080`.
|
**Run specific commands:**
|
||||||
|
|
||||||
### Config
|
|
||||||
|
|
||||||
To choose the location of the YAML config file
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
python qbit_manage.py --config-file <path_to_config>
|
qbit-manage --cat-update --tag-update
|
||||||
```
|
```
|
||||||
|
|
||||||
### Log
|
**Run with Web API and Web UI:**
|
||||||
|
```bash
|
||||||
|
qbit-manage --web-server
|
||||||
|
```
|
||||||
|
You can then access the Web UI in your browser at `http://localhost:8080`.
|
||||||
|
|
||||||
To choose the location of the Log File
|
**Use custom configuration file:**
|
||||||
|
```bash
|
||||||
|
qbit-manage --config-file /path/to/your/config.yml
|
||||||
|
```
|
||||||
|
|
||||||
|
**Run in dry-run mode (preview changes without applying them):**
|
||||||
|
```bash
|
||||||
|
qbit-manage --dry-run --cat-update --tag-update
|
||||||
|
```
|
||||||
|
|
||||||
|
**Run on a schedule:**
|
||||||
|
```bash
|
||||||
|
qbit-manage --schedule 1440 # Run every 24 hours (1440 minutes)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Command Line Options
|
||||||
|
|
||||||
|
| Option | Description |
|
||||||
|
|--------|-------------|
|
||||||
|
| `--config-file`, `-c` | Specify custom config file location |
|
||||||
|
| `--log-file`, `-lf` | Specify custom log file location |
|
||||||
|
| `--web-server`, `-ws` | Start the web server for API and UI |
|
||||||
|
| `--port`, `-p` | Web server port (default: 8080) |
|
||||||
|
| `--dry-run`, `-dr` | Preview changes without applying them |
|
||||||
|
| `--schedule`, `-sch` | Run on a schedule (minutes) |
|
||||||
|
| `--run`, `-r` | Run once and exit (no scheduler) |
|
||||||
|
|
||||||
|
For a complete list of commands and options, see the [Commands](Commands.md) documentation.
|
||||||
|
|
||||||
|
### Virtual Environment (Recommended)
|
||||||
|
|
||||||
|
For Python installations, it's recommended to use a virtual environment:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
python qbit_manage.py --log-file <path_to_log>
|
# Create virtual environment
|
||||||
|
python -m venv qbit-manage-env
|
||||||
|
|
||||||
|
# Activate virtual environment
|
||||||
|
# Linux/macOS:
|
||||||
|
source qbit-manage-env/bin/activate
|
||||||
|
# Windows:
|
||||||
|
qbit-manage-env\Scripts\activate
|
||||||
|
|
||||||
|
# Install qbit-manage
|
||||||
|
pip install qbit-manage
|
||||||
|
|
||||||
|
# Run qbit-manage
|
||||||
|
qbit-manage --help
|
||||||
|
```
|
||||||
|
|
||||||
|
### Updating
|
||||||
|
|
||||||
|
**PyPI installation:**
|
||||||
|
```bash
|
||||||
|
pip install --upgrade qbit-manage
|
||||||
|
```
|
||||||
|
|
||||||
|
**Source installation:**
|
||||||
|
```bash
|
||||||
|
cd qbit_manage
|
||||||
|
git pull
|
||||||
|
pip install . --upgrade
|
||||||
```
|
```
|
||||||
|
|
|
@ -20,6 +20,23 @@ pip install .
|
||||||
|
|
||||||
* Create Config
|
* Create Config
|
||||||
|
|
||||||
|
**Note:** If using the standalone desktop app, it will automatically create the necessary directories and config files. For command-line usage, you have these options:
|
||||||
|
|
||||||
|
**Option 1 - Use default system location:**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Create the config directory
|
||||||
|
mkdir -p ~/.config/qbit-manage
|
||||||
|
|
||||||
|
# Copy the sample config
|
||||||
|
cp config/config.yml.sample ~/.config/qbit-manage/config.yml
|
||||||
|
|
||||||
|
# Edit the config file
|
||||||
|
nano ~/.config/qbit-manage/config.yml
|
||||||
|
```
|
||||||
|
|
||||||
|
**Option 2 - Keep in project directory:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd config
|
cd config
|
||||||
cp config.yml.sample config.yml
|
cp config.yml.sample config.yml
|
||||||
|
@ -120,12 +137,12 @@ chmod +x qbm-update.sh
|
||||||
|
|
||||||
To run qBit Manage with the Web API and Web UI enabled, execute the `qbit_manage.py` script with the `--web-server` flag:
|
To run qBit Manage with the Web API and Web UI enabled, execute the `qbit_manage.py` script with the `--web-server` flag:
|
||||||
|
|
||||||
|
**If using the default config location (`~/.config/qbit-manage/config.yml`):**
|
||||||
```bash
|
```bash
|
||||||
python qbit_manage.py --web-server
|
python qbit_manage.py --web-server
|
||||||
```
|
```
|
||||||
|
|
||||||
You can also specify a configuration file and log file:
|
**If using a custom config location:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
python qbit_manage.py --web-server --config-file /path/to/your/config.yml --log-file /path/to/your/activity.log
|
python qbit_manage.py --web-server --config-file /path/to/your/config.yml --log-file /path/to/your/activity.log
|
||||||
```
|
```
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
- [Home](Home)
|
- [Home](Home)
|
||||||
- [Installation](Installation)
|
- [Installation](Installation)
|
||||||
- [unRAID Installation](Unraid-Installation)
|
- [Desktop App & Binary Installation](Installation)
|
||||||
- [Local Installation](Local-Installations)
|
|
||||||
- [NIX Installation](Nix-Installation)
|
|
||||||
- [Docker Installation](Docker-Installation)
|
- [Docker Installation](Docker-Installation)
|
||||||
|
- [Python/Source Installation](Local-Installations)
|
||||||
|
- [unRAID Installation](Unraid-Installation)
|
||||||
|
- [NIX Installation](Nix-Installation)
|
||||||
- [V4 Migration Guide](v4-Migration-Guide)
|
- [V4 Migration Guide](v4-Migration-Guide)
|
||||||
- [Config Setup](Config-Setup)
|
- [Config Setup](Config-Setup)
|
||||||
- [Sample Config File](Config-Setup#config-file)
|
- [Sample Config File](Config-Setup#config-file)
|
||||||
|
|
Loading…
Add table
Reference in a new issue