Skip to content

Commit 0a252aa

Browse files
committed
docs
1 parent 5ad176a commit 0a252aa

File tree

4 files changed

+68
-162
lines changed

4 files changed

+68
-162
lines changed

docs/src/content/docs/build-help.mdx

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,17 @@ You can export these before you run the script to set them. The can be used for
5656
| `qbt_static_ish` | `no` | `yes` `no` | `qbt_static_ish="no"` |
5757

5858
<Details summary="Cross arch options">
59-
`armel` `armhf` `armv7` `aarch64` `x86_64` `x86` `s390x` `powerpc` `ppc64el`
60-
`mips` `mipsel` `mips64` `mips64el` `riscv64`
59+
`armel` `armhf` `armv7` `aarch64`
60+
61+
`x86_64` `x86`
62+
63+
`s390x`
64+
65+
`powerpc` `ppc64el`
66+
67+
`mips` `mipsel` `mips64` `mips64el`
68+
69+
`riscv64`
6170
</Details>
6271

6372
:::tip

docs/src/content/docs/introduction.mdx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,20 @@ import { Advanced, BuildInfo, Charts, Details, Modal, Steps, Tabs, TabItem, Card
1414
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:
1515

1616
<Details summary=" target architectures">
17-
`aarch64` - `armel` - `armhf` - `armv7`
17+
`armel` `armhf` `armv7` `aarch64`
1818

19-
`x86` - `x86_64`
19+
`x86_64` `x86`
2020

21-
`powerpc` - `ppc64el`
21+
`s390x`
2222

23-
`mips` - `mipsel` - `mips64` - `mips64el`
23+
`powerpc` `ppc64el`
24+
25+
`mips` `mipsel` `mips64` `mips64el`
26+
27+
`riscv64`
2428
</Details>
2529

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

2833
<Steps>

docs/src/content/docs/script-installation.mdx

Lines changed: 30 additions & 139 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,35 @@ description: Script Installation
55

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

8-
## Docker - Install commands
8+
:::note[Host environment]
9+
We do not support a non docker build environment. If you are not using docker, you are on your own.
10+
:::
11+
12+
:::tip[Github Actions]
13+
If you cannot or don't want to use docker, you can use the [Github Actions](/qbittorrent-nox-static/github-actions) to build the project by forking the repository.
14+
:::
15+
16+
## Bootstrapping the container
917

1018
<Tabs>
1119
<TabItem value="Notes" label="Notes">
1220

1321
Some notes on the dockers method:
1422

15-
- We use a subdirectory, not your `$HOME` directory, to avoid `.bashrc` and `.profile` conflicts.
23+
- The script itself install thes necessary dependencies so there is no docker file needed.
24+
- We use a subdirectory `qbt`, not your `$HOME` directory, to avoid `.bashrc` and `.profile` conflicts.
1625
- A subdirectory is automatically created, named `qbt` by the use of `-v $HOME/qbt:/root`
1726
- The default path will be `HOME/qbt` outside the docker container and `/root/qbt` inside it.
1827
- We use `-e "LANG=en_GB.UTF-8"` with Debian based images to avoid some errors.
1928

29+
:::tip[env file]
30+
There are multiple ways to pass an env file when using Docker.
31+
32+
- You can use the `--env-file` switch when creating the docker and provide a file with your [envs](/qbittorrent-nox-static/build-help#env-settings).
33+
- If a `.qbt_env` file is found in the same directory as the script, it will be used automatically.
34+
- Using ENV in a dockerfile is also possible.
35+
:::
36+
2037
</TabItem>
2138
<TabItem value="Debian Linux" label="Debian">
2239

@@ -27,32 +44,32 @@ You use `debian:bullseye` `debian:bookworm` `debian:latest` or a supported tag
2744
To bootstrap the container:
2845

2946
```bash
30-
docker run -it -w /root -e "LANG=en_GB.UTF-8" -v ~/qbt:/root debian:latest /bin/bash -c 'apt update && apt install -y curl && curl -sL git.io/qbstatic && bash'
47+
docker run -it -w /root -p 8080:8080 -e "LANG=en_GB.UTF-8" -v ~/qbt:/root debian:latest /bin/bash -c 'apt update && apt install -y curl && bash'
3148
```
3249

33-
All in one command:
50+
If you need to download the script use this command
3451

3552
```bash
36-
docker run -it -w /root -e "LANG=en_GB.UTF-8" -v ~/qbt:/root debian:latest /bin/bash -c 'apt update && apt install -y curl && curl -sL git.io/qbstatic | bash -s all'
53+
curl -sLo qbt-nox-static.sh git.io/qbstatic && chmod +x qbt-nox-static.sh
3754
```
3855

3956
</TabItem>
4057
<TabItem value="Ubuntu Linux" label="Ubuntu">
4158

4259
:::note[tags]
43-
You use `ubuntu:focal` `ubuntu:jammy` `ubuntu:noble` `ubuntu:latest`
60+
You use `ubuntu:jammy` `ubuntu:noble` `ubuntu:latest`
4461
:::
4562

4663
To bootstrap the container:
4764

4865
```bash
49-
docker run -it -w /root -e "LANG=en_GB.UTF-8" -v ~/qbt:/root ubuntu:latest /bin/bash -c 'apt update && apt install -y curl && bash'
66+
docker run -it -w /root -p 8080:8080 -e "LANG=en_GB.UTF-8" -v ~/qbt:/root ubuntu:latest /bin/bash -c 'apt update && apt install -y curl && bash'
5067
```
5168

52-
All in one command:
69+
If you need to download the script use this command
5370

5471
```bash
55-
docker run -it -w /root -e "LANG=en_GB.UTF-8" -v ~/qbt:/root ubuntu:latest /bin/bash -c 'apt update && apt install -y curl && curl -sL git.io/qbstatic | bash -s all'
72+
curl -sLo qbt-nox-static.sh git.io/qbstatic && chmod +x qbt-nox-static.sh
5673
```
5774

5875
</TabItem>
@@ -65,142 +82,16 @@ You use `alpine:edge` `alpine:latest`
6582
To bootstrap the container:
6683

6784
```bash
68-
docker run -it -w /root -v ~/qbt:/root alpine:edge /bin/ash -c 'apk update && apk add bash curl && bash'
69-
```
70-
71-
All in one command:
72-
73-
```bash
74-
docker run -it -w /root -v ~/qbt:/root alpine:edge /bin/ash -c 'apk update && apk add bash curl && curl -sL git.io/qbstatic | bash -s all'
75-
```
76-
</TabItem>
77-
</Tabs>
78-
79-
## Host - Install commands
80-
81-
<Tabs>
82-
<TabItem value="Debian" label="Debian">
83-
84-
```bash
85-
wget -qO ~/qbittorrent-nox-static.sh https://git.io/qbstatic
86-
```
87-
88-
</TabItem>
89-
<TabItem value="Alpine" label="Alpine">
90-
For Alpine specifically, you need to install bash to use this script.
91-
92-
```bash
93-
apk add bash
94-
```
95-
96-
To execute the script use this command:
97-
98-
```bash
99-
wget -qO ~/qbittorrent-nox-static.sh https://git.io/qbstatic
100-
```
101-
</TabItem>
102-
</Tabs>
103-
104-
## Post installation
105-
106-
If you need to install the dependencies and you have `sudo` privileges then do this:
107-
108-
:::caution
109-
This only needs to be done once, as root, to install the dependencies. Using certain enviroment variables or switches can add dependencies, like `-c` for cmake.
110-
111-
You may need to escalate your privileges again.
112-
:::
113-
114-
```bash
115-
sudo bash ~/qbittorrent-nox-static.sh
116-
```
117-
118-
## Docker via SSH
119-
120-
Some notes on the dockers method:
121-
122-
- We use a subdirectory, not your `$HOME` directory, to avoid `.bashrc` and `.profile` conflicts.
123-
- A subdirectory is automatically created, named `qbt` by the use of `-v $HOME/qbt:/root`
124-
- The finale default path will be `HOME/qbt` outside the docker container and `/root/qbt` inside it.
125-
126-
:::tip
127-
build envs can be passed to the docker using `-e` . Such as `-e qbt_cross_name=aarch64`
128-
:::
129-
130-
<Tabs>
131-
<TabItem label="Debian">
132-
133-
:::tip
134-
You use `debian:bullseye` `debian:bookworm` `debian:latest`
135-
:::
136-
137-
To bootstrap the container:
138-
139-
```bash
140-
docker run -it -w /root -e "LANG=en_GB.UTF-8" -v ~/qbt:/root debian:latest /bin/bash -c 'apt update && apt install -y curl && bash'
141-
```
142-
143-
All in one command:
144-
145-
```bash
146-
docker run -it -w /root -e "LANG=en_GB.UTF-8" -v ~/qbt:/root debian:latest /bin/bash -c 'apt update && apt install -y curl && curl -sL git.io/qbstatic | bash -s all'
147-
```
148-
149-
</TabItem>
150-
151-
<TabItem label="Ubuntu">
152-
153-
:::tip
154-
You use `ubuntu:focal` `ubuntu:jammy` `ubuntu:noble` `ubuntu:latest`
155-
:::
156-
157-
To bootstrap the container:
158-
159-
```bash
160-
docker run -it -w /root -e "LANG=en_GB.UTF-8" -v ~/qbt:/root ubuntu:latest /bin/bash -c 'apt update && apt install -y curl && bash'
161-
```
162-
163-
All in one command:
164-
165-
```bash
166-
docker run -it -w /root -e "LANG=en_GB.UTF-8" -v ~/qbt:/root ubuntu:latest /bin/bash -c 'apt update && apt install -y curl && curl -sL git.io/qbstatic | bash -s all'
167-
```
168-
169-
</TabItem>
170-
171-
<TabItem label="Alpine">
172-
173-
:::tip
174-
You use `alpine:edge` `alpine:latest`
175-
:::
176-
177-
To bootstrap the container:
178-
179-
```bash
180-
docker run -it -w /root -v ~/qbt:/root alpine:edge /bin/ash -c 'apk update && apk add bash curl && bash'
85+
docker run -it -w /root -p 8080:8080 -v ~/qbt:/root alpine:edge /bin/ash -c 'apk update && apk add bash curl && bash'
18186
```
18287

183-
All in one command:
88+
If you need to download the script use this command
18489

18590
```bash
186-
docker run -it -w /root -v ~/qbt:/root alpine:edge /bin/ash -c 'apk update && apk add bash curl && curl -sL git.io/qbstatic | bash -s all'
91+
curl -sLo qbt-nox-static.sh git.io/qbstatic && chmod +x qbt-nox-static.sh
18792
```
18893

18994
</TabItem>
19095
</Tabs>
19196

192-
:::note
193-
Please see the [switches and flags summary](/build-help?id=switches-and-flags-summarised) to see what options you can pass and how to use them
194-
:::
195-
196-
You can modify the installation command by editing this part of the docker command.
197-
198-
```bash
199-
bash -s all
200-
```
201-
202-
For example, to use `ICU` using `-i`, `-c` to trigger cmake and in turn activate Qt6 and optimise for the system CPU using `-o`:
203-
204-
```bash
205-
bash -s all -i -c -o
206-
```
97+
You are now ready to run the script.

docs/src/content/docs/script-usage.mdx

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -17,39 +17,40 @@ The guide will assume you are using docker, with example commands that are eithe
1717
Don't run this directly on the host system unless you know what you are doing. It's not recommended and the build will probably fail.
1818
:::
1919

20-
2120
<Details summary="What to expect">![](/qbittorrent-nox-static/docs_images/script_usage/first-run.png)</Details>
2221

23-
⭐ When you are familiar with the script you can do anything you want with a one liner. It's pretty simple to use.
24-
25-
### Host - execute script
22+
⭐ When you are familiar with the script you can do most builds you want with a one liner. It's pretty simple to use.
2623

27-
To execute the script use this command:
24+
### Execute the script
2825

2926
```bash
30-
chmod +x ~/qbt.sh # make it executable
27+
./qbt-nox-static.sh
3128
```
3229

33-
```bash
34-
~/qbt.sh
35-
```
36-
37-
<Advanced>
38-
3930
:::note
4031
Please see the [switches and flags summary](./build-help?id=switches-and-flags-summarised) to see what options you can pass and how to use them
4132
:::
4233

43-
You can modify the installation command by editing this part of the docker command.
34+
The first thing you should do is to run the script with the `-h` flag to see the help output and the script defaults.
4435

4536
```bash
46-
bash -s all
37+
./qbt-nox-static.sh -h
4738
```
4839

49-
For example, to use `ICU` using `-i`, `-c` to trigger cmake and in turn activate Qt6 and optimise for the system CPU using `-o`:
40+
By passing `all` as the first argument, you can build everything based on the default settings.
5041

5142
```bash
52-
bash -s all -i -c -o
43+
./qbt-nox-static.sh all
5344
```
5445

55-
</Advanced>
46+
For example, to use `ICU` using `-i`, optimise for the host system CPU using `-o`, `-s` to strip the binary and build using libtorrent v1.2.19
47+
48+
```bash
49+
./qbt-nox-static.sh all -i -o -s -lt v1.2.19
50+
```
51+
52+
Same as previous command but using `env` settings
53+
54+
```bash
55+
qbt_libtorrent_tag="v1.2.19" qbt_skip_icu="yes" qbt_optimise_strip="yes" qbt_optimize="-march=native" ./qbt-nox-static.sh all
56+
```

0 commit comments

Comments
 (0)