Skip to content

Commit

Permalink
Update bug_report.yml
Browse files Browse the repository at this point in the history
docs

Update dependabot.yml

Update dependabot.yml

Create bug_report.yml

Update bug_report.yml

Create config.yml
  • Loading branch information
userdocs committed Jan 22, 2025
1 parent e5cd892 commit aa097c8
Show file tree
Hide file tree
Showing 8 changed files with 94 additions and 29 deletions.
27 changes: 27 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Bug Report
description: An issue with the build script.
body:
- type: markdown
attributes:
value: |
### When to open an issue.
If you had an issue with the build script i.e. It failed to build or exited with an error.
Then please make sure you provide the following information:
- What Host are you building on? It should be Alpine but Debian based for script bugs is ok.
- What method to Build? If it's not Docker it should be.
- What build options you used? The relevant part of the log file from `qbt-build/logs`
### When NOT to open an issue.
If you are having a problem with `qBittorrent` that is nothing to do with the build script.
- Read the docs https://userdocs.github.io/qbittorrent-nox-static/ for basic configuration and usage post build.
- If that does not help then open a discussion on the [GitHub Discussions](https://github.com/userdocs/qbittorrent-nox-static/discussions/new/choose) instead of an issue.
- Don't open an issue for generic application issues, only for build script issues.
- type: textarea
attributes:
label: "What's wrong?"
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
blank_issues_enabled: false
6 changes: 6 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,9 @@ updates:
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "npm"
directory: "/docs"
schedule:
interval: "daily"
ignore:
- dependency-name: "*"
Binary file not shown.
62 changes: 44 additions & 18 deletions docs/src/content/docs/build-help.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,18 @@ description: Build Help
---

import {
Advanced,
Charts,
Details,
Modal,
Steps,
Tabs,
TabItem,
Card,
CardGrid,
LinkCard,
Aside,
Icon,
Advanced,
Charts,
Details,
Modal,
Steps,
Tabs,
TabItem,
Card,
CardGrid,
LinkCard,
Aside,
Icon,
} from "/src/components/global.jsx";

Once the script has successfully configured the platform you can execute the help switch to see how it works and what options you have available to you.
Expand All @@ -24,6 +24,14 @@ Once the script has successfully configured the platform you can execute the hel
./qbittorrent-nox-static.sh -h
```

## Order of preference

The script will use the following order of preference when configuring the build environment:

1. Command line flags
2. `.qbt_env` file in the same directory as the script
3. Exported `env` variables

## ENV settings

The script has some `env` settings that can trigger certain behaviour without the need to pass flags to the script.
Expand Down Expand Up @@ -57,19 +65,37 @@ You can export these before you run the script to set them. The can be used for
| `qbt_static_ish` | `no` | `yes` `no` | `qbt_static_ish="no"` |
| `qbt_optimise` | `no` | `yes` `no` | `qbt_optimise="yes"` |

## Build flags

:::note
Using the `qbt_optimise` will only add `-march=native` to the build flags, when not cross compiling.
:::

The script build is already optimised but if you really want to experiment you can use the following flags in the main `env` and they will be appended to the current build flags:

```bash
export CFLAGS=""
export CPPFLAGS=""
export CXXFLAGS=""
export LDFLAGS=""
```

See the `_custom_flags` function in the script for more information.

<Details summary="Cross arch options">
`armel` `armhf` `armv7` `aarch64`

`x86_64` `x86`
`x86` `x86_64`

`s390x`
`s390x`

`powerpc` `ppc64el`
`powerpc` `ppc64el`

`mips` `mipsel` `mips64` `mips64el`
`mips` `mipsel` `mips64` `mips64el`

`riscv64`
`loongarch64`

`riscv64`
</Details>

:::tip
Expand All @@ -85,7 +111,7 @@ If you set `qbt_build_tool=qmake` and `qbt_qt_version=5` you can build qBittorre
All switches and flags have a supporting help option that will provide dynamic content where applicable.

:::note
The `--boot-strap-release` and `--boot-strap-multi-arch` options are specific to GitHub actions but if you read `--help-boot-strap-release` you can see how to trigger `aarch64|armv7` builds on your local system using Alpine/Debian/Ubuntu via docker.
The `--bootstrap-release` and `--bootstrap-multi-arch` options are specific to GitHub actions but if you read `--help-bootstrap-release` you can see how to trigger `aarch64|armv7` builds on your local system using Alpine/Debian/Ubuntu via docker.
:::

:::tip[Script Help Options]
Expand Down
8 changes: 4 additions & 4 deletions docs/src/content/docs/install-qbittorrent.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Optionally installed to `$HOME/bin/qbittorrent-nox`
Optionally you can just download the existing prebuilt binaries released using GitHub Actions.

<Tabs>
<TabItem value="x86_64" label="🔹 x86_64" default>
<TabItem value="x86_64" label="x86_64" default>

Without ICU

Expand All @@ -62,7 +62,7 @@ chmod 700 ~/bin/qbittorrent-nox
```

</TabItem>
<TabItem value="aarch64" label="🔹 aarch64">
<TabItem value="aarch64" label="aarch64">

Without ICU

Expand All @@ -81,7 +81,7 @@ chmod 700 ~/bin/qbittorrent-nox
```

</TabItem>
<TabItem value="armv7" label="🔹 armv7">
<TabItem value="armv7" label="armv7">

Without ICU

Expand All @@ -100,7 +100,7 @@ chmod 700 ~/bin/qbittorrent-nox
```

</TabItem>
<TabItem value="armhf" label="🔹 armhf">
<TabItem value="armhf" label="armhf">

Without ICU

Expand Down
17 changes: 11 additions & 6 deletions docs/src/content/docs/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,26 +7,31 @@ import { Advanced, BuildInfo, Charts, Details, Modal, Steps, Tabs, TabItem, Card

## What is it?

`qbittorrent-nox-static.sh™` was originally a simple, amateurish bash script, to build a static `qbittorrent-nox` binary for `x86_64`. The script has grown and evolved since then and now it's a complicated bash script.
`qbittorrent-nox-static.sh™` was originally a simple, amateurish bash script, to build a static `qbittorrent-nox` binary for `x86_64`. The script has grown and evolved since then and now it's a complicated bash script.

As of `01/2025`: `qbt-nox-static.bash™` is `v2.1.0` and `qbittorrent-nox-static.sh™` is `v2.0.15`. The former is a fork of the latter, from this version, with changes specific to the dependency handling, which in turn makes breaking changes to the default behaviour of the script. Combined with renaming the script to `.bash` from `.sh` as it is not a POSIX compliant script this would effectively have made `qbittorrent-nox-static.sh` unavailable for use.

So the existence of the two is a transitional change and the `qbittorrent-nox-static.sh` will be deprecated in the future, though any non breaking changes will be backported to the original script.

### What does it do?

It handles a lot of the nuanced complexity around building various different dependencies on two different host platforms, towards the same outcome, whilst targeting these architectures:
It handles a lot of the nuanced complexity around building various different dependencies on two different host platforms, towards the same outcome and can target these architectures via crossbuilding:

<Details summary=" target architectures">
`armel` `armhf` `armv7` `aarch64`

`x86_64` `x86`
`x86` `x86_64`

`s390x`

`powerpc` `ppc64el`

`mips` `mipsel` `mips64` `mips64el`

`riscv64` `loongarch64`
</Details>
`loongarch64`

`riscv64`
</Details>

⭐ On supported host build platforms the `qbittorrent-nox-static.sh` will perform these three main tasks via simple prompt:

Expand All @@ -40,7 +45,7 @@ It handles a lot of the nuanced complexity around building various different dep

</Steps>

The script is highly configurable and is capable of native and cross building. These more advanced configurations will be discussed later sections.
The script is highly configurable and is capable of native and cross building. These more advanced configurations will be discussed later sections of the documentation.

### What is the outcome

Expand Down
2 changes: 1 addition & 1 deletion docs/src/content/docs/script-installation.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ Some notes on the dockers method:
- We use a subdirectory `qbt`, not your `$HOME` directory, to avoid `.bashrc` and `.profile` conflicts.
- A subdirectory is automatically created, named `qbt` by the use of `-v $HOME/qbt:/root`
- The default path will be `HOME/qbt` outside the docker container and `/root/qbt` inside it.
- We use `-e "LANG=C.UTF-8"` with Debian based images to avoid some errors.
- We use `-e "LANG=C.UTF-8"` with Debian based images to avoid some UTF errors.

:::tip[env file]
There are multiple ways to pass an env file when using Docker.
Expand Down

0 comments on commit aa097c8

Please sign in to comment.