Skip to content

Commit e46db70

Browse files
authored
Merge branch 'hyperion-project:master' into feature/rgbw-e131-support
2 parents 9f49c4d + 44cec2e commit e46db70

File tree

175 files changed

+2999
-1096
lines changed

Some content is hidden

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

175 files changed

+2999
-1096
lines changed

.github/actions/download-pre-built-deps/action.yml

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,18 @@ inputs:
1010
description: Linux architecture
1111
required: false
1212
default: 'amd64'
13-
qt_version:
14-
type: string
15-
description: Qt version
16-
required: false
17-
default: '6'
1813
build_type:
1914
type: string
2015
description: Build type
2116
required: false
2217
default: 'release'
2318
outputs:
2419
cmakeArgs:
25-
description: "CMake arguments"
20+
description: "Resulting CMake arguments"
2621
value: ${{ steps.download-pre-built-deps.outputs.cmake-args }}
22+
qtVersion:
23+
description: "Determined Qt version"
24+
value: ${{ steps.download-pre-built-deps.outputs.qt-version }}
2725
runs:
2826
using: composite
2927
steps:
@@ -35,8 +33,9 @@ runs:
3533
preBuiltDeps='buildspec.json'
3634
baseURL=$(jq -r '.baseUrl' $preBuiltDeps)
3735
version=$(jq -r '.version' $preBuiltDeps)
38-
downloadHash=$(jq -r '.hashes .${{ inputs.os }} .${{ inputs.architecture }} .qt${{ inputs.qt_version }} .${{ inputs.build_type }}' $preBuiltDeps)
39-
downloadFilename=${{ inputs.os }}-${{ inputs.architecture }}-qt${{ inputs.qt_version }}-${{ inputs.build_type }}-$version.tar.gz
36+
downloadHash=$(jq -r '.hashes .${{ inputs.os }} .${{ inputs.architecture }} .${{ inputs.build_type }}' $preBuiltDeps)
37+
qtVersion=$(jq -r '.hashes .${{ inputs.os }} .${{ inputs.architecture }} .qt_version' $preBuiltDeps)
38+
downloadFilename=${{ inputs.os }}-${{ inputs.architecture }}-qt$qtVersion-${{ inputs.build_type }}-$version.tar.gz
4039
echo 💾 Download "$downloadFilename"...
4140
curl -OL "$baseURL"/"$version"/"$downloadFilename"
4241
if [[ ${{ inputs.os }} == 'windows' ]]; then
@@ -55,7 +54,9 @@ runs:
5554
fi
5655
echo ✅ Hash check passed.
5756
echo "cmake-args="-DUSE_PRE_BUILT_DEPS=ON -DPRE_BUILT_DEPS_DIR=$destDir"" >> $GITHUB_OUTPUT
57+
echo "qt-version=$qtVersion" >> $GITHUB_OUTPUT
5858
else
5959
echo ❌ Hash check failed.
6060
echo "cmake-args=" >> $GITHUB_OUTPUT
61+
echo "qt-version=" >> $GITHUB_OUTPUT
6162
fi

.github/actions/download-pre-built-deps/buildspec.json

