You've already forked qBittorrent
mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-10-21 13:52:16 +02:00
Compare commits
259 Commits
release-4.
...
release-4.
Author | SHA1 | Date | |
---|---|---|---|
![]() |
332b173e08 | ||
![]() |
e921cf677a | ||
![]() |
973b5a4809 | ||
![]() |
688e11a911 | ||
![]() |
f7e6b96493 | ||
![]() |
88bf6f11c7 | ||
![]() |
90e2236990 | ||
![]() |
6ad7cadc4b | ||
![]() |
0499111156 | ||
![]() |
ae44e59c9a | ||
![]() |
1de52f9bcf | ||
![]() |
448e55031e | ||
![]() |
3b748178c2 | ||
![]() |
a4a54ce712 | ||
![]() |
d19b524d2d | ||
![]() |
1e2bf50e66 | ||
![]() |
e7f3409053 | ||
![]() |
9758633eeb | ||
![]() |
3def5e40c4 | ||
![]() |
ca923ed02c | ||
![]() |
e4c3bad93a | ||
![]() |
3b52c5ce97 | ||
![]() |
44b94803a4 | ||
![]() |
5d4644c4fc | ||
![]() |
a2ef115c66 | ||
![]() |
1356f200b8 | ||
![]() |
3c68896b1d | ||
![]() |
265da50791 | ||
![]() |
4037143f4e | ||
![]() |
8cae8ad5c5 | ||
![]() |
50bd845682 | ||
![]() |
ed5aa07526 | ||
![]() |
437b51b3a5 | ||
![]() |
c2ccc9dfa4 | ||
![]() |
b2c7d8211f | ||
![]() |
726455ac3e | ||
![]() |
ae2bb4efeb | ||
![]() |
9971329121 | ||
![]() |
d0ec1c4a86 | ||
![]() |
9c55600d81 | ||
![]() |
b45fb74e01 | ||
![]() |
f16c585a77 | ||
![]() |
9c664d04ae | ||
![]() |
3d0ca83474 | ||
![]() |
e713ffb064 | ||
![]() |
cf1e61bcf5 | ||
![]() |
42b22d6645 | ||
![]() |
2d607f8c1a | ||
![]() |
69256905c2 | ||
![]() |
305316b1fc | ||
![]() |
27e222455b | ||
![]() |
2b18318e0c | ||
![]() |
49cadce253 | ||
![]() |
f1b908b95b | ||
![]() |
4acfcef8da | ||
![]() |
69f2196a22 | ||
![]() |
b20a3c5b8e | ||
![]() |
2c5271b3b2 | ||
![]() |
7696895a88 | ||
![]() |
c1ae5d2572 | ||
![]() |
0e635c7fdd | ||
![]() |
58345e5bbf | ||
![]() |
89382d4ec2 | ||
![]() |
372f5af36b | ||
![]() |
f38736729d | ||
![]() |
bf67ef21c6 | ||
![]() |
cfd40adcb5 | ||
![]() |
8210f9841e | ||
![]() |
ae3d17ec01 | ||
![]() |
349e958be3 | ||
![]() |
42acc75394 | ||
![]() |
8b91dcedb0 | ||
![]() |
a454a0303d | ||
![]() |
789c6de2e8 | ||
![]() |
c2fb51159f | ||
![]() |
bfb0afe3cf | ||
![]() |
26a2d4f24d | ||
![]() |
f6e88c8c55 | ||
![]() |
51033c212a | ||
![]() |
16c858cf61 | ||
![]() |
0496543fce | ||
![]() |
746e8a7be1 | ||
![]() |
6d301ccf55 | ||
![]() |
d441b18da0 | ||
![]() |
13023ba70a | ||
![]() |
ecb7c02d4c | ||
![]() |
fd1ac43157 | ||
![]() |
c6d4a1f7d4 | ||
![]() |
01110690da | ||
![]() |
c998c7d38d | ||
![]() |
230f98da4a | ||
![]() |
c86db0004f | ||
![]() |
e645514c8f | ||
![]() |
f3c9dbd512 | ||
![]() |
ef650293e3 | ||
![]() |
05e217537c | ||
![]() |
13cb3b5ca1 | ||
![]() |
da0b276d5f | ||
![]() |
2d73bc9e7d | ||
![]() |
fdd54fe568 | ||
![]() |
e5ce24e55e | ||
![]() |
d90349709b | ||
![]() |
adb0fe6582 | ||
![]() |
5ed81580c9 | ||
![]() |
86d6fb86d7 | ||
![]() |
ddec247d4f | ||
![]() |
d431ecbe00 | ||
![]() |
be929ed88c | ||
![]() |
2e1f9bf8be | ||
![]() |
7fff393b0e | ||
![]() |
a669ec49ad | ||
![]() |
1880082017 | ||
![]() |
0cbd15890a | ||
![]() |
7fe7c6c277 | ||
![]() |
e4c177fec7 | ||
![]() |
77f4e6c2cf | ||
![]() |
4563b11a2e | ||
![]() |
cb477f9a29 | ||
![]() |
58ac07667e | ||
![]() |
74bf3af41c | ||
![]() |
9317071122 | ||
![]() |
dab32f2090 | ||
![]() |
dc464d4d41 | ||
![]() |
e7e3f6a9db | ||
![]() |
5a1c4e79b3 | ||
![]() |
c6d9ab6810 | ||
![]() |
d7afad835e | ||
![]() |
8608d7b9da | ||
![]() |
72970602af | ||
![]() |
86579ca87d | ||
![]() |
e55582124c | ||
![]() |
bd8b06c607 | ||
![]() |
230fedf069 | ||
![]() |
7bea10f507 | ||
![]() |
7cde969b90 | ||
![]() |
a3b8f6880b | ||
![]() |
ad79fc8d43 | ||
![]() |
fb4bf94a56 | ||
![]() |
1c184944fd | ||
![]() |
ec420f6617 | ||
![]() |
d908227619 | ||
![]() |
ac8167410b | ||
![]() |
26ce187b30 | ||
![]() |
2c4e04e537 | ||
![]() |
b418f65c2f | ||
![]() |
dd3a8d5d56 | ||
![]() |
49e54a55df | ||
![]() |
8cd0a7ae85 | ||
![]() |
442f0df613 | ||
![]() |
f9ee5bdb59 | ||
![]() |
b9602cc6ab | ||
![]() |
abb854a1e6 | ||
![]() |
4ee17a73d0 | ||
![]() |
faf6e82274 | ||
![]() |
c08ec1ac5e | ||
![]() |
cd0b6d9a43 | ||
![]() |
b8f1142abe | ||
![]() |
78859415d6 | ||
![]() |
ef92c17192 | ||
![]() |
22f3abc4b5 | ||
![]() |
a56e6294c1 | ||
![]() |
77909e0093 | ||
![]() |
2c2bb14b2a | ||
![]() |
73c8b77464 | ||
![]() |
042238db87 | ||
![]() |
6e267f8e81 | ||
![]() |
fdc64d9b38 | ||
![]() |
0b42425db5 | ||
![]() |
e5d7738127 | ||
![]() |
422489e2a1 | ||
![]() |
7de983b4e5 | ||
![]() |
e4e55d2a80 | ||
![]() |
926012ce71 | ||
![]() |
487eb554c9 | ||
![]() |
5a96e1fc7a | ||
![]() |
2fe698ee60 | ||
![]() |
177ac32a5e | ||
![]() |
5f34d1555b | ||
![]() |
7cfe68f46c | ||
![]() |
f94f4d2391 | ||
![]() |
73b18d7ef3 | ||
![]() |
817e9c4747 | ||
![]() |
28844eff44 | ||
![]() |
389664213b | ||
![]() |
953b6fd6f8 | ||
![]() |
9b4f3fcbf8 | ||
![]() |
80743180be | ||
![]() |
b2847b2381 | ||
![]() |
eb657ec032 | ||
![]() |
fc2be601df | ||
![]() |
5786c7ff11 | ||
![]() |
4a183dd968 | ||
![]() |
7c10dba10c | ||
![]() |
894446d308 | ||
![]() |
47e9c5ac08 | ||
![]() |
7f47ac11f1 | ||
![]() |
67b17891fa | ||
![]() |
dd5b7ba05b | ||
![]() |
61aa4d9f1c | ||
![]() |
6e924b668e | ||
![]() |
618ce33fa0 | ||
![]() |
ac413c76b9 | ||
![]() |
f266184514 | ||
![]() |
8c48bf4a70 | ||
![]() |
8bee69c9fc | ||
![]() |
5876886345 | ||
![]() |
0392bfce3c | ||
![]() |
c66cf43d6a | ||
![]() |
7515afc058 | ||
![]() |
5fcfcc901e | ||
![]() |
1728c16580 | ||
![]() |
d3f46452a9 | ||
![]() |
7092a98c93 | ||
![]() |
8e19f66b4f | ||
![]() |
b6ab2abf3f | ||
![]() |
3edaaa30c9 | ||
![]() |
38efff461e | ||
![]() |
2179148b8d | ||
![]() |
f92c4c0a40 | ||
![]() |
1e7f792dbb | ||
![]() |
1d4af505c2 | ||
![]() |
baa609b713 | ||
![]() |
bc20cf9ad7 | ||
![]() |
7d3ecfa9a6 | ||
![]() |
88a90ed7d4 | ||
![]() |
3e540b3f51 | ||
![]() |
87e1661bd5 | ||
![]() |
f82a4051af | ||
![]() |
5730e917a1 | ||
![]() |
5e7d7c2ef0 | ||
![]() |
2b6e1953d7 | ||
![]() |
6fc50f4169 | ||
![]() |
40d7a53695 | ||
![]() |
7e89893454 | ||
![]() |
d83f09e731 | ||
![]() |
36575b225d | ||
![]() |
fe0ea843e0 | ||
![]() |
a8911f8136 | ||
![]() |
c5ef1a0207 | ||
![]() |
102d628c0a | ||
![]() |
6ea3acdaea | ||
![]() |
621578353d | ||
![]() |
ca776c3036 | ||
![]() |
9d27eb3b57 | ||
![]() |
9171dffe97 | ||
![]() |
f919d4f5bf | ||
![]() |
59afc7c520 | ||
![]() |
f02b65b866 | ||
![]() |
891c471160 | ||
![]() |
f49f5ba9a1 | ||
![]() |
539b3b7c3e | ||
![]() |
83ce285138 | ||
![]() |
260e48b705 | ||
![]() |
f09ee1b398 | ||
![]() |
e3c2266611 | ||
![]() |
53fb6220c5 | ||
![]() |
34e6b73374 | ||
![]() |
b925cffddb | ||
![]() |
3595626eff |
1
.github/FUNDING.yml
vendored
Normal file
1
.github/FUNDING.yml
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
custom: "https://www.qbittorrent.org/donate.php"
|
1
.github/ISSUE_TEMPLATE.md
vendored
1
.github/ISSUE_TEMPLATE.md
vendored
@@ -17,4 +17,3 @@
|
|||||||
|
|
||||||
### Extra info(if any)
|
### Extra info(if any)
|
||||||
(type here)
|
(type here)
|
||||||
|
|
||||||
|
58
.github/workflows/ci.yaml
vendored
58
.github/workflows/ci.yaml
vendored
@@ -8,16 +8,13 @@ on:
|
|||||||
push:
|
push:
|
||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
pull_request:
|
pull_request:
|
||||||
types: [edited, opened, reopened, synchronize]
|
|
||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
|
|
||||||
env:
|
env:
|
||||||
# Qt: 5.15.0
|
VCPKG_COMMIT: e4ce66eecfd3e5cca5eac06c971921bf8e37cf88
|
||||||
# libtorrent: RC_1_2 HEAD, 1.2.10
|
|
||||||
VCPKG_COMMIT: 32eccc18191fbb57b159784a1724d2d00613ae82
|
|
||||||
VCPKG_DEST_MACOS: /Users/runner/qbt_tools/vcpkg
|
VCPKG_DEST_MACOS: /Users/runner/qbt_tools/vcpkg
|
||||||
VCPKG_DEST_WIN: C:\qbt_tools\vcpkg
|
VCPKG_DEST_WIN: C:\qbt_tools\vcpkg
|
||||||
UBUNTU_LIBTORRENT_VERSION: libtorrent-1.2.10
|
LIBTORRENT_VERSION_TAG: v1.2.12
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
@@ -26,7 +23,7 @@ jobs:
|
|||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
os: [ubuntu-20.04, ubuntu-18.04]
|
os: [ubuntu-20.04]
|
||||||
qbt_gui: ["GUI=ON", "GUI=OFF"]
|
qbt_gui: ["GUI=ON", "GUI=OFF"]
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
|
|
||||||
@@ -38,7 +35,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: checkout repository
|
- name: checkout repository
|
||||||
uses: actions/checkout@v2.3.2
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: install all build dependencies except libtorrent from Ubuntu repos
|
- name: install all build dependencies except libtorrent from Ubuntu repos
|
||||||
run: |
|
run: |
|
||||||
@@ -52,7 +49,7 @@ jobs:
|
|||||||
- name: install libtorrent from source
|
- name: install libtorrent from source
|
||||||
run: |
|
run: |
|
||||||
git clone https://github.com/arvidn/libtorrent && cd libtorrent
|
git clone https://github.com/arvidn/libtorrent && cd libtorrent
|
||||||
git checkout ${{ env.UBUNTU_LIBTORRENT_VERSION }}
|
git checkout ${{ env.LIBTORRENT_VERSION_TAG }}
|
||||||
cmake -B cmake-build-dir -G "Ninja" \
|
cmake -B cmake-build-dir -G "Ninja" \
|
||||||
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||||
-Ddeprecated-functions=OFF \
|
-Ddeprecated-functions=OFF \
|
||||||
@@ -70,9 +67,9 @@ jobs:
|
|||||||
cmake --build build
|
cmake --build build
|
||||||
|
|
||||||
- name: upload artifact as zip
|
- name: upload artifact as zip
|
||||||
uses: actions/upload-artifact@v2.1.3
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: qBittorrent-CI-Ubuntu_${{ matrix.os }}-${{ matrix.qbt_gui }}
|
name: qBittorrent-CI_${{ matrix.os }}-x64_${{ matrix.qbt_gui }}
|
||||||
path: |
|
path: |
|
||||||
build/compile_commands.json
|
build/compile_commands.json
|
||||||
build/target_graph.dot
|
build/target_graph.dot
|
||||||
@@ -92,7 +89,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: checkout repository
|
- name: checkout repository
|
||||||
uses: actions/checkout@v2.3.2
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
# - ninja is needed for building qBittorrent (because it's preferrable, not a hard requirement)
|
# - ninja is needed for building qBittorrent (because it's preferrable, not a hard requirement)
|
||||||
- name: install additional required packages with chocolatey
|
- name: install additional required packages with chocolatey
|
||||||
@@ -100,7 +97,7 @@ jobs:
|
|||||||
choco install ninja
|
choco install ninja
|
||||||
|
|
||||||
- name: setup vcpkg (cached, if possible)
|
- name: setup vcpkg (cached, if possible)
|
||||||
uses: lukka/run-vcpkg@v3.3
|
uses: lukka/run-vcpkg@v4
|
||||||
with:
|
with:
|
||||||
vcpkgDirectory: ${{ env.VCPKG_DEST_WIN }}
|
vcpkgDirectory: ${{ env.VCPKG_DEST_WIN }}
|
||||||
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT }}
|
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT }}
|
||||||
@@ -125,16 +122,21 @@ jobs:
|
|||||||
"qt5-svg:x64-windows-static-release",
|
"qt5-svg:x64-windows-static-release",
|
||||||
"qt5-tools:x64-windows-static-release",
|
"qt5-tools:x64-windows-static-release",
|
||||||
"qt5-winextras:x64-windows-static-release"
|
"qt5-winextras:x64-windows-static-release"
|
||||||
|
${{ env.RUNVCPKG_VCPKG_ROOT }}/vcpkg.exe upgrade `
|
||||||
|
--overlay-triplets=${{ github.workspace }}/triplets_overlay `
|
||||||
|
--overlay-ports=${{ github.workspace }}/vcpkg `
|
||||||
|
--no-dry-run
|
||||||
foreach($package in $packages)
|
foreach($package in $packages)
|
||||||
{
|
{
|
||||||
${{ env.RUNVCPKG_VCPKG_ROOT }}/vcpkg.exe install $package `
|
${{ env.RUNVCPKG_VCPKG_ROOT }}/vcpkg.exe install $package `
|
||||||
--overlay-triplets=${{ github.workspace }}/triplets_overlay `
|
--overlay-triplets=${{ github.workspace }}/triplets_overlay `
|
||||||
|
--overlay-ports=${{ github.workspace }}/vcpkg `
|
||||||
--clean-after-build
|
--clean-after-build
|
||||||
}
|
}
|
||||||
|
|
||||||
# NOTE: this is necessary to correctly find and use cl.exe with the Ninja generator for now
|
# NOTE: this is necessary to correctly find and use cl.exe with the Ninja generator for now
|
||||||
- name: setup devcmd
|
- name: setup devcmd
|
||||||
uses: ilammy/msvc-dev-cmd@v1.3.0
|
uses: ilammy/msvc-dev-cmd@v1
|
||||||
|
|
||||||
- name: build qBittorrent
|
- name: build qBittorrent
|
||||||
shell: cmd
|
shell: cmd
|
||||||
@@ -149,9 +151,9 @@ jobs:
|
|||||||
cmake --build build
|
cmake --build build
|
||||||
|
|
||||||
- name: upload artifact as zip
|
- name: upload artifact as zip
|
||||||
uses: actions/upload-artifact@v2.1.3
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: qBittorrent-CI-Windows_x64-static-release
|
name: qBittorrent-CI_Windows-x64
|
||||||
path: |
|
path: |
|
||||||
build/compile_commands.json
|
build/compile_commands.json
|
||||||
build/target_graph.dot
|
build/target_graph.dot
|
||||||
@@ -175,17 +177,17 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: checkout repository
|
- name: checkout repository
|
||||||
uses: actions/checkout@v2.3.2
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
# - ninja is needed for building qBittorrent (because it's preferrable, not a hard requirement)
|
# - ninja is needed for building qBittorrent (because it's preferrable, not a hard requirement)
|
||||||
# - pkg-config is needed for some vcpkg installations
|
# - automake is needed for the installation the vcpkg installation of fontconfig, a dependency of qt5-base
|
||||||
- name: install additional required packages with homebrew
|
- name: install additional required packages with homebrew
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
brew install ninja pkg-config
|
brew install automake ninja
|
||||||
|
|
||||||
- name: setup vcpkg (cached, if possible)
|
- name: setup vcpkg (cached, if possible)
|
||||||
uses: lukka/run-vcpkg@v3.3
|
uses: lukka/run-vcpkg@v4
|
||||||
with:
|
with:
|
||||||
vcpkgDirectory: ${{ env.VCPKG_DEST_MACOS }}
|
vcpkgDirectory: ${{ env.VCPKG_DEST_MACOS }}
|
||||||
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT }}
|
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT }}
|
||||||
@@ -197,14 +199,7 @@ jobs:
|
|||||||
Copy-Item ${{ env.RUNVCPKG_VCPKG_ROOT }}/triplets/x64-osx.cmake `
|
Copy-Item ${{ env.RUNVCPKG_VCPKG_ROOT }}/triplets/x64-osx.cmake `
|
||||||
${{ github.workspace }}/triplets_overlay/x64-osx-release.cmake
|
${{ github.workspace }}/triplets_overlay/x64-osx-release.cmake
|
||||||
Add-Content ${{ github.workspace }}/triplets_overlay/x64-osx-release.cmake `
|
Add-Content ${{ github.workspace }}/triplets_overlay/x64-osx-release.cmake `
|
||||||
-Value "set(VCPKG_BUILD_TYPE release)"
|
-Value "set(VCPKG_BUILD_TYPE release)","set(VCPKG_OSX_DEPLOYMENT_TARGET 10.15)"
|
||||||
|
|
||||||
# NOTE: Avoids a libtorrent ABI issue. See https://github.com/arvidn/libtorrent/issues/4965
|
|
||||||
- name: force AppleClang to compile libtorrent with C++14
|
|
||||||
run: |
|
|
||||||
(Get-Content -path ${{ env.RUNVCPKG_VCPKG_ROOT }}/ports/libtorrent/portfile.cmake).Replace( `
|
|
||||||
'${FEATURE_OPTIONS}', '${FEATURE_OPTIONS} -DCMAKE_CXX_STANDARD=14') `
|
|
||||||
| Set-Content -Path ${{ env.RUNVCPKG_VCPKG_ROOT }}/ports/libtorrent/portfile.cmake
|
|
||||||
|
|
||||||
- name: install dependencies via vcpkg
|
- name: install dependencies via vcpkg
|
||||||
run: |
|
run: |
|
||||||
@@ -215,10 +210,15 @@ jobs:
|
|||||||
"qt5-svg:x64-osx-release",
|
"qt5-svg:x64-osx-release",
|
||||||
"qt5-tools:x64-osx-release",
|
"qt5-tools:x64-osx-release",
|
||||||
"qt5-macextras:x64-osx-release"
|
"qt5-macextras:x64-osx-release"
|
||||||
|
${{ env.RUNVCPKG_VCPKG_ROOT }}/vcpkg upgrade `
|
||||||
|
--overlay-triplets=${{ github.workspace }}/triplets_overlay `
|
||||||
|
--overlay-ports=${{ github.workspace }}/vcpkg `
|
||||||
|
--no-dry-run
|
||||||
foreach($package in $packages)
|
foreach($package in $packages)
|
||||||
{
|
{
|
||||||
${{ env.RUNVCPKG_VCPKG_ROOT }}/vcpkg install $package `
|
${{ env.RUNVCPKG_VCPKG_ROOT }}/vcpkg install $package `
|
||||||
--overlay-triplets=${{ github.workspace }}/triplets_overlay `
|
--overlay-triplets=${{ github.workspace }}/triplets_overlay `
|
||||||
|
--overlay-ports=${{ github.workspace }}/vcpkg `
|
||||||
--clean-after-build
|
--clean-after-build
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -234,9 +234,9 @@ jobs:
|
|||||||
cmake --build build
|
cmake --build build
|
||||||
|
|
||||||
- name: upload artifact as zip
|
- name: upload artifact as zip
|
||||||
uses: actions/upload-artifact@v2.1.3
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: qBittorrent-CI-macOS_x64-static-release_${{ matrix.qbt_gui }}
|
name: qBittorrent-CI_macOS_${{ matrix.qbt_gui }}
|
||||||
path: |
|
path: |
|
||||||
build/compile_commands.json
|
build/compile_commands.json
|
||||||
build/target_graph.dot
|
build/target_graph.dot
|
||||||
|
85
.github/workflows/file_health.sh
vendored
Executable file
85
.github/workflows/file_health.sh
vendored
Executable file
@@ -0,0 +1,85 @@
|
|||||||
|
#!/usr/bin/env zsh
|
||||||
|
|
||||||
|
set -o nounset
|
||||||
|
|
||||||
|
# Assumption: file names don't contain `:` (for the `cut` invocation).
|
||||||
|
# Safe to assume, as such a character in a filename would cause trouble on Windows, a platform we support
|
||||||
|
|
||||||
|
# any regression turn this non-zero
|
||||||
|
regressions=0
|
||||||
|
|
||||||
|
# exclusions (these are just grep extended regular expressions to match against paths relative to the root of the repository)
|
||||||
|
exclusions_nonutf8='(.*(7z|gif|ic(ns|o)|png|qm|zip))'
|
||||||
|
exclusions_bom='src/base/unicodestrings.h'
|
||||||
|
exclusions_tw='(*.ts)|src/webui/www/private/scripts/lib/mootools-1.2-more.js'
|
||||||
|
exclusions_trailing_newline='configure'
|
||||||
|
exclusions_no_lf='(*.ts)|(.*svg)|compile_commands.json|src/webui/www/private/scripts/lib/mootools-1.2-(core-yc.js|more.js)'
|
||||||
|
|
||||||
|
echo -e "\n*** Detect files not encoded in UTF-8 ***\n"
|
||||||
|
|
||||||
|
find . -path ./build -prune -false -o -path ./.git -prune -false -o -type f -exec file --mime {} \; | sort \
|
||||||
|
| grep -v -e "charset=us-ascii" -e "charset=utf-8" | cut -d ":" -f 1 \
|
||||||
|
| grep -E -v -e "${exclusions_nonutf8}" \
|
||||||
|
| tee >(echo -e "--> Files not encoded in UTF-8: found" "$(wc -l < /dev/stdin)" "regression(s)\n") \
|
||||||
|
| xargs -I my_input -0 bash -c 'echo "my_input"; test "$(echo -n "my_input" | wc -l)" -eq 0'
|
||||||
|
regressions=$((regressions+$?))
|
||||||
|
|
||||||
|
echo -e "\n*** Detect files encoded in UTF-8 with BOM ***\n"
|
||||||
|
|
||||||
|
grep --exclude-dir={.git,build} -rIl $'\xEF\xBB\xBF' | sort \
|
||||||
|
| grep -E -v -e "${exclusions_bom}" \
|
||||||
|
| tee >(echo -e "--> Files encoded in UTF-8 with BOM: found" "$(wc -l < /dev/stdin)" "regression(s)\n") \
|
||||||
|
| xargs -I my_input -0 bash -c 'echo "my_input"; test "$(echo -n "my_input" | wc -l)" -eq 0'
|
||||||
|
regressions=$((regressions+$?))
|
||||||
|
|
||||||
|
echo -e "\n*** Detect usage of CR byte ***\n"
|
||||||
|
|
||||||
|
grep --exclude-dir={.git,build} -rIlU $'\x0D' | sort \
|
||||||
|
| tee >(echo -e "--> Usage of CR byte: found" "$(wc -l < /dev/stdin)" "regression(s)\n") \
|
||||||
|
| xargs -I my_input -0 bash -c 'echo "my_input"; test "$(echo -n "my_input" | wc -l)" -eq 0'
|
||||||
|
regressions=$((regressions+$?))
|
||||||
|
|
||||||
|
echo -e "\n*** Detect trailing whitespace in lines ***\n"
|
||||||
|
|
||||||
|
grep --exclude-dir={.git,build} -rIl "[[:blank:]]$" | sort \
|
||||||
|
| grep -E -v -e "${exclusions_tw}" \
|
||||||
|
| tee >(echo -e "--> Trailing whitespace in lines: found" "$(wc -l < /dev/stdin)" "regression(s)\n") \
|
||||||
|
| xargs -I my_input -0 bash -c 'echo "my_input"; test "$(echo -n "my_input" | wc -l)" -eq 0';
|
||||||
|
regressions=$((regressions+$?))
|
||||||
|
|
||||||
|
echo -e "\n*** Detect too many trailing newlines ***\n"
|
||||||
|
|
||||||
|
find . -path ./build -prune -false -o -path ./.git -prune -false -o -type f -exec file --mime {} \; | sort \
|
||||||
|
| grep -e "charset=us-ascii" -e "charset=utf-8" | cut -d ":" -f 1 \
|
||||||
|
| grep -E -v -e "${exclusions_trailing_newline}" \
|
||||||
|
| xargs -L1 -I my_input bash -c 'test "$(tail -q -c2 "my_input" | hexdump -C | grep "0a 0a")" && echo "my_input"' \
|
||||||
|
| tee >(echo -e "--> Too many trailing newlines: found" "$(wc -l < /dev/stdin)" "regression(s)\n") \
|
||||||
|
| xargs -I my_input -0 bash -c 'echo "my_input"; test "$(echo -n "my_input" | wc -l)" -eq 0'
|
||||||
|
regressions=$((regressions+$?))
|
||||||
|
|
||||||
|
echo -e "\n*** Detect no trailing newline ***\n"
|
||||||
|
|
||||||
|
find . -path ./build -prune -false -o -path ./.git -prune -false -o -type f -exec file --mime {} \; | sort \
|
||||||
|
| grep -e "charset=us-ascii" -e "charset=utf-8" | cut -d ":" -f 1 \
|
||||||
|
| grep -E -v -e "${exclusions_no_lf}" \
|
||||||
|
| xargs -L1 -I my_input bash -c 'test "$(tail -q -c1 "my_input" | hexdump -C | grep "0a")" || echo "my_input"' \
|
||||||
|
| tee >(echo -e "--> No trailing newline: found" "$(wc -l < /dev/stdin)" "regression(s)\n") \
|
||||||
|
| xargs -I my_input -0 bash -c 'echo "my_input"; test "$(echo -n "my_input" | wc -l)" -eq 0'
|
||||||
|
regressions=$((regressions+$?))
|
||||||
|
|
||||||
|
echo -e "\n*** Detect translation closing tag in new line ***\n"
|
||||||
|
|
||||||
|
grep --exclude-dir={.git,build} -nri "^</translation>" | sort \
|
||||||
|
| cut -d ":" -f 1,2 \
|
||||||
|
| tee >(echo -e "--> Translation closing tag in new line: found" "$(wc -l < /dev/stdin)" "regression(s)\n") \
|
||||||
|
| xargs -I my_input -0 bash -c 'echo "my_input"; test "$(echo -n "my_input" | wc -l)" -eq 0'
|
||||||
|
regressions=$((regressions+$?))
|
||||||
|
|
||||||
|
if [ "$regressions" -ne 0 ]; then
|
||||||
|
regressions=1
|
||||||
|
echo "\nFile health regressions found. Please fix them (or add them as exclusions)."
|
||||||
|
else
|
||||||
|
echo "All OK, no file health regressions found."
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit $regressions;
|
22
.github/workflows/file_health.yaml
vendored
Normal file
22
.github/workflows/file_health.yaml
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
name: GitHub Actions file health check
|
||||||
|
|
||||||
|
on: [pull_request, push]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
check_file_health:
|
||||||
|
name: Check file health
|
||||||
|
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: checkout repository
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: install zsh
|
||||||
|
run: |
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install zsh
|
||||||
|
|
||||||
|
- name: run check file health script
|
||||||
|
run: |
|
||||||
|
./.github/workflows/file_health.sh
|
1
.gitignore
vendored
1
.gitignore
vendored
@@ -4,6 +4,7 @@ src/qbittorrent
|
|||||||
src/qbittorrent-nox
|
src/qbittorrent-nox
|
||||||
src/release
|
src/release
|
||||||
src/debug
|
src/debug
|
||||||
|
src/base/version.h
|
||||||
CMakeLists.txt.user*
|
CMakeLists.txt.user*
|
||||||
qbittorrent.pro.user*
|
qbittorrent.pro.user*
|
||||||
conf.pri
|
conf.pri
|
||||||
|
59
.travis.yml
59
.travis.yml
@@ -4,7 +4,8 @@ os:
|
|||||||
- linux
|
- linux
|
||||||
- osx
|
- osx
|
||||||
|
|
||||||
dist: bionic
|
dist: focal
|
||||||
|
osx_image: xcode12.2
|
||||||
|
|
||||||
env:
|
env:
|
||||||
matrix:
|
matrix:
|
||||||
@@ -16,15 +17,10 @@ env:
|
|||||||
- secure: "OI9CUjj4lTb0HwwIZU5PbECU3hLlAL6KC8KsbwohG8/O3j5fLcnmDsK4Ad9us5cC39sS11Jcd1kDP2qRcCuST/glVNhLkcjKkiQerOfd5nQ/qL4JYfz/1mfP5mdpz9jHKzpLUIG+TXkbSTjP6VVmsb5KPT+3pKEdRFZB+Pu9+J8="
|
- secure: "OI9CUjj4lTb0HwwIZU5PbECU3hLlAL6KC8KsbwohG8/O3j5fLcnmDsK4Ad9us5cC39sS11Jcd1kDP2qRcCuST/glVNhLkcjKkiQerOfd5nQ/qL4JYfz/1mfP5mdpz9jHKzpLUIG+TXkbSTjP6VVmsb5KPT+3pKEdRFZB+Pu9+J8="
|
||||||
- coverity_branch: coverity_scan
|
- coverity_branch: coverity_scan
|
||||||
|
|
||||||
matrix:
|
jobs:
|
||||||
allow_failures:
|
include:
|
||||||
- env: libt_branch=RC_1_2 gui=true build_system=cmake
|
- env: libt_branch=RC_2_0 gui=true build_system=qmake
|
||||||
- env: libt_branch=RC_1_2 gui=false build_system=cmake
|
os: linux
|
||||||
|
|
||||||
branches:
|
|
||||||
except:
|
|
||||||
- search_encoding_windows
|
|
||||||
- v2_9_x
|
|
||||||
|
|
||||||
notifications:
|
notifications:
|
||||||
email:
|
email:
|
||||||
@@ -49,8 +45,7 @@ addons:
|
|||||||
apt:
|
apt:
|
||||||
sources:
|
sources:
|
||||||
# sources list: https://github.com/travis-ci/apt-source-safelist/blob/master/ubuntu.json
|
# sources list: https://github.com/travis-ci/apt-source-safelist/blob/master/ubuntu.json
|
||||||
- sourceline: 'ppa:qbittorrent-team/qbt-libtorrent-travisci'
|
- sourceline: 'deb https://apt.kitware.com/ubuntu/ focal main'
|
||||||
- sourceline: 'deb https://apt.kitware.com/ubuntu/ bionic main'
|
|
||||||
key_url: 'https://apt.kitware.com/keys/kitware-archive-latest.asc'
|
key_url: 'https://apt.kitware.com/keys/kitware-archive-latest.asc'
|
||||||
packages:
|
packages:
|
||||||
# packages list: https://github.com/travis-ci/apt-package-safelist/blob/master/ubuntu-trusty
|
# packages list: https://github.com/travis-ci/apt-package-safelist/blob/master/ubuntu-trusty
|
||||||
@@ -79,6 +74,8 @@ before_install:
|
|||||||
# TravisCI installs its own cmake to another location which ovverides other installations
|
# TravisCI installs its own cmake to another location which ovverides other installations
|
||||||
# if they don't call the new binary directly
|
# if they don't call the new binary directly
|
||||||
alias cmake="/usr/bin/cmake"
|
alias cmake="/usr/bin/cmake"
|
||||||
|
|
||||||
|
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib"
|
||||||
fi
|
fi
|
||||||
- |
|
- |
|
||||||
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
||||||
@@ -109,8 +106,8 @@ install:
|
|||||||
|
|
||||||
brew update > /dev/null
|
brew update > /dev/null
|
||||||
brew upgrade cmake
|
brew upgrade cmake
|
||||||
brew install ccache colormake boost openssl qt zlib
|
brew install ccache colormake boost openssl qt@5 zlib
|
||||||
brew link --force qt zlib
|
brew link --force qt@5 zlib
|
||||||
|
|
||||||
if [ "$build_system" = "cmake" ]; then
|
if [ "$build_system" = "cmake" ]; then
|
||||||
sudo ln -s /usr/local/opt/qt/mkspecs /usr/local/mkspecs
|
sudo ln -s /usr/local/opt/qt/mkspecs /usr/local/mkspecs
|
||||||
@@ -124,20 +121,34 @@ install:
|
|||||||
ccache -V && ccache --show-stats && ccache --zero-stats
|
ccache -V && ccache --show-stats && ccache --zero-stats
|
||||||
fi
|
fi
|
||||||
- |
|
- |
|
||||||
if [ "$libt_branch" = "RC_1_2" ] && [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
if [ "$libt_branch" = "RC_1_2" ]; then
|
||||||
# Will install latest 1.2.x daily build from the PPA
|
|
||||||
sudo apt-get -y install libtorrent-rasterbar-dev
|
|
||||||
fi
|
|
||||||
- |
|
|
||||||
if [ "$libt_branch" = "RC_1_2" ] && [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
|
||||||
# building libtorrent manually should be faster than using the official bottle
|
|
||||||
# because the bottle will also pull in a lot of updated dependencies and prolong the overall time
|
|
||||||
pushd "$HOME"
|
pushd "$HOME"
|
||||||
git clone --single-branch --branch RC_1_2 https://github.com/arvidn/libtorrent.git
|
git clone --single-branch --branch RC_1_2 https://github.com/arvidn/libtorrent.git
|
||||||
cd libtorrent
|
cd libtorrent
|
||||||
git checkout tags/v1.2.10
|
git checkout tags/v1.2.12
|
||||||
|
|
||||||
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=14 -Ddeprecated-functions=OFF -DOPENSSL_ROOT_DIR="$openssl_root_path" ./
|
cmake \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_CXX_STANDARD=17 \
|
||||||
|
-Ddeprecated-functions=OFF \
|
||||||
|
-DOPENSSL_ROOT_DIR="$openssl_root_path" \
|
||||||
|
./
|
||||||
|
make
|
||||||
|
sudo make install
|
||||||
|
popd
|
||||||
|
elif [ "$libt_branch" = "RC_2_0" ]; then
|
||||||
|
pushd "$HOME"
|
||||||
|
git clone --single-branch --branch RC_2_0 https://github.com/arvidn/libtorrent.git
|
||||||
|
cd libtorrent
|
||||||
|
git checkout tags/v2.0.2
|
||||||
|
git submodule update --init --recursive
|
||||||
|
|
||||||
|
cmake \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_CXX_STANDARD=17 \
|
||||||
|
-Ddeprecated-functions=OFF \
|
||||||
|
-DOPENSSL_ROOT_DIR="$openssl_root_path" \
|
||||||
|
./
|
||||||
make
|
make
|
||||||
sudo make install
|
sudo make install
|
||||||
popd
|
popd
|
||||||
|
4
AUTHORS
4
AUTHORS
@@ -87,7 +87,7 @@ Images Authors:
|
|||||||
|
|
||||||
* file: src/icons/oxygen/checked.png
|
* file: src/icons/oxygen/checked.png
|
||||||
copyright: Victor Buinsky <allok.victor@gmail.com>
|
copyright: Victor Buinsky <allok.victor@gmail.com>
|
||||||
|
|
||||||
* file: src/icons/skin/ratio.png
|
* file: src/icons/skin/ratio.png
|
||||||
copyright: Fatcow Web Hosting
|
copyright: Fatcow Web Hosting
|
||||||
license: Creative Commons Attribution 3.0 License
|
license: Creative Commons Attribution 3.0 License
|
||||||
@@ -119,7 +119,7 @@ Translations authors:
|
|||||||
- German: Niels Hoffmann (zentralmaschine@users.sourceforge.net)
|
- German: Niels Hoffmann (zentralmaschine@users.sourceforge.net)
|
||||||
- Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net), Stephanos Antaris (santaris@csd.auth.gr), sledgehammer999(hammered999@gmail.com) and Γιάννης Ανθυμίδης Evropi(Transifex)
|
- Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net), Stephanos Antaris (santaris@csd.auth.gr), sledgehammer999(hammered999@gmail.com) and Γιάννης Ανθυμίδης Evropi(Transifex)
|
||||||
- Hebrew: David Deutsch (d.deffo@gmail.com)
|
- Hebrew: David Deutsch (d.deffo@gmail.com)
|
||||||
- Hungarian: Majoros Péter (majoros.j.p@t-online.hu)
|
- Hungarian: Majoros Péter
|
||||||
- Italian: bovirus (bovirus@live.it) and Matteo Sechi (bu17714@gmail.com)
|
- Italian: bovirus (bovirus@live.it) and Matteo Sechi (bu17714@gmail.com)
|
||||||
- Japanese: Masato Hashimoto (cabezon.hashimoto@gmail.com)
|
- Japanese: Masato Hashimoto (cabezon.hashimoto@gmail.com)
|
||||||
- Korean: Jin Woo Sin (jin828sin@users.sourceforge.net)
|
- Korean: Jin Woo Sin (jin828sin@users.sourceforge.net)
|
||||||
|
@@ -3,7 +3,6 @@ cmake_minimum_required(VERSION 3.16 FATAL_ERROR) # Policies <= CMP0097 default t
|
|||||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules)
|
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules)
|
||||||
|
|
||||||
project(qBittorrent
|
project(qBittorrent
|
||||||
VERSION 4.3.0.0
|
|
||||||
DESCRIPTION "The qBittorrent BitTorrent client"
|
DESCRIPTION "The qBittorrent BitTorrent client"
|
||||||
HOMEPAGE_URL "https://www.qbittorrent.org/"
|
HOMEPAGE_URL "https://www.qbittorrent.org/"
|
||||||
LANGUAGES CXX
|
LANGUAGES CXX
|
||||||
@@ -11,14 +10,15 @@ project(qBittorrent
|
|||||||
|
|
||||||
# use CONFIG mode first in find_package
|
# use CONFIG mode first in find_package
|
||||||
set(CMAKE_FIND_PACKAGE_PREFER_CONFIG ON)
|
set(CMAKE_FIND_PACKAGE_PREFER_CONFIG ON)
|
||||||
# version requirements
|
# version requirements - older vesions may work, but you are on your own
|
||||||
set(requiredBoostVersion 1.40)
|
set(minBoostVersion 1.65)
|
||||||
set(requiredQtVersion 5.9.0)
|
set(minQtVersion 5.12)
|
||||||
set(requiredOpenSSLVersion 1.0)
|
set(minOpenSSLVersion 1.1.1)
|
||||||
set(requiredLibtorrentVersion 1.2.0)
|
set(minLibtorrentVersion 1.2.12)
|
||||||
set(requiredZlibVersion 1.2.5.2)
|
set(minZlibVersion 1.2.11)
|
||||||
|
|
||||||
# features (some are platform-specific)
|
# features (some are platform-specific)
|
||||||
|
include(CheckCXXSourceCompiles) # TODO: migrate to CheckSourceCompiles in CMake >= 3.19
|
||||||
include(FeatureSummary)
|
include(FeatureSummary)
|
||||||
include(FeatureOptionsSetup)
|
include(FeatureOptionsSetup)
|
||||||
feature_option(STACKTRACE "Enable stacktraces" ON)
|
feature_option(STACKTRACE "Enable stacktraces" ON)
|
||||||
@@ -34,12 +34,22 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
|||||||
"Install systemd service file to a directory manually overridable with Systemd_SERVICES_INSTALL_DIR"
|
"Install systemd service file to a directory manually overridable with Systemd_SERVICES_INSTALL_DIR"
|
||||||
OFF "NOT GUI" OFF
|
OFF "NOT GUI" OFF
|
||||||
)
|
)
|
||||||
|
if (STACKTRACE)
|
||||||
|
check_cxx_source_compiles(
|
||||||
|
"#include <execinfo.h>
|
||||||
|
int main(){return 0;}"
|
||||||
|
QBITTORRENT_HAS_EXECINFO_H
|
||||||
|
)
|
||||||
|
if (NOT QBITTORRENT_HAS_EXECINFO_H)
|
||||||
|
message(FATAL_ERROR "execinfo.h header file not found.\n"
|
||||||
|
"Please either disable the STACKTRACE feature or use a libc that has this header file, such as glibc (GNU libc)."
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
elseif (MSVC)
|
elseif (MSVC)
|
||||||
feature_option(MSVC_RUNTIME_DYNAMIC "Use MSVC dynamic runtime library (-MD) instead of static (-MT)" ON)
|
feature_option(MSVC_RUNTIME_DYNAMIC "Use MSVC dynamic runtime library (-MD) instead of static (-MT)" ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(QBT_VER_STATUS "alpha1" CACHE STRING "Project status version. Should be empty for release builds.")
|
|
||||||
|
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
add_subdirectory(src)
|
add_subdirectory(src)
|
||||||
add_subdirectory(dist)
|
add_subdirectory(dist)
|
||||||
@@ -49,3 +59,6 @@ if (VERBOSE_CONFIGURE)
|
|||||||
else()
|
else()
|
||||||
feature_summary(WHAT ENABLED_FEATURES DISABLED_FEATURES)
|
feature_summary(WHAT ENABLED_FEATURES DISABLED_FEATURES)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Generate version header
|
||||||
|
configure_file("src/base/version.h.in" "${CMAKE_CURRENT_SOURCE_DIR}/src/base/version.h" @ONLY)
|
||||||
|
File diff suppressed because it is too large
Load Diff
16
INSTALL
16
INSTALL
@@ -3,23 +3,27 @@ qBittorrent - A BitTorrent client in C++ / Qt
|
|||||||
|
|
||||||
1) Install these dependencies:
|
1) Install these dependencies:
|
||||||
|
|
||||||
- Boost >= 1.40
|
- Boost >= 1.65
|
||||||
|
|
||||||
- libtorrent-rasterbar >= 1.2 (by Arvid Norberg)
|
- libtorrent-rasterbar >= 1.2.12 (by Arvid Norberg)
|
||||||
* https://www.libtorrent.org/
|
* https://www.libtorrent.org/
|
||||||
* Be careful: another library (the one used by rTorrent) uses a similar name
|
* Be careful: another library (the one used by rTorrent) uses a similar name
|
||||||
|
|
||||||
- OpenSSL >= 1.0
|
- OpenSSL >= 1.1.1
|
||||||
|
|
||||||
- Qt >= 5.9.0
|
- Qt >= 5.12
|
||||||
|
|
||||||
- zlib >= 1.2.5.2
|
- zlib >= 1.2.11
|
||||||
|
|
||||||
- pkg-config (compile-time only)
|
- pkg-config (compile-time only on *nix systems)
|
||||||
|
|
||||||
- Python >= 3.5.0 (optional, runtime only)
|
- Python >= 3.5.0 (optional, runtime only)
|
||||||
* Required by the internal search engine
|
* Required by the internal search engine
|
||||||
|
|
||||||
|
Dependency version numbers are bumped every once in a while to keep the range of properly tested configurations manageable, even if not strictly required to build.
|
||||||
|
You may be able to build with older versions of (some of) the dependencies other than the minimum versions specified in the build scripts, but support for such builds is not provided - you are on your own.
|
||||||
|
Please ensure you are building with an officially supported configuration when reporting bugs.
|
||||||
|
|
||||||
2a) Compile and install qBittorrent with Qt graphical interface
|
2a) Compile and install qBittorrent with Qt graphical interface
|
||||||
|
|
||||||
$ ./configure
|
$ ./configure
|
||||||
|
1
TODO
1
TODO
@@ -1,2 +1 @@
|
|||||||
See https://blueprints.launchpad.net/qbittorrent/
|
See https://blueprints.launchpad.net/qbittorrent/
|
||||||
|
|
||||||
|
19
build_dist.sh
Executable file
19
build_dist.sh
Executable file
@@ -0,0 +1,19 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# get version numbers
|
||||||
|
versionSrc="src/base/version.h.in"
|
||||||
|
versionMajor="$(grep -Po '(?<=QBT_VERSION_MAJOR )\d+' "$versionSrc")"
|
||||||
|
versionMinor="$(grep -Po '(?<=QBT_VERSION_MINOR )\d+' "$versionSrc")"
|
||||||
|
versionBugfix="$(grep -Po '(?<=QBT_VERSION_BUGFIX )\d+' "$versionSrc")"
|
||||||
|
versionBuild="$(grep -Po '(?<=QBT_VERSION_BUILD )\d+' "$versionSrc")"
|
||||||
|
versionStatus="$(grep -Po '(?<=QBT_VERSION_STATUS ")\w+' "$versionSrc")"
|
||||||
|
|
||||||
|
if [ "$versionBuild" != "0" ]; then
|
||||||
|
projectVersion="$versionMajor.$versionMinor.$versionBugfix.$versionBuild$versionStatus"
|
||||||
|
else
|
||||||
|
projectVersion="$versionMajor.$versionMinor.$versionBugfix$versionStatus"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# pack archives
|
||||||
|
git archive --format=tar --prefix="qbittorrent-$projectVersion/" HEAD | gzip -9 > "qbittorrent-$projectVersion.tar.gz"
|
||||||
|
git archive --format=tar --prefix="qbittorrent-$projectVersion/" HEAD | xz -9 > "qbittorrent-$projectVersion.tar.xz"
|
@@ -7,47 +7,16 @@ macro(qbt_common_config)
|
|||||||
# treat value specified by the CXX_STANDARD target property as a requirement by default
|
# treat value specified by the CXX_STANDARD target property as a requirement by default
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
|
||||||
# these definitions are only needed for calls to
|
|
||||||
# lt::generate_fingerprint and for the qbittorrent.rc file on Windows
|
|
||||||
add_library(qbt_version_definitions INTERFACE)
|
|
||||||
|
|
||||||
target_compile_definitions(qbt_version_definitions INTERFACE
|
|
||||||
QBT_VERSION_MAJOR=${qBittorrent_VERSION_MAJOR}
|
|
||||||
QBT_VERSION_MINOR=${qBittorrent_VERSION_MINOR}
|
|
||||||
QBT_VERSION_BUGFIX=${qBittorrent_VERSION_PATCH}
|
|
||||||
QBT_VERSION_BUILD=${qBittorrent_VERSION_TWEAK}
|
|
||||||
)
|
|
||||||
|
|
||||||
add_library(qbt_common_cfg INTERFACE)
|
add_library(qbt_common_cfg INTERFACE)
|
||||||
|
|
||||||
# Full C++ 14 support is required
|
# Full C++ 17 support is required
|
||||||
# See also https://cmake.org/cmake/help/latest/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html
|
# See also https://cmake.org/cmake/help/latest/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html
|
||||||
# for a breakdown of the features that CMake recognizes for each C++ standard
|
# for a breakdown of the features that CMake recognizes for each C++ standard
|
||||||
target_compile_features(qbt_common_cfg INTERFACE
|
target_compile_features(qbt_common_cfg INTERFACE
|
||||||
cxx_std_14
|
cxx_std_17
|
||||||
cxx_aggregate_default_initializers
|
|
||||||
cxx_attribute_deprecated
|
|
||||||
cxx_binary_literals
|
|
||||||
cxx_contextual_conversions
|
|
||||||
cxx_decltype_auto
|
|
||||||
cxx_digit_separators
|
|
||||||
cxx_generic_lambdas
|
|
||||||
cxx_lambda_init_captures
|
|
||||||
cxx_relaxed_constexpr
|
|
||||||
cxx_return_type_deduction
|
|
||||||
cxx_variable_templates
|
|
||||||
)
|
)
|
||||||
|
|
||||||
set(QBT_PROJECT_VERSION "${qBittorrent_VERSION_MAJOR}.${qBittorrent_VERSION_MINOR}.${qBittorrent_VERSION_PATCH}")
|
|
||||||
if (NOT ${qBittorrent_VERSION_TWEAK} EQUAL 0)
|
|
||||||
set(QBT_PROJECT_VERSION "${QBT_PROJECT_VERSION}.${qBittorrent_VERSION_TWEAK}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(QBT_FULL_VERSION "${QBT_PROJECT_VERSION}${QBT_VER_STATUS}")
|
|
||||||
|
|
||||||
target_compile_definitions(qbt_common_cfg INTERFACE
|
target_compile_definitions(qbt_common_cfg INTERFACE
|
||||||
QBT_VERSION="v${QBT_FULL_VERSION}"
|
|
||||||
QBT_VERSION_2="${QBT_FULL_VERSION}"
|
|
||||||
QT_DEPRECATED_WARNINGS
|
QT_DEPRECATED_WARNINGS
|
||||||
QT_NO_CAST_TO_ASCII
|
QT_NO_CAST_TO_ASCII
|
||||||
QT_NO_CAST_FROM_BYTEARRAY
|
QT_NO_CAST_FROM_BYTEARRAY
|
||||||
@@ -90,6 +59,12 @@ macro(qbt_common_config)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if ((CXX_COMPILER_ID STREQUAL "Clang") OR (CXX_COMPILER_ID STREQUAL "AppleClang"))
|
||||||
|
target_compile_options(qbt_common_cfg INTERFACE
|
||||||
|
-Wno-range-loop-analysis
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
if (MINGW)
|
if (MINGW)
|
||||||
target_link_options(qbt_common_cfg INTERFACE $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:LINKER:--dynamicbase>)
|
target_link_options(qbt_common_cfg INTERFACE $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:LINKER:--dynamicbase>)
|
||||||
endif()
|
endif()
|
||||||
@@ -101,8 +76,12 @@ macro(qbt_common_config)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (MSVC)
|
if (MSVC)
|
||||||
target_compile_options(qbt_common_cfg INTERFACE /guard:cf)
|
target_compile_options(qbt_common_cfg INTERFACE
|
||||||
target_link_options(qbt_common_cfg INTERFACE /guard:cf
|
/guard:cf
|
||||||
|
/utf-8
|
||||||
|
)
|
||||||
|
target_link_options(qbt_common_cfg INTERFACE
|
||||||
|
/guard:cf
|
||||||
$<$<NOT:$<CONFIG:Debug>>:/OPT:REF /OPT:ICF>
|
$<$<NOT:$<CONFIG:Debug>>:/OPT:REF /OPT:ICF>
|
||||||
# suppress linking warning due to /INCREMENTAL and /OPT:ICF being both ON
|
# suppress linking warning due to /INCREMENTAL and /OPT:ICF being both ON
|
||||||
$<$<CONFIG:RelWithDebInfo>:/INCREMENTAL:NO>
|
$<$<CONFIG:RelWithDebInfo>:/INCREMENTAL:NO>
|
||||||
|
56
configure.ac
56
configure.ac
@@ -1,6 +1,8 @@
|
|||||||
AC_INIT([qbittorrent], [v4.3.0alpha], [bugs.qbittorrent.org], [], [https://www.qbittorrent.org/])
|
AC_INIT([qbittorrent], [v4.3.4.1], [bugs.qbittorrent.org], [], [https://www.qbittorrent.org/])
|
||||||
AC_CONFIG_AUX_DIR([build-aux])
|
AC_CONFIG_AUX_DIR([build-aux])
|
||||||
AC_CONFIG_MACRO_DIR([m4])
|
AC_CONFIG_MACRO_DIR([m4])
|
||||||
|
: ${CFLAGS=""}
|
||||||
|
: ${CXXFLAGS=""}
|
||||||
AC_PROG_CC
|
AC_PROG_CC
|
||||||
AC_PROG_CXX
|
AC_PROG_CXX
|
||||||
AC_PROG_SED
|
AC_PROG_SED
|
||||||
@@ -139,7 +141,7 @@ AS_IF([test "x$QT_QMAKE" = "x"],
|
|||||||
[AC_MSG_ERROR([Could not find qmake])
|
[AC_MSG_ERROR([Could not find qmake])
|
||||||
])
|
])
|
||||||
AS_IF([test "x$enable_gui" = "xyes"],
|
AS_IF([test "x$enable_gui" = "xyes"],
|
||||||
[PKG_CHECK_MODULES(Qt5Svg, [Qt5Svg >= 5.5.1])
|
[PKG_CHECK_MODULES(Qt5Svg, [Qt5Svg >= 5.12])
|
||||||
])
|
])
|
||||||
AC_MSG_CHECKING([whether QtDBus should be enabled])
|
AC_MSG_CHECKING([whether QtDBus should be enabled])
|
||||||
AS_CASE(["x$enable_qt_dbus"],
|
AS_CASE(["x$enable_qt_dbus"],
|
||||||
@@ -157,7 +159,7 @@ AS_CASE(["x$enable_qt_dbus"],
|
|||||||
AC_MSG_ERROR([Unknown option "$enable_qt_dbus". Use either "yes" or "no".])])
|
AC_MSG_ERROR([Unknown option "$enable_qt_dbus". Use either "yes" or "no".])])
|
||||||
|
|
||||||
|
|
||||||
AX_BOOST_BASE([1.40],
|
AX_BOOST_BASE([1.65],
|
||||||
[AC_MSG_NOTICE([Boost CXXFLAGS: "$BOOST_CPPFLAGS"])
|
[AC_MSG_NOTICE([Boost CXXFLAGS: "$BOOST_CPPFLAGS"])
|
||||||
AC_MSG_NOTICE([Boost LDFLAGS: "$BOOST_LDFLAGS"])],
|
AC_MSG_NOTICE([Boost LDFLAGS: "$BOOST_LDFLAGS"])],
|
||||||
[AC_MSG_ERROR([Could not find Boost])])
|
[AC_MSG_ERROR([Could not find Boost])])
|
||||||
@@ -178,48 +180,48 @@ AC_MSG_NOTICE([Boost.System LIB: "$BOOST_SYSTEM_LIB"])
|
|||||||
LIBS="$BOOST_SYSTEM_LIB $LIBS"
|
LIBS="$BOOST_SYSTEM_LIB $LIBS"
|
||||||
|
|
||||||
PKG_CHECK_MODULES(libtorrent,
|
PKG_CHECK_MODULES(libtorrent,
|
||||||
[libtorrent-rasterbar >= 1.2],
|
[libtorrent-rasterbar >= 1.2.12],
|
||||||
[CXXFLAGS="$libtorrent_CFLAGS $CXXFLAGS"
|
[CXXFLAGS="$libtorrent_CFLAGS $CXXFLAGS"
|
||||||
LIBS="$libtorrent_LIBS $LIBS"])
|
LIBS="$libtorrent_LIBS $LIBS"])
|
||||||
|
|
||||||
PKG_CHECK_MODULES(openssl,
|
PKG_CHECK_MODULES(openssl,
|
||||||
[openssl >= 1.0],
|
[openssl >= 1.1.1],
|
||||||
[CXXFLAGS="$openssl_CFLAGS $CXXFLAGS"
|
[CXXFLAGS="$openssl_CFLAGS $CXXFLAGS"
|
||||||
LIBS="$openssl_LIBS $LIBS"])
|
LIBS="$openssl_LIBS $LIBS"])
|
||||||
|
|
||||||
PKG_CHECK_MODULES(zlib,
|
PKG_CHECK_MODULES(zlib,
|
||||||
[zlib >= 1.2.5.2],
|
[zlib >= 1.2.11],
|
||||||
[CXXFLAGS="$zlib_CFLAGS $CXXFLAGS"
|
[CXXFLAGS="$zlib_CFLAGS $CXXFLAGS"
|
||||||
LIBS="$zlib_LIBS $LIBS"])
|
LIBS="$zlib_LIBS $LIBS"])
|
||||||
|
|
||||||
# Check if already in >= C++14 mode because of the flags returned by one of the above packages
|
# Check if already in >= C++17 mode because of the flags returned by one of the above packages
|
||||||
TMP_CXXFLAGS="$CXXFLAGS"
|
TMP_CXXFLAGS="$CXXFLAGS"
|
||||||
CXXFLAGS=""
|
CXXFLAGS=""
|
||||||
AC_MSG_CHECKING([if compiler defaults to C++14 or later mode])
|
AC_MSG_CHECKING([if compiler defaults to C++17 or later mode])
|
||||||
AC_COMPILE_IFELSE([DETECT_CPP14_PROGRAM()],
|
AC_COMPILE_IFELSE([DETECT_CPP17_PROGRAM()],
|
||||||
[AC_MSG_RESULT([yes])
|
[AC_MSG_RESULT([yes])
|
||||||
QBT_CXX14_FOUND="yes"],
|
QBT_CXX17_FOUND="yes"],
|
||||||
[AC_MSG_RESULT([no])
|
[AC_MSG_RESULT([no])
|
||||||
QBT_CXX14_FOUND="no"])
|
QBT_CXX17_FOUND="no"])
|
||||||
|
|
||||||
# In case of no, check if the compiler can support at least C++14
|
# In case of no, check if the compiler can support at least C++17
|
||||||
# and if yes, enable it leaving a warning to the user
|
# and if yes, enable it leaving a warning to the user
|
||||||
AS_IF([test "x$QBT_CXX14_FOUND" = "xno"],
|
AS_IF([test "x$QBT_CXX17_FOUND" = "xno"],
|
||||||
[AC_MSG_CHECKING([if compiler supports C++14])
|
[AC_MSG_CHECKING([if compiler supports C++17])
|
||||||
CXXFLAGS="-std=c++14"
|
CXXFLAGS="-std=c++17"
|
||||||
AC_COMPILE_IFELSE([DETECT_CPP14_PROGRAM()],
|
AC_COMPILE_IFELSE([DETECT_CPP17_PROGRAM()],
|
||||||
[AC_MSG_RESULT([yes])
|
[AC_MSG_RESULT([yes])
|
||||||
AC_MSG_CHECKING([if C++14 is disabled by the set compiler flags])
|
AC_MSG_CHECKING([if C++17 is disabled by the set compiler flags])
|
||||||
# prepend the flag so it won't override conflicting user defined flags
|
# prepend the flag so it won't override conflicting user defined flags
|
||||||
CXXFLAGS="-std=c++14 $TMP_CXXFLAGS"
|
CXXFLAGS="-std=c++17 $TMP_CXXFLAGS"
|
||||||
AC_COMPILE_IFELSE([DETECT_CPP14_PROGRAM()],
|
AC_COMPILE_IFELSE([DETECT_CPP17_PROGRAM()],
|
||||||
[AC_MSG_RESULT([no])
|
[AC_MSG_RESULT([no])
|
||||||
QBT_ADD_CONFIG="$QBT_ADD_CONFIG c++14"
|
QBT_ADD_CONFIG="$QBT_ADD_CONFIG c++1z"
|
||||||
AC_MSG_WARN([C++14 mode is now force enabled. The C++ mode should match the mode that other libraries were built with, otherwise you'll likely get linking errors.])],
|
AC_MSG_WARN([C++17 mode is now force enabled. The C++ mode should match the mode that other libraries were built with, otherwise you'll likely get linking errors.])],
|
||||||
[AC_MSG_RESULT([yes])
|
[AC_MSG_RESULT([yes])
|
||||||
AC_MSG_ERROR([The compiler supports C++14 but the user or a dependency has explicitly enabled a lower mode.])])],
|
AC_MSG_ERROR([The compiler supports C++17 but the user or a dependency has explicitly enabled a lower mode.])])],
|
||||||
[AC_MSG_RESULT([no])
|
[AC_MSG_RESULT([no])
|
||||||
AC_MSG_ERROR([A compiler supporting C++14 is required.])])
|
AC_MSG_ERROR([A compiler supporting C++17 is required.])])
|
||||||
])
|
])
|
||||||
CXXFLAGS="$TMP_CXXFLAGS"
|
CXXFLAGS="$TMP_CXXFLAGS"
|
||||||
|
|
||||||
@@ -270,9 +272,13 @@ AC_SUBST(QBT_REMOVE_CONFIG)
|
|||||||
AC_SUBST(QBT_ADD_DEFINES)
|
AC_SUBST(QBT_ADD_DEFINES)
|
||||||
AC_SUBST(QBT_REMOVE_DEFINES)
|
AC_SUBST(QBT_REMOVE_DEFINES)
|
||||||
|
|
||||||
AC_OUTPUT(conf.pri)
|
QBT_CONFIG_FILES="conf.pri"
|
||||||
|
|
||||||
AS_IF([test "x$enable_systemd" = "xyes"],
|
AS_IF([test "x$enable_systemd" = "xyes"],
|
||||||
[AC_OUTPUT(dist/unix/systemd/qbittorrent-nox@.service)])
|
[QBT_CONFIG_FILES="$QBT_CONFIG_FILES dist/unix/systemd/qbittorrent-nox@.service"])
|
||||||
|
|
||||||
|
AC_CONFIG_FILES(["$QBT_CONFIG_FILES"])
|
||||||
|
AC_OUTPUT
|
||||||
|
|
||||||
AC_MSG_NOTICE([Running qmake to generate the makefile...])
|
AC_MSG_NOTICE([Running qmake to generate the makefile...])
|
||||||
TOPDIR="$(cd "$(dirname "$0")" && pwd)"
|
TOPDIR="$(cd "$(dirname "$0")" && pwd)"
|
||||||
|
1
dist/mac/CMakeLists.txt
vendored
1
dist/mac/CMakeLists.txt
vendored
@@ -0,0 +1 @@
|
|||||||
|
# empty
|
||||||
|
4
dist/mac/Info.plist
vendored
4
dist/mac/Info.plist
vendored
@@ -55,7 +55,7 @@
|
|||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>4.3.0</string>
|
<string>4.3.4.1</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>@EXECUTABLE@</string>
|
<string>@EXECUTABLE@</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleIdentifier</key>
|
||||||
@@ -67,7 +67,7 @@
|
|||||||
<key>NSAppleScriptEnabled</key>
|
<key>NSAppleScriptEnabled</key>
|
||||||
<string>YES</string>
|
<string>YES</string>
|
||||||
<key>NSHumanReadableCopyright</key>
|
<key>NSHumanReadableCopyright</key>
|
||||||
<string>Copyright © 2006-2020 The qBittorrent project</string>
|
<string>Copyright © 2006-2021 The qBittorrent project</string>
|
||||||
<key>UTExportedTypeDeclarations</key>
|
<key>UTExportedTypeDeclarations</key>
|
||||||
<array>
|
<array>
|
||||||
<dict>
|
<dict>
|
||||||
|
@@ -74,6 +74,6 @@
|
|||||||
<url type="translate">https://github.com/qbittorrent/qBittorrent/wiki/How-to-translate-qBittorrent</url>
|
<url type="translate">https://github.com/qbittorrent/qBittorrent/wiki/How-to-translate-qBittorrent</url>
|
||||||
<content_rating type="oars-1.1"/>
|
<content_rating type="oars-1.1"/>
|
||||||
<releases>
|
<releases>
|
||||||
<release version="4.1.5" date="2018-12-24"/>
|
<release version="4.3.4.1" date="2021-03-24"/>
|
||||||
</releases>
|
</releases>
|
||||||
</component>
|
</component>
|
||||||
|
80
dist/unix/org.qbittorrent.qBittorrent.desktop
vendored
80
dist/unix/org.qbittorrent.qBittorrent.desktop
vendored
@@ -12,6 +12,9 @@ StartupNotify=false
|
|||||||
StartupWMClass=qbittorrent
|
StartupWMClass=qbittorrent
|
||||||
Keywords=bittorrent;torrent;magnet;download;p2p;
|
Keywords=bittorrent;torrent;magnet;download;p2p;
|
||||||
|
|
||||||
|
# Translations
|
||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[oc]=Telecargar e partejar de fichièrs amb BitTorrent
|
Comment[oc]=Telecargar e partejar de fichièrs amb BitTorrent
|
||||||
GenericName[oc]=Client BitTorrent
|
GenericName[oc]=Client BitTorrent
|
||||||
@@ -22,8 +25,8 @@ Name[af]=qBittorrent
|
|||||||
Comment[ar]=نزّل وشارك الملفات عبر كيوبتتورنت
|
Comment[ar]=نزّل وشارك الملفات عبر كيوبتتورنت
|
||||||
GenericName[ar]=عميل بتتورنت
|
GenericName[ar]=عميل بتتورنت
|
||||||
Name[ar]=كيوبتتورنت
|
Name[ar]=كيوبتتورنت
|
||||||
Comment[be]=Сцягванне і раздача файлаў праз пратакол BitTorrent
|
Comment[be]=Спампоўванне і раздача файлаў праз пратакол BitTorrent
|
||||||
GenericName[be]=BitTorrent-кліент
|
GenericName[be]=Кліент BitTorrent
|
||||||
Name[be]=qBittorrent
|
Name[be]=qBittorrent
|
||||||
Comment[bg]=Сваляне и споделяне на файлове чрез BitTorrent
|
Comment[bg]=Сваляне и споделяне на файлове чрез BitTorrent
|
||||||
GenericName[bg]=BitTorrent клиент
|
GenericName[bg]=BitTorrent клиент
|
||||||
@@ -34,19 +37,19 @@ Name[bn]=কিউবি্টটরেন্ট
|
|||||||
Comment[bs]=Preuzmi i dijeli datoteke preko BitTorrent-a
|
Comment[bs]=Preuzmi i dijeli datoteke preko BitTorrent-a
|
||||||
GenericName[bs]=BitTorrent klijent
|
GenericName[bs]=BitTorrent klijent
|
||||||
Name[bs]=qBittorrent
|
Name[bs]=qBittorrent
|
||||||
Comment[ca]=Baixeu i compartiu fitxers mitjançant BitTorrent
|
Comment[ca]=Baixeu i compartiu fitxers amb el BitTorrent
|
||||||
GenericName[ca]=Client de BitTorrent
|
GenericName[ca]=Client de BitTorrent
|
||||||
Name[ca]=qBittorrent
|
Name[ca]=qBittorrent
|
||||||
Comment[cs]=Stahování a sdílení souborů přes síť BitTorrent
|
Comment[cs]=Stahování a sdílení souborů přes síť BitTorrent
|
||||||
GenericName[cs]=BitTorrent klient
|
GenericName[cs]=BitTorrent klient
|
||||||
Name[cs]=qBittorrent
|
Name[cs]=qBittorrent
|
||||||
Comment[da]=Download og del filer over BitTorrent
|
Comment[da]=Download og del filer over BitTorrent
|
||||||
GenericName[da]=BitTorrent klient
|
GenericName[da]=BitTorrent-klient
|
||||||
Name[da]=qBittorrent
|
Name[da]=qBittorrent
|
||||||
Comment[de]=Über BitTorrent Dateien herunterladen und teilen
|
Comment[de]=Über BitTorrent Dateien herunterladen und teilen
|
||||||
GenericName[de]=BitTorrent Client
|
GenericName[de]=BitTorrent Client
|
||||||
Name[de]=qBittorrent
|
Name[de]=qBittorrent
|
||||||
Comment[el]=Κάντε λήψη και ανταλάξτε αρχεία μέσω BitTorrent
|
Comment[el]=Κάντε λήψη και ανταλλάξτε αρχεία μέσω BitTorrent
|
||||||
GenericName[el]=Πελάτης BitTorrent
|
GenericName[el]=Πελάτης BitTorrent
|
||||||
Name[el]=qBittorrent
|
Name[el]=qBittorrent
|
||||||
Comment[en_GB]=Download and share files over BitTorrent
|
Comment[en_GB]=Download and share files over BitTorrent
|
||||||
@@ -55,7 +58,10 @@ Name[en_GB]=qBittorrent
|
|||||||
Comment[es]=Descargue y comparta archivos por BitTorrent
|
Comment[es]=Descargue y comparta archivos por BitTorrent
|
||||||
GenericName[es]=Cliente BitTorrent
|
GenericName[es]=Cliente BitTorrent
|
||||||
Name[es]=qBittorrent
|
Name[es]=qBittorrent
|
||||||
Comment[eu]=Jeitsi eta elkarbanatu agiriak BitTorrent-en
|
Comment[et]=Lae alla ja jaga faile üle BitTorrenti
|
||||||
|
GenericName[et]=BitTorrent klient
|
||||||
|
Name[et]=qBittorrent
|
||||||
|
Comment[eu]=Jeitsi eta elkarbanatu agiriak BitTorrent bidez
|
||||||
GenericName[eu]=BitTorrent bezeroa
|
GenericName[eu]=BitTorrent bezeroa
|
||||||
Name[eu]=qBittorrent
|
Name[eu]=qBittorrent
|
||||||
Comment[fa]=دانلود و به اشتراک گذاری فایل های بوسیله بیت تورنت
|
Comment[fa]=دانلود و به اشتراک گذاری فایل های بوسیله بیت تورنت
|
||||||
@@ -82,13 +88,16 @@ Name[hr]=qBittorrent
|
|||||||
Comment[hu]=Fájlok letöltése és megosztása a BitTorrent hálózaton keresztül
|
Comment[hu]=Fájlok letöltése és megosztása a BitTorrent hálózaton keresztül
|
||||||
GenericName[hu]=BitTorrent kliens
|
GenericName[hu]=BitTorrent kliens
|
||||||
Name[hu]=qBittorrent
|
Name[hu]=qBittorrent
|
||||||
|
Comment[hy]=Նիշքերի փոխանցում BitTorrent-ի միջոցով
|
||||||
|
GenericName[hy]=BitTorrent սպասառու
|
||||||
|
Name[hy]=qBittorrent
|
||||||
Comment[id]=Unduh dan berbagi berkas melalui BitTorrent
|
Comment[id]=Unduh dan berbagi berkas melalui BitTorrent
|
||||||
GenericName[id]=Klien BitTorrent
|
GenericName[id]=Klien BitTorrent
|
||||||
Name[id]=qBittorrent
|
Name[id]=qBittorrent
|
||||||
Comment[is]=Sækja og deila skrám yfir BitTorrent
|
Comment[is]=Sækja og deila skrám yfir BitTorrent
|
||||||
GenericName[is]=BitTorrent biðlarar
|
GenericName[is]=BitTorrent biðlarar
|
||||||
Name[is]=qBittorrent
|
Name[is]=qBittorrent
|
||||||
Comment[it]=Client BitTorrent per il download di file via internet
|
Comment[it]=Scarica e condividi file tramite BitTorrent
|
||||||
GenericName[it]=Client BitTorrent
|
GenericName[it]=Client BitTorrent
|
||||||
Name[it]=qBittorrent
|
Name[it]=qBittorrent
|
||||||
Comment[ja]=BitTorrent でファイルをダウンロードおよび共有します
|
Comment[ja]=BitTorrent でファイルをダウンロードおよび共有します
|
||||||
@@ -97,15 +106,21 @@ Name[ja]=qBittorrent
|
|||||||
Comment[ka]=ჩამოტვირთე და გააზიარე ფაილები Bittorrent-ის საშუალებით
|
Comment[ka]=ჩამოტვირთე და გააზიარე ფაილები Bittorrent-ის საშუალებით
|
||||||
GenericName[ka]=BitTorrent კლიენტი
|
GenericName[ka]=BitTorrent კლიენტი
|
||||||
Name[ka]=qBittorrent
|
Name[ka]=qBittorrent
|
||||||
Comment[ko]=비트토런트를 통해 파일을 다운로드하고 공유합니다
|
Comment[ko]=비트토렌트를 통해 파일을 받고 공유합니다
|
||||||
GenericName[ko]=비트토런트 클라이언트
|
GenericName[ko]=비트토렌트 클라이언트
|
||||||
Name[ko]=큐빗토런트
|
Name[ko]=qBittorrent
|
||||||
Comment[zh]=通过 BitTorrent 下载和分享文件
|
Comment[zh]=通过 BitTorrent 下载和分享文件
|
||||||
GenericName[zh]=BitTorrent 客户端
|
GenericName[zh]=BitTorrent 客户端
|
||||||
Name[zh]=qBittorrent
|
Name[zh]=qBittorrent
|
||||||
Comment[lt]=Atsisiųskite bei dalinkitės failais BitTorrent tinkle
|
Comment[lt]=Atsisiųskite bei dalinkitės failais BitTorrent tinkle
|
||||||
GenericName[lt]=BitTorrent klientas
|
GenericName[lt]=BitTorrent klientas
|
||||||
Name[lt]=qBittorrent
|
Name[lt]=qBittorrent
|
||||||
|
Comment[mk]=Превземајте и споделувајте фајлови преку BitTorrent
|
||||||
|
GenericName[mk]=BitTorrent клиент
|
||||||
|
Name[mk]=qBittorrent
|
||||||
|
Comment[en_AU]=Download and share files over BitTorrent
|
||||||
|
GenericName[en_AU]=BitTorrent client
|
||||||
|
Name[en_AU]=qBittorrent
|
||||||
Comment[nb]=Last ned og del filer over BitTorrent
|
Comment[nb]=Last ned og del filer over BitTorrent
|
||||||
GenericName[nb]=BitTorrent-klient
|
GenericName[nb]=BitTorrent-klient
|
||||||
Name[nb]=qBittorrent
|
Name[nb]=qBittorrent
|
||||||
@@ -113,7 +128,7 @@ Comment[nqo]=ߞߐߕߐ߯ߘߐ ߟߎ߬ ߟߊߖߌ߰ ߞߊ߬ ߓߊ߲߫ ߞߵߊ߬ߟߎ߬ ߘ
|
|||||||
GenericName[nqo]=ߓߌߙߏߙߍ߲ߕ ߕߣߐ߬ߓߐ߬ߟߊ
|
GenericName[nqo]=ߓߌߙߏߙߍ߲ߕ ߕߣߐ߬ߓߐ߬ߟߊ
|
||||||
Name[nqo]=ߞߎ߳ߓߌߕߏߙߍ߲ߕ
|
Name[nqo]=ߞߎ߳ߓߌߕߏߙߍ߲ߕ
|
||||||
Comment[nl]=Bestanden downloaden en delen via BitTorrent
|
Comment[nl]=Bestanden downloaden en delen via BitTorrent
|
||||||
GenericName[nl]=BitTorrent-cliënt
|
GenericName[nl]=BitTorrent-client
|
||||||
Name[nl]=qBittorrent
|
Name[nl]=qBittorrent
|
||||||
Comment[pl]=Pobieraj i dziel się plikami przez BitTorrent
|
Comment[pl]=Pobieraj i dziel się plikami przez BitTorrent
|
||||||
GenericName[pl]=Klient BitTorrent
|
GenericName[pl]=Klient BitTorrent
|
||||||
@@ -127,8 +142,8 @@ Name[pt_BR]=qBittorrent
|
|||||||
Comment[ro]=Descărcați și partajați fișiere prin BitTorrent
|
Comment[ro]=Descărcați și partajați fișiere prin BitTorrent
|
||||||
GenericName[ro]=Client BitTorrent
|
GenericName[ro]=Client BitTorrent
|
||||||
Name[ro]=qBittorrent
|
Name[ro]=qBittorrent
|
||||||
Comment[ru]=Скачивайте и делитесь файлами с помощью BitTorrent
|
Comment[ru]=Обмен файлами по сети BitTorrent
|
||||||
GenericName[ru]=BitTorrent-клиент
|
GenericName[ru]=Клиент сети BitTorrent
|
||||||
Name[ru]=qBittorrent
|
Name[ru]=qBittorrent
|
||||||
Comment[sk]=Sťahovanie a zdieľanie súborov prostredníctvom siete BitTorrent
|
Comment[sk]=Sťahovanie a zdieľanie súborov prostredníctvom siete BitTorrent
|
||||||
GenericName[sk]=Klient siete BitTorrent
|
GenericName[sk]=Klient siete BitTorrent
|
||||||
@@ -136,6 +151,7 @@ Name[sk]=qBittorrent
|
|||||||
Comment[sl]=Prenesite in delite datoteke preko BitTorrenta
|
Comment[sl]=Prenesite in delite datoteke preko BitTorrenta
|
||||||
GenericName[sl]=BitTorrent odjemalec
|
GenericName[sl]=BitTorrent odjemalec
|
||||||
Name[sl]=qBittorrent
|
Name[sl]=qBittorrent
|
||||||
|
Comment[sr]=Преузимајте и делите фајлове преко BitTorrent протокола
|
||||||
GenericName[sr]=BitTorrent-клијент
|
GenericName[sr]=BitTorrent-клијент
|
||||||
Comment[sr@latin]=Preuzimanje i deljenje fajlova preko BitTorrent-a
|
Comment[sr@latin]=Preuzimanje i deljenje fajlova preko BitTorrent-a
|
||||||
GenericName[sr@latin]=BitTorrent klijent
|
GenericName[sr@latin]=BitTorrent klijent
|
||||||
@@ -146,21 +162,27 @@ Name[sv]=qBittorrent
|
|||||||
Comment[uz@Latn]=BitTorrent orqali fayllarni yuklab olish va baham ko‘rish
|
Comment[uz@Latn]=BitTorrent orqali fayllarni yuklab olish va baham ko‘rish
|
||||||
GenericName[uz@Latn]=BitTorrent mijozi
|
GenericName[uz@Latn]=BitTorrent mijozi
|
||||||
Name[uz@Latn]=qBittorrent
|
Name[uz@Latn]=qBittorrent
|
||||||
Comment[te]=క్యు బిట్ టొరెంట్ తో ఫైల్స్ దిగుమతి చేసుకోండి , పంచుకోండి
|
Comment[ltg]=Atsasyuteit i daleit failus ar BitTorrent
|
||||||
GenericName[te]=క్యు బిట్ టొరెంట్ క్లయింట్
|
GenericName[ltg]=BitTorrent klients
|
||||||
Name[te]=క్యు బిట్ టొరెంట్
|
Name[ltg]=qBittorrent
|
||||||
Comment[hi_IN]= अपनी फाइलें BitTorrent के माध्यम से डाउनलोड आैर साॅझा करें
|
Comment[hi_IN]=बिटटौरेंट द्वारा फाइल डाउनलोड व सहभाजन
|
||||||
GenericName[hi_IN]=BitTorrent उपभोक्ता
|
GenericName[hi_IN]=बिटटौरेंट साधन
|
||||||
Name[hi_IN]=qBittorrent
|
Name[hi_IN]=क्यूबिटटौरेंट
|
||||||
Comment[tr]=Dosyaları BitTorrent üzerinden indirin ve paylaşın
|
Comment[tr]=Dosyaları BitTorrent üzerinden indirin ve paylaşın
|
||||||
GenericName[tr]=BitTorrent istemcisi
|
GenericName[tr]=BitTorrent istemcisi
|
||||||
Name[tr]=qBittorrent
|
Name[tr]=qBittorrent
|
||||||
Comment[uk]=Завантажувати і обмінюватися файлами через BitTorrent
|
Comment[ur]=BitTorrent پر فائلوں کو ڈاؤن لوڈ کریں اور اشتراک کریں
|
||||||
|
GenericName[ur]=قیو بٹ ٹورنٹ کلائنٹ
|
||||||
|
Name[ur]=قیو بٹ ٹورنٹ
|
||||||
|
Comment[uk]=Завантажуйте та поширюйте файли через BitTorrent
|
||||||
GenericName[uk]=BitTorrent-клієнт
|
GenericName[uk]=BitTorrent-клієнт
|
||||||
Name[uk]=qBittorrent
|
Name[uk]=qBittorrent
|
||||||
Comment[vi]=Tải về và chia sẻ các tập tin thông qua BitTorrent
|
Comment[vi]=Tải về và chia sẻ các tập tin thông qua BitTorrent
|
||||||
GenericName[vi]=Máy trạm dạng BitTorrent
|
GenericName[vi]=Máy trạm dạng BitTorrent
|
||||||
Name[vi]=qBittorrent
|
Name[vi]=qBittorrent
|
||||||
|
Comment[az@latin]=Faylları BitTorrent vasitəsilə göndərin və paylaşın
|
||||||
|
GenericName[az@latin]=BitTorrent client
|
||||||
|
Name[az@latin]=qBittorrent
|
||||||
Comment[zh_HK]=經由BitTorrent下載並分享檔案
|
Comment[zh_HK]=經由BitTorrent下載並分享檔案
|
||||||
GenericName[zh_HK]=BitTorrent用戶端
|
GenericName[zh_HK]=BitTorrent用戶端
|
||||||
Name[zh_HK]=qBittorrent
|
Name[zh_HK]=qBittorrent
|
||||||
@@ -176,15 +198,21 @@ Name[ms_MY]=qBittorrent
|
|||||||
Comment[eo]=Elŝutu kaj kunhavigu dosierojn per BitTorrent
|
Comment[eo]=Elŝutu kaj kunhavigu dosierojn per BitTorrent
|
||||||
GenericName[eo]=BitTorrent-kliento
|
GenericName[eo]=BitTorrent-kliento
|
||||||
Name[eo]=qBittorrent
|
Name[eo]=qBittorrent
|
||||||
Comment[mn_MN]=BitTorrent ашиглан файлуудыг татаж түгээх
|
Comment[mn_MN]=BitTorrent-оор файлуудаа тат, түгээ
|
||||||
GenericName[mn_MN]=BitTorrent үйлчлүүлэгч
|
GenericName[mn_MN]=BitTorrent татагч
|
||||||
Name[mn_MN]=qBittorrent
|
Name[mn_MN]=qBittorrent
|
||||||
|
Comment[ta]=BitTorrent வழியாக கோப்புகளை பதிவிறக்க மற்றும் பகிர
|
||||||
|
GenericName[ta]=BitTorrent வாடிக்கையாளர்
|
||||||
|
Name[ta]=qBittorrent
|
||||||
Comment[ne_NP]=फाइलहरू डाउनलोड गर्नुहोस् र BitTorrent मा साझा गर्नुहोस्
|
Comment[ne_NP]=फाइलहरू डाउनलोड गर्नुहोस् र BitTorrent मा साझा गर्नुहोस्
|
||||||
GenericName[ne_NP]=BitTorrent क्लाइन्ट
|
GenericName[ne_NP]=BitTorrent क्लाइन्ट
|
||||||
Name[ne_NP]=qBittorrent
|
Name[ne_NP]=qBittorrent
|
||||||
Comment[en_AU]=Download and share files over BitTorrent
|
Comment[te]=క్యు బిట్ టొరెంట్ తో ఫైల్స్ దిగుమతి చేసుకోండి , పంచుకోండి
|
||||||
GenericName[en_AU]=BitTorrent client
|
GenericName[te]=క్యు బిట్ టొరెంట్ క్లయింట్
|
||||||
Name[en_AU]=qBittorrent
|
Name[te]=క్యు బిట్ టొరెంట్
|
||||||
Comment[th]=ดาว์นโหลดและแชร์ไฟล์ด้วยบิททอเร้น
|
Comment[pt_PT]=Transferir e partilhar ficheiros por BitTorrent
|
||||||
|
GenericName[pt_PT]=Cliente BitTorrent
|
||||||
|
Name[pt_PT]=qBittorrent
|
||||||
|
Comment[th]=ดาวน์โหลดและแชร์ไฟล์ด้วยบิททอเร้น
|
||||||
GenericName[th]=โปรแกรมบิททอเร้น
|
GenericName[th]=โปรแกรมบิททอเร้น
|
||||||
Name[th]=qBittorrent
|
Name[th]=qBittorrent
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
Description=qBittorrent-nox service for user %I
|
Description=qBittorrent-nox service for user %I
|
||||||
Documentation=man:qbittorrent-nox(1)
|
Documentation=man:qbittorrent-nox(1)
|
||||||
Wants=network-online.target
|
Wants=network-online.target
|
||||||
After=network-online.target nss-lookup.target
|
After=local-fs.target network-online.target nss-lookup.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
Type=simple
|
||||||
|
3
dist/windows/README.txt
vendored
3
dist/windows/README.txt
vendored
@@ -8,7 +8,8 @@ TRANSLATORS:
|
|||||||
english message to help you with the translation.
|
english message to help you with the translation.
|
||||||
4. Edit only the part inside the quotation marks(""). Unless you know
|
4. Edit only the part inside the quotation marks(""). Unless you know
|
||||||
what you are doing.
|
what you are doing.
|
||||||
5. Save the files with utf8 encoding and BOM.
|
5. Save the files with UTF-8 encoding, without BOM
|
||||||
|
(this should be the default in any modern text editor).
|
||||||
6. Submit your changes: 1) as a pull request to the official git repo or
|
6. Submit your changes: 1) as a pull request to the official git repo or
|
||||||
2) open an issue to the bugtracker and attach them or 3) via email or
|
2) open an issue to the bugtracker and attach them or 3) via email or
|
||||||
4)the same way you provide the translations for qbt itself
|
4)the same way you provide the translations for qbt itself
|
||||||
|
10
dist/windows/UAC.nsh
vendored
10
dist/windows/UAC.nsh
vendored
@@ -22,7 +22,7 @@ Interactive User (MediumIL) Admin user (HighIL)
|
|||||||
!ifndef UAC_HDR__INC
|
!ifndef UAC_HDR__INC
|
||||||
!verbose push
|
!verbose push
|
||||||
!verbose 3
|
!verbose 3
|
||||||
!ifndef UAC_VERBOSE
|
!ifndef UAC_VERBOSE
|
||||||
!define UAC_VERBOSE 3
|
!define UAC_VERBOSE 3
|
||||||
!endif
|
!endif
|
||||||
!verbose ${UAC_VERBOSE}
|
!verbose ${UAC_VERBOSE}
|
||||||
@@ -195,7 +195,7 @@ _UAC_L_E_${__UAC_L}:
|
|||||||
!endif
|
!endif
|
||||||
!insertmacro UAC_AsUser_Call Label _UAC_L_F_${__UAC_L} ${UAC_SYNCREGISTERS}|${UAC_SYNCOUTDIR}|${UAC_SYNCINSTDIR} #|${UAC_CLEARERRFLAG}
|
!insertmacro UAC_AsUser_Call Label _UAC_L_F_${__UAC_L} ${UAC_SYNCREGISTERS}|${UAC_SYNCOUTDIR}|${UAC_SYNCINSTDIR} #|${UAC_CLEARERRFLAG}
|
||||||
!if "${workdir}" != ""
|
!if "${workdir}" != ""
|
||||||
pop $outdir
|
pop $outdir
|
||||||
SetOutPath $outdir
|
SetOutPath $outdir
|
||||||
!endif
|
!endif
|
||||||
!macroend
|
!macroend
|
||||||
@@ -265,7 +265,7 @@ pop $_LOGICLIB_TEMP
|
|||||||
!macroend
|
!macroend
|
||||||
!macro _UAC_AsUser_GenOp outvar op opparam1 opparam2
|
!macro _UAC_AsUser_GenOp outvar op opparam1 opparam2
|
||||||
!define _UAC_AUGOGR_ID _UAC_AUGOGR_OP${outvar}${op}${opparam1}${opparam2}
|
!define _UAC_AUGOGR_ID _UAC_AUGOGR_OP${outvar}${op}${opparam1}${opparam2}
|
||||||
!ifndef ${_UAC_AUGOGR_ID} ;Has this exact action been done before?
|
!ifndef ${_UAC_AUGOGR_ID} ;Has this exact action been done before?
|
||||||
!if ${outvar} == $0
|
!if ${outvar} == $0
|
||||||
!define ${_UAC_AUGOGR_ID} $1
|
!define ${_UAC_AUGOGR_ID} $1
|
||||||
!else
|
!else
|
||||||
@@ -277,7 +277,7 @@ pop $_LOGICLIB_TEMP
|
|||||||
!else
|
!else
|
||||||
!define _UAC_AUGOGR_OPP1 ${opparam1}
|
!define _UAC_AUGOGR_OPP1 ${opparam1}
|
||||||
!define _UAC_AUGOGR_OPP2 ${${_UAC_AUGOGR_ID}}
|
!define _UAC_AUGOGR_OPP2 ${${_UAC_AUGOGR_ID}}
|
||||||
!endif
|
!endif
|
||||||
goto ${_UAC_AUGOGR_ID}_C
|
goto ${_UAC_AUGOGR_ID}_C
|
||||||
${_UAC_AUGOGR_ID}_F:
|
${_UAC_AUGOGR_ID}_F:
|
||||||
${op} ${_UAC_AUGOGR_OPP1} ${_UAC_AUGOGR_OPP2}
|
${op} ${_UAC_AUGOGR_OPP1} ${_UAC_AUGOGR_OPP2}
|
||||||
@@ -296,4 +296,4 @@ pop ${${_UAC_AUGOGR_ID}}
|
|||||||
|
|
||||||
|
|
||||||
!verbose pop
|
!verbose pop
|
||||||
!endif /* UAC_HDR__INC */
|
!endif /* UAC_HDR__INC */
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
;Installer strings
|
;Installer strings
|
||||||
|
|
||||||
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
||||||
LangString inst_qbt_req ${LANG_AFRIKAANS} "qBittorrent (required)"
|
LangString inst_qbt_req ${LANG_AFRIKAANS} "qBittorrent (required)"
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
;Installer strings
|
;Installer strings
|
||||||
|
|
||||||
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
||||||
LangString inst_qbt_req ${LANG_ALBANIAN} "qBittorrent (required)"
|
LangString inst_qbt_req ${LANG_ALBANIAN} "qBittorrent (required)"
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
;Installer strings
|
;Installer strings
|
||||||
|
|
||||||
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
||||||
LangString inst_qbt_req ${LANG_ARABIC} "qBittorrent (مطلوب)"
|
LangString inst_qbt_req ${LANG_ARABIC} "qBittorrent (مطلوب)"
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
;Installer strings
|
;Installer strings
|
||||||
|
|
||||||
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
||||||
LangString inst_qbt_req ${LANG_BASQUE} "qBittorrent (beharrezkoa)"
|
LangString inst_qbt_req ${LANG_BASQUE} "qBittorrent (beharrezkoa)"
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
;Installer strings
|
;Installer strings
|
||||||
|
|
||||||
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
||||||
LangString inst_qbt_req ${LANG_BELARUSIAN} "qBittorrent (required)"
|
LangString inst_qbt_req ${LANG_BELARUSIAN} "qBittorrent (required)"
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
;Installer strings
|
;Installer strings
|
||||||
|
|
||||||
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
||||||
LangString inst_qbt_req ${LANG_BOSNIAN} "qBittorrent (required)"
|
LangString inst_qbt_req ${LANG_BOSNIAN} "qBittorrent (required)"
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
;Installer strings
|
;Installer strings
|
||||||
|
|
||||||
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
||||||
LangString inst_qbt_req ${LANG_BRETON} "qBittorrent (required)"
|
LangString inst_qbt_req ${LANG_BRETON} "qBittorrent (required)"
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
;Installer strings
|
;Installer strings
|
||||||
|
|
||||||
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
||||||
LangString inst_qbt_req ${LANG_BULGARIAN} "qBittorrent (required)"
|
LangString inst_qbt_req ${LANG_BULGARIAN} "qBittorrent (required)"
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user