Skip to content

Commit 206ea43

Browse files
authored
Merge branch 'master' into nmc/master/custom_main_window
2 parents 9ca5b4a + 8fa498f commit 206ea43

190 files changed

Lines changed: 11660 additions & 2314 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors
2+
# SPDX-License-Identifier: GPL-2.0-or-later
3+
4+
name: Auto-label bug reports
5+
on:
6+
issues:
7+
types: [opened]
8+
9+
jobs:
10+
add-os-label:
11+
if: contains(github.event.issue.title, '[Bug]')
12+
runs-on: ubuntu-latest
13+
permissions:
14+
issues: write
15+
steps:
16+
- name: Extract OS and apply label
17+
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
18+
with:
19+
script: |
20+
const body = context.payload.issue.body || '';
21+
const normalizedBody = body.replace(/\r\n?/g, '\n');
22+
let label = '';
23+
24+
if (/### Operating system\s*\n+macOS\b/.test(normalizedBody)) {
25+
label = 'os: :apple: macOS';
26+
} else if (/### Operating system\s*\n+Windows\b/.test(normalizedBody)) {
27+
label = 'os: :door: Windows';
28+
} else if (/### Operating system\s*\n+Linux\b/.test(normalizedBody)) {
29+
label = 'os: :penguin: Linux';
30+
}
31+
32+
if (label) {
33+
try {
34+
await github.rest.issues.addLabels({
35+
issue_number: context.issue.number,
36+
owner: context.repo.owner,
37+
repo: context.repo.repo,
38+
labels: [label]
39+
});
40+
} catch (error) {
41+
core.setFailed(`Failed to add label "${label}": ${error.message || error}`);
42+
}
43+
}

.github/workflows/clang-tidy-review.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,25 +9,26 @@ on:
99
jobs:
1010
clang-tidy:
1111
runs-on: ubuntu-latest
12-
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
12+
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-forky-6.9.2-3
1313
steps:
1414
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
1515
with:
1616
fetch-depth: 2
1717
- name: Prepare compile_commands.json
1818
run: |
19-
cmake -G Ninja -B build -DCMAKE_PREFIX_PATH=/opt/qt -DQT_MAJOR_VERSION=6 -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DOPENSSL_ROOT_DIR=/usr/local/lib64
19+
cmake -G Ninja -B build -DQT_MAJOR_VERSION=6 -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1
2020
cd build && ninja
2121
- name: Create results directory
2222
run: |
2323
mkdir clang-tidy-result
2424
- name: Analyze
2525
run: |
2626
/usr/bin/git config --global --add safe.directory "$GITHUB_WORKSPACE"
27-
/usr/bin/git diff -U0 HEAD^ | clang-tidy-diff-15.py -checks='-*,modernize-use-auto,modernize-use-using,modernize-use-nodiscard,modernize-use-nullptr,modernize-use-override,cppcoreguidelines-pro-type-static-cast-downcast' -p1 -path build -export-fixes clang-tidy-result/fixes.yml
27+
/usr/bin/git diff -U0 HEAD^ | clang-tidy-diff-21.py -checks='-*,modernize-use-auto,modernize-use-using,modernize-use-nodiscard,modernize-use-nullptr,modernize-use-override,cppcoreguidelines-pro-type-static-cast-downcast' -p1 -path build -export-fixes clang-tidy-result/fixes.yml
2828
- name: Run clang-tidy-pr-comments action
2929
uses: platisd/clang-tidy-pr-comments@28cfb84edafa771c044bde7e4a2a3fae57463818 # v1.6.1 # >1.4.3 switches to composite method w/ a forced python version and breaks things: https://github.com/actions/setup-python/issues/871
3030
with:
31+
python_path: "/usr/bin/python3"
3132
# The GitHub token (or a personal access token)
3233
github_token: ${{ secrets.GITHUB_TOKEN }}
3334
# The path to the clang-tidy fixes generated previously

.github/workflows/linux-appimage.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
build:
1010
name: Linux Appimage Package
1111
runs-on: ubuntu-latest
12-
container: ghcr.io/nextcloud/continuous-integration-client-appimage-qt6:client-appimage-el8-6.9.3-2
12+
container: ghcr.io/nextcloud/continuous-integration-client-appimage-qt6:client-appimage-el8-6.10.1-1
1313
steps:
1414
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
1515
with:

.github/workflows/linux-clang-compile-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
build:
99
name: Linux Clang compilation and tests
1010
runs-on: ubuntu-latest
11-
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-forky-6.9.2-1
11+
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-forky-6.9.2-3
1212
steps:
1313
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
1414
with:

.github/workflows/linux-gcc-compile-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
build:
99
name: Linux GCC compilation and tests
1010
runs-on: ubuntu-latest
11-
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-forky-6.9.2-1
11+
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-forky-6.9.2-3
1212
steps:
1313
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
1414
with:

