Skip to content

Commit c2e6cb1

Browse files
authored
Merge 2.8 RC 1 into Release (#2596)
2 parents e72bfe1 + 625be3a commit c2e6cb1

File tree

391 files changed

+61517
-51605
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

391 files changed

+61517
-51605
lines changed

.github/workflows/build_all.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: BuildAll
2+
3+
on: workflow_dispatch
4+
5+
jobs:
6+
buildAssets:
7+
uses: ./.github/workflows/part_assets.yml
8+
permissions:
9+
contents: read
10+
11+
buildLinux-AppImage:
12+
needs: buildAssets
13+
uses: ./.github/workflows/part_appimage.yml
14+
secrets: inherit
15+
permissions:
16+
contents: read
17+
18+
buildMac-AMD64:
19+
needs: buildAssets
20+
uses: ./.github/workflows/part_macos_amd64.yml
21+
secrets: inherit
22+
permissions:
23+
contents: read
24+
25+
buildMac-M1:
26+
needs: buildAssets
27+
uses: ./.github/workflows/part_macos_m1.yml
28+
secrets: inherit
29+
permissions:
30+
contents: read
31+
32+
buildWin-X64:
33+
needs: buildAssets
34+
uses: ./.github/workflows/part_win_x64.yml
35+
secrets: inherit
36+
permissions:
37+
contents: read

.github/workflows/build_linux.yml

Lines changed: 7 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -4,54 +4,13 @@ on: workflow_dispatch
44

55
jobs:
66
buildAssets:
7-
uses: ./.github/workflows/build_assets.yml
7+
uses: ./.github/workflows/part_assets.yml
8+
permissions:
9+
contents: read
810

911
buildLinux-AppImage:
1012
needs: buildAssets
11-
# Needs to stay on 22.04 as long as we're using manylinux_2_28
12-
# as libxcb-cursor0 in 22.04 supports glibc >= 2.17
13-
runs-on: ubuntu-22.04
14-
env:
15-
PYTHON_VERSION: "3.13"
16-
LINUX_TAG: "manylinux_2_28"
17-
LINUX_ARCH: "x86_64"
18-
steps:
19-
- name: Python Setup
20-
uses: actions/setup-python@v5
21-
with:
22-
python-version: "3.13"
23-
architecture: x64
24-
25-
- name: Install Packages (apt)
26-
run: |
27-
sudo apt update
28-
sudo apt install libxcb-cursor0
29-
30-
- name: Install Packages (pip)
31-
run: pip install python-appimage setuptools
32-
33-
- name: Checkout Source
34-
uses: actions/checkout@v4
35-
36-
- name: Download Artifacts
37-
uses: actions/download-artifact@v4
38-
with:
39-
name: nw-assets
40-
path: novelwriter/assets
41-
42-
- name: Build AppImage
43-
id: build
44-
run: |
45-
wget https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-$LINUX_ARCH.AppImage
46-
chmod +x appimagetool-$LINUX_ARCH.AppImage
47-
export APPIMAGE_TOOL_EXEC="$(pwd)/appimagetool-$LINUX_ARCH.AppImage"
48-
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $GITHUB_OUTPUT
49-
python pkgutils.py build-appimage $LINUX_TAG $LINUX_ARCH $PYTHON_VERSION
50-
51-
- name: Upload Artifacts
52-
uses: actions/upload-artifact@v4
53-
with:
54-
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-Linux-AppImage
55-
path: dist_appimage/*.AppImage*
56-
if-no-files-found: error
57-
retention-days: 14
13+
uses: ./.github/workflows/part_appimage.yml
14+
secrets: inherit
15+
permissions:
16+
contents: read

.github/workflows/build_mac.yml

Lines changed: 11 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -4,66 +4,20 @@ on: workflow_dispatch
44

55
jobs:
66
buildAssets:
7-
uses: ./.github/workflows/build_assets.yml
7+
uses: ./.github/workflows/part_assets.yml
8+
permissions:
9+
contents: read
810

911
buildMac-AMD64:
1012
needs: buildAssets
11-
runs-on: macos-latest
12-
env:
13-
PYTHON_VERSION: "3.13"
14-
PACKAGE_ARCH: x86_64
15-
MINICONDA_ARCH: x86_64
16-
steps:
17-
- name: Checkout
18-
uses: actions/checkout@v4
19-
20-
- name: Download Artifacts
21-
uses: actions/download-artifact@v4
22-
with:
23-
name: nw-assets
24-
path: novelwriter/assets
25-
26-
- name: Build App Bundle
27-
id: build
28-
run: |
29-
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $GITHUB_OUTPUT
30-
./setup/macos/build.sh $PYTHON_VERSION $PACKAGE_ARCH $MINICONDA_ARCH
31-
32-
- name: Upload DMG
33-
uses: actions/upload-artifact@v4
34-
with:
35-
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-MacOS-AMD64-DMG
36-
path: dist_macos/*.dmg*
37-
if-no-files-found: error
38-
retention-days: 14
13+
uses: ./.github/workflows/part_macos_amd64.yml
14+
secrets: inherit
15+
permissions:
16+
contents: read
3917

4018
buildMac-M1:
4119
needs: buildAssets
42-
runs-on: macos-latest
43-
env:
44-
PYTHON_VERSION: "3.13"
45-
PACKAGE_ARCH: aarch64
46-
MINICONDA_ARCH: arm64
47-
steps:
48-
- name: Checkout
49-
uses: actions/checkout@v4
50-
51-
- name: Download Artifacts
52-
uses: actions/download-artifact@v4
53-
with:
54-
name: nw-assets
55-
path: novelwriter/assets
56-
57-
- name: Build App Bundle
58-
id: build
59-
run: |
60-
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $GITHUB_OUTPUT
61-
./setup/macos/build.sh $PYTHON_VERSION $PACKAGE_ARCH $MINICONDA_ARCH
62-
63-
- name: Upload DMG
64-
uses: actions/upload-artifact@v4
65-
with:
66-
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-MacOS-M1-DMG
67-
path: dist_macos/*.dmg*
68-
if-no-files-found: error
69-
retention-days: 14
20+
uses: ./.github/workflows/part_macos_m1.yml
21+
secrets: inherit
22+
permissions:
23+
contents: read

.github/workflows/build_win.yml

Lines changed: 8 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -4,59 +4,13 @@ on: workflow_dispatch
44

55
jobs:
66
buildAssets:
7-
uses: ./.github/workflows/build_assets.yml
7+
uses: ./.github/workflows/part_assets.yml
8+
permissions:
9+
contents: read
810

9-
buildWin64:
11+
buildWin-X64:
1012
needs: buildAssets
11-
runs-on: windows-2022
12-
steps:
13-
- name: Python Setup
14-
uses: actions/setup-python@v5
15-
with:
16-
python-version: "3.13"
17-
architecture: x64
18-
19-
- name: Checkout Source
20-
uses: actions/checkout@v4
21-
22-
- name: Download Assets
23-
uses: actions/download-artifact@v4
24-
with:
25-
name: nw-assets
26-
path: novelwriter/assets
27-
28-
- name: Build Setup Installer
29-
id: build
30-
run: |
31-
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $Env:GITHUB_OUTPUT
32-
python pkgutils.py build-win-exe
33-
34-
- name: Upload Unsigned Artifacts
35-
id: upload-unsigned-artifact
36-
uses: actions/upload-artifact@v4
37-
with:
38-
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-Win-Setup
39-
path: dist/*.exe
40-
if-no-files-found: error
41-
retention-days: 14
42-
43-
- name: Submit Signing Request
44-
uses: signpath/github-action-submit-signing-request@v1
45-
with:
46-
api-token: "${{ secrets.SIGNPATH_API_TOKEN }}"
47-
organization-id: "0471e52c-66fa-4e9a-bfb9-36167095ca3f"
48-
project-slug: "novelWriter"
49-
signing-policy-slug: "release-signing "
50-
github-artifact-id: "${{ steps.upload-unsigned-artifact.outputs.artifact-id }}"
51-
wait-for-completion: true
52-
output-artifact-directory: "dist/"
53-
parameters: |
54-
version: "${{ steps.build.outputs.BUILD_VERSION }}"
55-
56-
- name: Upload Signed Artifacts
57-
uses: actions/upload-artifact@v4
58-
with:
59-
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-Win-Setup-Signed
60-
path: dist/*.exe
61-
if-no-files-found: error
62-
retention-days: 14
13+
uses: ./.github/workflows/part_win_x64.yml
14+
secrets: inherit
15+
permissions:
16+
contents: read

.github/workflows/build_win_launcher.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,11 @@ on: workflow_dispatch
55
jobs:
66
buildLauncherWin64:
77
runs-on: windows-latest
8+
permissions:
9+
contents: read
810
steps:
911
- name: Checkout Source
10-
uses: actions/checkout@v4
12+
uses: actions/checkout@v5
1113

1214
- name: Build Launcher
1315
id: build

.github/workflows/i18n.yml

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,25 +8,30 @@ on:
88
jobs:
99
buildI18n:
1010
runs-on: ubuntu-latest
11+
permissions:
12+
contents: read
1113
steps:
1214
- name: Python Setup
13-
uses: actions/setup-python@v5
15+
uses: actions/setup-python@v6
1416
with:
1517
python-version: "3.13"
1618
architecture: x64
17-
- name: Install Packages (apt)
19+
20+
- name: Checkout Source
21+
uses: actions/checkout@v5
22+
23+
- name: Install System Packages
1824
run: |
1925
sudo apt update
2026
sudo apt install qttools5-dev-tools
21-
- name: Checkout Source
22-
uses: actions/checkout@v4
27+
2328
- name: Build Assets
2429
run: python pkgutils.py qtlrelease
30+
2531
- name: Upload Artifacts
2632
uses: actions/upload-artifact@v4
2733
with:
2834
name: nw-i18n
29-
path: |
30-
novelwriter/assets/i18n/*.qm
35+
path: novelwriter/assets/i18n/*.qm
3136
if-no-files-found: error
3237
retention-days: 7
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
name: Part-AppImage
2+
3+
on: workflow_call
4+
5+
jobs:
6+
buildLinux-AppImage:
7+
# Needs to stay on 22.04 as long as we're using manylinux_2_28
8+
# as libxcb-cursor0 in 22.04 supports glibc >= 2.17
9+
runs-on: ubuntu-22.04
10+
permissions:
11+
contents: read
12+
env:
13+
PYTHON_VERSION: "3.13"
14+
LINUX_TAG: "manylinux_2_28"
15+
LINUX_ARCH: "x86_64"
16+
steps:
17+
- name: Python Setup
18+
uses: actions/setup-python@v6
19+
with:
20+
python-version: "3.13"
21+
architecture: x64
22+
23+
- name: Install Packages (apt)
24+
run: |
25+
sudo apt update
26+
sudo apt install libxcb-cursor0
27+
28+
- name: Install Packages (pip)
29+
run: pip install python-appimage setuptools
30+
31+
- name: Checkout Source
32+
uses: actions/checkout@v5
33+
34+
- name: Download Artifacts
35+
uses: actions/download-artifact@v4
36+
with:
37+
name: nw-assets
38+
path: novelwriter/assets
39+
40+
- name: Build AppImage
41+
id: build
42+
run: |
43+
wget https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-$LINUX_ARCH.AppImage
44+
chmod +x appimagetool-$LINUX_ARCH.AppImage
45+
export APPIMAGE_TOOL_EXEC="$(pwd)/appimagetool-$LINUX_ARCH.AppImage"
46+
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $GITHUB_OUTPUT
47+
python pkgutils.py build-appimage $LINUX_TAG $LINUX_ARCH $PYTHON_VERSION
48+
49+
- name: Upload Artifacts
50+
uses: actions/upload-artifact@v4
51+
with:
52+
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-Linux-AppImage
53+
path: dist_appimage/*.AppImage*
54+
if-no-files-found: error
55+
retention-days: 14

0 commit comments

Comments
 (0)