Lines changed: 49 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,111 +1,95 @@
11
{
2-
"version": "2025-10-18",
2+
"version": "2025-11-01",
33
"baseUrl": "https://github.com/hyperion-project/hyperion-deps/releases/download",
44
"hashes": {
55
"debian_bookworm": {
66
"amd64": {
7-
"qt6": {
8-
"debug": "a905db1cb0ec7f2099f9703e2b97f15d850b7aac69657416d6f4c0bda4256a6b",
9-
"release": "a7216c688c5a5ff4b6e1c534c9c939e422a675803a5831aaffbe7fc7ba173894"
10-
}
7+
"qt_version": "6.4.2",
8+
"debug": "06c425db6251dcd6109bc07bcb2aa1cfeb19139676651552b2ebaf28a33c854b",
9+
"release": "22fdfa2338b18883fb047954c895fdaae094ff5ff309da22cf9317912d425d8a"
1110
},
1211
"arm64": {
13-
"qt6": {
14-
"debug": "083ed521e20894138c751dc3406363167af39f846e080c0d8b12329f4468e59f",
15-
"release": "7ba77697a85496ae467249046db65f628aee3c13fbe16f1b17878eb59de42f80"
16-
}
12+
"qt_version": "6.4.2",
13+
"debug": "51b4e1f2bdb426f517e9fb620c1b4fb199a59f999009dd096ca1a5a3c75438fd",
14+
"release": "393bbc164584842ee463256f13a1cd49388d3d2ee29f00f667ac0c51339d0890"
1715
},
1816
"armv6": {
19-
"qt6": {
20-
"debug": "6a89a75d6c6bae815fa9357cf0c342f0ae0fa78be64d8d99d95d95b69e803bf7",
21-
"release": "ad756f9154b8b1a5bae7dc47f9a8a86264f46bf52e3d1457b90038d6640fd5d6"
22-
}
17+
"qt_version": "6.4.2",
18+
"debug": "6666953af031134e64c2a1e3424a34c356c7bfc67deee1f3b71474cb4c0ea71b",
19+
"release": "db3c3163fb478377e3510f9d6b30bbbfab4af5439b35b8e78bdd7997002f4357"
2320
},
2421
"armv7": {
25-
"qt6": {
26-
"debug": "acc3ea2126f84741eb0a803344f4b626d44bc739cb556416f2594616064fcbcb",
27-
"release": "75f343a6f015b58463e15762e8af79309656b648de1e8550b2e41aeea71c3a5e"
28-
}
22+
"qt_version": "6.4.2",
23+
"debug": "21011415966aa71a70ef5f4b6c4f9c8fbe6657bbe1270981e6bafe0bfe176644",
24+
"release": "864d173d7d5777852402eef92263f3dcf6628fc640ded86c415ea38d8b451197"
2925
}
3026
},
3127
"debian_bullseye": {
3228
"amd64": {
33-
"qt6": {
34-
"debug": "434603d57ffee0c4b6640dfcd1b06bb8c745c199d8a81d50c1cc304244bcf7ff",
35-
"release": "bc6540399f8fb198e194fc6080f0056267bce827511ade8f13843eb92f987bca"
36-
}
29+
"qt_version": "6.4.2",
30+
"debug": "f0bc24c51b535152416fe3e0e26380f52398014d14b545d7405165aab57cf4c7",
31+
"release": "7f77f48490b15998c5e0bd521f5171ff2e84da48f8a64a352e326d6251bca326"
3732
},
3833
"arm64": {
39-
"qt6": {
40-
"debug": "01e2b25c191dac140fe9c24f3d3e22bf1020ed8ee44867d25e021b0eded8699e",
41-
"release": "25d25009e563899fd1abfd2ca079b3e396f20774a680a991c086d5f5430dd5a8"
42-
}
34+
"qt_version": "6.4.2",
35+
"debug": "fedf553b11146ffb78b21edf9a4c2baa4a7762c8ff48a1dbd17df8eb68dcac07",
36+
"release": "1da73a58405df370e93a63e1e543edd77e4c17a36b9a418160e681023767663e"
4337
},
4438
"armv6": {
45-
"qt5": {
46-
"debug": "8b253cac7614e5debda8b8749d963b1d944f54198fd12b3f63e31bfd4a4e57e6",
47-
"release": "8c3f23457e5f033f391986fa860b0f7835053fcfdc34ba4c8e4f345349ea5610"
48-
}
39+
"qt_version": "5.15.2",
40+
"debug": "ded600345ddf13a720dea9526851c3c9a0c3c6f2d8a09562522c68359172f087",
41+
"release": "154ef53cceb244a38017ebfb93df8648759d6fa136fcc1f1ed56b3e52e1b2e11"
4942
},
5043
"armv7": {
51-
"qt6": {
52-
"debug": "8099bef7e66a14b83736dea63f3489b1387533bd02107ef41b259323a0379086",
53-
"release": "9231e3dff694d4cb2f513ec087574b01fae8f8d48ca30f97a5d30d194e8c5b71"
54-
}
44+
"qt_version": "6.4.2",
45+
"debug": "d718231973b00d074c180efa9c8e67e889de13e285c9cc4636b2438a6c2cbce5",
46+
"release": "2aa94250e99f348202d87bfb668053b503ed1a0bb96430b27764080506c89367"
5547
}
5648
},
5749
"debian_trixie": {
5850
"amd64": {
59-
"qt6": {
60-
"debug": "38d9ebb0e97120ec815977f855eb5c44681f8a312f70a0fb0e3e0d7fc1760ea4",
61-
"release": "6b8513dd42036428b704d775c5e4e39bd324485bd9d54ff49ad6056259e53425"
62-
}
51+
"qt_version": "6.8.2",
52+
"debug": "6c7a63ff73ab6ec215d18a3aa1a61d75adc70d38f8b8cf31bbb7552d64848ce3",
53+
"release": "a0546be2ce99d482ecce7e9bd72444784717f841ab9678049337fc0ff4f3fc67"
6354
},
6455
"arm64": {
65-
"qt6": {
66-
"debug": "042a822aac4c0567b4074fe7a665f1fc1a61e6f3eb9a035c113f585ed2ee11c7",
67-
"release": "322cd767e3b4e7d18166af091cb83bac8c7b7001552da0a379f397c680da278f"
68-
}
56+
"qt_version": "6.8.2",
57+
"debug": "b82a0e8a12ae5171a9e2d410558d9d2ea41b1347abb9584b401cf0afcf3a816d",
58+
"release": "a05ae0959a59bf2f6027a3e6df57c66e5cd0ff4b528cbc8fea62fda12949719d"
6959
},
7060
"armv6": {
71-
"qt6": {
72-
"debug": "7b72cf3b1f98000d60789ec19c33afa05c368198717bf9e4609c0c1a0a721ede",
73-
"release": "8bffeb651aa7c3c0337567c949a7587720e130c4da64078408d0fd9e8edcac42"
74-
}
61+
"qt_version": "6.8.2",
62+
"debug": "7dacde55ac25973658e94eb873529800812a534113d3bc2e65af14f781b7cceb",
63+
"release": "9aec7657d52171259bc50319c2079a34136b1f96a4cf23892cb14d016121cde3"
7564
},
7665
"armv7": {
77-
"qt6": {
78-
"debug": "6f8df2ce86dd0cd3006ddb9502ac383f764c6bee2f7ec7229b0b4b66fa0abe4a",
79-
"release": "dbb31da97e047bfb77fb872d54f8bf38909cfa369d279942f9de9c4ca807189f"
80-
}
66+
"qt_version": "6.8.2",
67+
"debug": "6f0df0bb7671a38746f0af1897b1c306c51c34d94f453beba912430c7e63234a",
68+
"release": "349e2bcba3b2361840f03110807489b25e5b1de186483a713ae990f825358736"
8169
}
8270
},
8371
"macos": {
8472
"arm64": {
85-
"qt6": {
86-
"debug": "15c33416e706ebb9c32b9785e9b47e05c2eed484a729e2eb672966586bf248da",
87-
"release": "8fcbc9ac2f753d312a62f50ad39632d5befde3397b53d00de6e6803b8a0cf889"
88-
}
73+
"qt_version": "6.9.3",
74+
"debug": "9b4566c573535edeb02fbf76925d8a0c6881b29b32ae85ef1af6dfd7ada1fa39",
75+
"release": "76923c8d06f2aa7519367a85a117bfd58183848a9368d3c244b248f8691b4d81"
8976
},
9077
"x64": {
91-
"qt6": {
92-
"debug": "5873403e647af0d199cd79857058030894d4175ee6d1df237b0212f69fb2cc98",
93-
"release": "bd6c5704423f1f782771ae68695960554b9b56ec43f83dff3ce938f067fb2a36"
94-
}
78+
"qt_version": "6.9.3",
79+
"debug": "6ae7fec1f607577a004f29125cad6c2d0877dc88b1589509625bfa139c8d7e2b",
80+
"release": "d8eaf0cb1694e3b0ee0608fe2d70351e7aa6c43074a373573d6411c93daf4b98"
9581
}
9682
},
9783
"windows": {
9884
"arm64": {
99-
"qt6": {
100-
"release": "0f5a324b1d852dd7d2093e3c275bcd3209e368fda32dc8c760f3e26931c687e8",
101-
"relwithdebinfo": "68e6e468b0cc9ff47a54454b120cbf47ef84a575d2a1da9bd7912132799fda1c"
102-
}
85+
"qt_version": "6.9.3",
86+
"release": "100d981764e5cd761bba0edf25dc46a0975be5f56766d34a5fbdb66053929a91",
87+
"relwithdebinfo": "d7c51b3f8d1903e7babb379e1b30210ffbcd3a7b18bbafbc5d7b8030653dfee6"
10388
},
10489
"x64": {
105-
"qt6": {
106-
"release": "de989913f047aff4d5f8bf5ee65ebf7b14aaa9478daabfb361e52883c100a181",
107-
"relwithdebinfo": "5741b925ec912e1348f4e0b549aa0bb33b24e31d303236bb6f78399646aed3a2"
108-
}
90+
"qt_version": "6.9.3",
91+
"release": "9925c722758f09b7174b3a861a754c100a03e55f9fae132bd4c428d9744ca2f3",
92+
"relwithdebinfo": "7b693d95f221dd678c70660f41f1f9cf27b146b1ab6f5732096c6641b5b8a5bf"
10993
}
11094
}
11195
}

.github/workflows/codeql.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,15 +36,15 @@ jobs:
3636
submodules: recursive
3737

3838
- name: 🔁 Initialize CodeQL
39-
uses: github/codeql-action/init@v3
39+
uses: github/codeql-action/init@v4
4040
with:
4141
languages: ${{ matrix.language }}
4242
queries: +security-and-quality
4343
config-file: ./.github/config/codeql.yml
4444

4545
- name: 👷 Build (Python & JavaScript)
4646
if: ${{ matrix.language != 'cpp' }}
47-
uses: github/codeql-action/autobuild@v3
47+
uses: github/codeql-action/autobuild@v4
4848

4949
- name: 📥 Install jq (C++)
5050
if: ${{ matrix.language == 'cpp' }}
@@ -70,7 +70,7 @@ jobs:
7070
BUILD_TYPE: ${{ github.event_name == 'pull_request' && 'debug' || 'release' }}
7171

7272
- name: 🏃 Perform CodeQL Analysis
73-
uses: github/codeql-action/analyze@v3
73+
uses: github/codeql-action/analyze@v4
7474
with:
7575
category: "/language:${{ matrix.language }}"
7676
upload: False
@@ -86,12 +86,12 @@ jobs:
8686
output: sarif-results/${{ matrix.language }}.sarif
8787

8888
- name: 📦 Upload SARIF
89-
uses: github/codeql-action/upload-sarif@v3
89+
uses: github/codeql-action/upload-sarif@v4
9090
with:
9191
sarif_file: sarif-results/${{ matrix.language }}.sarif
9292

9393
- name: 📦 Upload loc as a Build Artifact
94-
uses: actions/upload-artifact@v4
94+
uses: actions/upload-artifact@v5
9595
with:
9696
name: ${{ matrix.language }}.sarif
9797
path: sarif-results

.github/workflows/debian.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@ jobs:
7171
with:
7272
os: debian_${{ inputs.codename }}
7373
architecture: ${{ matrix.os.architecture[0] }}
74-
qt_version: ${{ inputs.codename == 'bullseye' && matrix.os.architecture[0] == 'armv6' && '5' || '6' }}
7574
build_type: ${{ inputs.event_name == 'pull_request' && 'debug' || 'release' }}
7675

7776
- name: 👷 Build ${{ env.HINT }}
@@ -87,7 +86,7 @@ jobs:
8786
-e LC_ALL="C.UTF-8" \
8887
ghcr.io/hyperion-project/debian:${{ env.DOCKER_TAG }} \
8988
/bin/bash -c "
90-
git config --global --add safe.directory /source &&
89+
git config --global --add safe.directory /source &&
9190
cmake --preset linux-${{ env.BUILD_TYPE }} ${{ steps.dependencies.outputs.cmakeArgs }} -DPLATFORM=${{ matrix.os.platform }} ${{ env.CPACK_SYSTEM_PROCESSOR }} &&
9291
cmake --build --preset linux-${{ env.BUILD_TYPE }} --target package &&
9392
cp /source/build/Hyperion-* /deploy/ 2>/dev/null"
@@ -100,7 +99,7 @@ jobs:
10099

101100
- name: 📦 Upload
102101
if: ${{ inputs.publish || inputs.event_name == 'pull_request' }}
103-
uses: actions/upload-artifact@v4
102+
uses: actions/upload-artifact@v5
104103
with:
105104
name: ${{ inputs.event_name == 'pull_request' && env.NAME || format('artifact-{0}', env.NAME) }}
106105
path: ${{ inputs.event_name == 'pull_request' && 'deploy/*.tar.gz' || 'deploy/Hyperion-*' }}

.github/workflows/macos.yml

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ jobs:
4242
- name: ⬇ Checkout
4343
uses: actions/checkout@v5
4444
with:
45-
submodules: recursive
45+
submodules: recursive
4646
fetch-depth: 0 # Ensures all tags are fetched
4747

4848
- name: 🔧 Prepare
@@ -55,12 +55,6 @@ jobs:
5555
echo -n "+nightly$(date '+%Y%m%d')" >> .version
5656
fi
5757
58-
- name: 📥 Install dependencies
59-
uses: tecolicom/actions-use-homebrew-tools@v1
60-
with:
61-
tools: qt@6 coreutils
62-
key: ${{ runner.os }}-${{ matrix.os.architecture }}-homebrew-packages
63-
6458
- name: 💾 Download Pre-Build Dependencies
6559
id: dependencies
6660
uses: ./.github/actions/download-pre-built-deps
@@ -69,10 +63,20 @@ jobs:
6963
architecture: ${{ matrix.os.architecture }}
7064
build_type: ${{ inputs.event_name == 'pull_request' && 'debug' || 'release' }}
7165

66+
- name: 📥 Install Qt ${{ env.QT_VERSION }}
67+
uses: jurplel/install-qt-action@v4
68+
with:
69+
version: ${{ env.QT_VERSION }}
70+
target: 'desktop'
71+
modules: 'qtserialport qtwebsockets'
72+
cache: 'true'
73+
cache-key-prefix: 'cache-qt-macos'
74+
env:
75+
QT_VERSION: ${{ steps.dependencies.outputs.qtVersion != '' && steps.dependencies.outputs.qtVersion || '' }}
76+
7277
- name: 👷 Build ${{ env.HINT }}
7378
shell: bash
7479
run: |
75-
# Build
7680
cmake --preset macos-${{ env.BUILD_TYPE }} ${{ steps.dependencies.outputs.cmakeArgs }}
7781
cmake --build --preset macos-${{ env.BUILD_TYPE }} --target package
7882
env:
@@ -81,7 +85,7 @@ jobs:
8185

8286
- name: 📦 Upload
8387
if: ${{ inputs.publish || inputs.event_name == 'pull_request' }}
84-
uses: actions/upload-artifact@v4
88+
uses: actions/upload-artifact@v5
8589
with:
8690
name: ${{ inputs.event_name == 'pull_request' && env.NAME || format('artifact-{0}', env.NAME) }}
8791
path: 'build/Hyperion-*'

.github/workflows/nightly.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ jobs:
8282
- uses: actions/checkout@v5
8383

8484
- name: 💾 Download artifacts
85-
uses: actions/download-artifact@v5
85+
uses: actions/download-artifact@v6
8686
with:
8787
pattern: artifact-*
8888
merge-multiple: true

.github/workflows/push_pull.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ jobs:
7070
echo "VERSION=$(tr -d '\n' < .version)" >> $GITHUB_ENV
7171
7272
- name: 💾 Download artifacts
73-
uses: actions/download-artifact@v5
73+
uses: actions/download-artifact@v6
7474
with:
7575
pattern: artifact-*
7676
path: all-artifacts

0 commit comments

Comments
 (0)