.github/workflows/macos-craft-ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,8 @@ jobs:
6666
- name: Add required blueprint repositories
6767
if: steps.cache-craft-restore.outputs.cache-hit != 'true'
6868
run: |
69-
python "${{ env.CRAFT_MASTER_LOCATION }}/CraftMaster.py" --config "${{ env.CRAFT_MASTER_CONFIG }}" --target ${{ env.CRAFT_TARGET }} -c --add-blueprint-repository "https://github.com/nextcloud/craft-blueprints-kde.git|next|"
70-
python "${{ env.CRAFT_MASTER_LOCATION }}/CraftMaster.py" --config "${{ env.CRAFT_MASTER_CONFIG }}" --target ${{ env.CRAFT_TARGET }} -c --add-blueprint-repository "https://github.com/nextcloud/desktop-client-blueprints.git|next|"
69+
python "${{ env.CRAFT_MASTER_LOCATION }}/CraftMaster.py" --config "${{ env.CRAFT_MASTER_CONFIG }}" --target ${{ env.CRAFT_TARGET }} -c --add-blueprint-repository "https://github.com/nextcloud/craft-blueprints-kde.git|master|"
70+
python "${{ env.CRAFT_MASTER_LOCATION }}/CraftMaster.py" --config "${{ env.CRAFT_MASTER_CONFIG }}" --target ${{ env.CRAFT_TARGET }} -c --add-blueprint-repository "https://github.com/nextcloud/desktop-client-blueprints.git|master|"
7171
7272
- name: Setup Craft
7373
if: steps.cache-craft-restore.outputs.cache-hit != 'true'

.github/workflows/sonarcloud.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
build:
99
name: SonarCloud analysis
1010
runs-on: [ubuntu-latest, self-hosted]
11-
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
11+
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-forky-6.9.2-3
1212
env:
1313
SONAR_SERVER_URL: "https://sonarcloud.io"
1414
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
@@ -27,7 +27,7 @@ jobs:
2727
run: |
2828
mkdir build
2929
cd build
30-
cmake .. -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DCMAKE_BUILD_TYPE=Debug -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DQT_MAJOR_VERSION=6 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64 -DBUILD_COVERAGE=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
30+
cmake .. -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_BUILD_TYPE=Debug -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DQT_MAJOR_VERSION=6 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64 -DBUILD_COVERAGE=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
3131
build-wrapper-linux-x86-64 --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} ninja
3232
- name: Run tests
3333
run: |

.github/workflows/windows-build-and-test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ jobs:
3131
if($LASTEXITCODE -ne 0) {exit $LASTEXITCODE}
3232
}
3333
34-
craft --add-blueprint-repository "https://github.com/nextcloud/craft-blueprints-kde.git|stable-4.0|"
35-
craft --add-blueprint-repository "https://github.com/nextcloud/desktop-client-blueprints.git|stable-4.0|"
34+
craft --add-blueprint-repository "https://github.com/nextcloud/craft-blueprints-kde.git|master|"
35+
craft --add-blueprint-repository "https://github.com/nextcloud/desktop-client-blueprints.git|master|"
3636
craft craft
3737
craft --install-deps nextcloud-client
3838

.gitignore

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,6 @@ dlldata.c
9292
# macOS specific
9393
xcuserdata/
9494
**/.DS_Store
95-
**/Carthage/
9695

9796
# Visual C++ cache files
9897
ipch/
@@ -196,8 +195,11 @@ convert.exe
196195
theme.qrc
197196
*.AppImage
198197

199-
# Xcode Build Artifacts
200-
DerivedData
201-
202198
# Swift Package Manager Build Artifacts
203199
.swiftpm_codeql_detected_source_root
200+
201+
# Relative derived data of Xcode workspace
202+
.xcode
203+
204+
# Mac-Crafter build directory
205+
.mac-crafter

AGENTS.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,12 @@ Other platforms like iOS and Android are irrelevant for this project.
2323

2424
| Directory | Description | Agent Action |
2525
|-----------------|-----------------------------------------------------|----------------------|
26+
| `./admin` | Platform-specific build, packaging, and distribution tooling (macOS, Windows, Linux, Nix) | Ignore unless packaging or installer logic must be updated |
2627
| `./admin/osx/mac-crafter` | Build tool for macOS | Ignore unless the build process must be updated |
2728
| `./shell_integration/MacOSX/NextcloudIntegration` | Xcode project for macOS app extensions | Look here first for changes in context of the file provider extension |
28-
| `./translations` | Translation files from Transifex. | Do not modify |
29+
| `./translations` | Translation files from Transifex. | Do not modify |
30+
| `.mac-crafter` | Build artifacts and derived data. | Ignore |
31+
| `.xcode` | Build artifacts and derived data. | Ignore |
2932

3033
## General Guidance
3134

0 commit comments

Comments
 (0)