Skip to content

Commit 876dc94

Browse files
committed
try using Wine
1 parent 9855fc2 commit 876dc94

8 files changed

Lines changed: 292 additions & 66 deletions
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
name: Run CTT-Remote (Linux)
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
workflow_dispatch:
9+
10+
jobs:
11+
run-ctt-remote:
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
- name: Checkout repository
16+
uses: actions/checkout@v4
17+
18+
- name: Setup Node.js 24
19+
uses: actions/setup-node@v4
20+
with:
21+
node-version: '24'
22+
cache: 'npm'
23+
24+
- name: Enable 32-bit architecture
25+
run: |
26+
sudo dpkg --add-architecture i386
27+
sudo apt-get update
28+
29+
- name: Install 32-bit libraries for Z-Wave binaries
30+
run: |
31+
sudo apt-get install -y libc6:i386 libstdc++6:i386
32+
33+
- name: Install Wine
34+
run: |
35+
sudo apt-get install -y wine wine32
36+
37+
- name: Download and install Wine Mono
38+
run: |
39+
wget -q https://dl.winehq.org/wine/wine-mono/9.0.0/wine-mono-9.0.0-x86.msi -O /tmp/wine-mono.msi
40+
# Initialize Wine prefix first
41+
WINEDEBUG=-all wineboot --init
42+
# Install Wine Mono
43+
WINEDEBUG=-all wine msiexec /i /tmp/wine-mono.msi /qn
44+
45+
- name: Verify Wine setup
46+
run: |
47+
wine --version
48+
WINEDEBUG=-all wine cmd /c echo "Wine is working"
49+
50+
- name: Extract appdata.tgz
51+
run: tar -xzvf appdata.tgz
52+
53+
- name: Make Z-Wave binaries executable
54+
run: chmod +x zwave_stack/*.elf
55+
56+
- name: Test Z-Wave binary
57+
run: |
58+
./zwave_stack/ZW_zwave_ncp_serial_api_controller_25_9_0_x86_REALTIME_DEBUG.elf --help
59+
60+
- name: Test CTT-Remote with Wine
61+
run: |
62+
cd CTT-Remote
63+
WINEDEBUG=-all wine ./CTT-Remote.exe --help
64+
65+
- name: Install npm dependencies
66+
run: npm install
67+
68+
- name: Start all services (native Z-Wave + Wine CTT-Remote + WebSocket server)
69+
run: npm start
70+
timeout-minutes: 60

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
node_modules/
22

33
# CTT lock file
4-
Project/lock
4+
Project/lock
5+
6+
# AppData folder (extracted from appdata.tgz)
7+
appdata/

Project/zwave-js.cttsln

Lines changed: 48 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -10440,57 +10440,57 @@
1044010440
<SnifferVersion>2</SnifferVersion>
1044110441
<SnifferRevision>55</SnifferRevision>
1044210442
</Zniffer>
10443-
<FirstController>
10444-
<Alias>Controller1</Alias>
10445-
<DevType>Controller</DevType>
10446-
<SName>localhost</SName>
10447-
<SPort>5001</SPort>
10448-
<SType>TCP</SType>
10449-
<ChipSeries>ZW080x</ChipSeries>
10450-
<Library>ControllerBridgeLib</Library>
10451-
<VersionNumbers>7.23</VersionNumbers>
10452-
<ZnifferChipType>0</ZnifferChipType>
10453-
<SnifferVersion>0</SnifferVersion>
10454-
<SnifferRevision>0</SnifferRevision>
10443+
<FirstController>
10444+
<Alias>Controller1</Alias>
10445+
<DevType>Controller</DevType>
10446+
<SName>localhost</SName>
10447+
<SPort>5001</SPort>
10448+
<SType>TCP</SType>
10449+
<ChipSeries>ZW050x</ChipSeries>
10450+
<Library>ControllerBridgeLib</Library>
10451+
<VersionNumbers>6.84</VersionNumbers>
10452+
<ZnifferChipType>0</ZnifferChipType>
10453+
<SnifferVersion>0</SnifferVersion>
10454+
<SnifferRevision>0</SnifferRevision>
1045510455
</FirstController>
10456-
<ThirdController>
10457-
<Alias>Controller3</Alias>
10458-
<DevType>Controller</DevType>
10459-
<SName>localhost</SName>
10460-
<SPort>5002</SPort>
10461-
<SType>TCP</SType>
10462-
<ChipSeries>ZW080x</ChipSeries>
10463-
<Library>ControllerBridgeLib</Library>
10464-
<VersionNumbers>7.23</VersionNumbers>
10465-
<ZnifferChipType>0</ZnifferChipType>
10466-
<SnifferVersion>0</SnifferVersion>
10467-
<SnifferRevision>0</SnifferRevision>
10456+
<ThirdController>
10457+
<Alias>Controller3</Alias>
10458+
<DevType>Controller</DevType>
10459+
<SName>localhost</SName>
10460+
<SPort>5002</SPort>
10461+
<SType>TCP</SType>
10462+
<ChipSeries>ZW050x</ChipSeries>
10463+
<Library>ControllerBridgeLib</Library>
10464+
<VersionNumbers>6.84</VersionNumbers>
10465+
<ZnifferChipType>0</ZnifferChipType>
10466+
<SnifferVersion>0</SnifferVersion>
10467+
<SnifferRevision>0</SnifferRevision>
1046810468
</ThirdController>
10469-
<FirstEndDevice>
10470-
<Alias>EndDevice1</Alias>
10471-
<DevType>EndDevice</DevType>
10472-
<SName>localhost</SName>
10473-
<SPort>5003</SPort>
10474-
<SType>TCP</SType>
10475-
<ChipSeries>ZW080x</ChipSeries>
10476-
<Library>EndDeviceLib</Library>
10477-
<VersionNumbers>7.23</VersionNumbers>
10478-
<ZnifferChipType>0</ZnifferChipType>
10479-
<SnifferVersion>0</SnifferVersion>
10480-
<SnifferRevision>0</SnifferRevision>
10469+
<FirstEndDevice>
10470+
<Alias>EndDevice1</Alias>
10471+
<DevType>EndDevice</DevType>
10472+
<SName>localhost</SName>
10473+
<SPort>5003</SPort>
10474+
<SType>TCP</SType>
10475+
<ChipSeries>ZW050x</ChipSeries>
10476+
<Library>EndDeviceLib</Library>
10477+
<VersionNumbers>6.84</VersionNumbers>
10478+
<ZnifferChipType>0</ZnifferChipType>
10479+
<SnifferVersion>0</SnifferVersion>
10480+
<SnifferRevision>0</SnifferRevision>
1048110481
</FirstEndDevice>
10482-
<SecondEndDevice>
10483-
<Alias>EndDevice2</Alias>
10484-
<DevType>EndDevice</DevType>
10485-
<SName>localhost</SName>
10486-
<SPort>5004</SPort>
10487-
<SType>TCP</SType>
10488-
<ChipSeries>ZW080x</ChipSeries>
10489-
<Library>EndDeviceLib</Library>
10490-
<VersionNumbers>7.23</VersionNumbers>
10491-
<ZnifferChipType>0</ZnifferChipType>
10492-
<SnifferVersion>0</SnifferVersion>
10493-
<SnifferRevision>0</SnifferRevision>
10482+
<SecondEndDevice>
10483+
<Alias>EndDevice2</Alias>
10484+
<DevType>EndDevice</DevType>
10485+
<SName>localhost</SName>
10486+
<SPort>5004</SPort>
10487+
<SType>TCP</SType>
10488+
<ChipSeries>ZW050x</ChipSeries>
10489+
<Library>EndDeviceLib</Library>
10490+
<VersionNumbers>6.84</VersionNumbers>
10491+
<ZnifferChipType>0</ZnifferChipType>
10492+
<SnifferVersion>0</SnifferVersion>
10493+
<SnifferRevision>0</SnifferRevision>
1049410494
</SecondEndDevice>
1049510495
<RfRegion>EU</RfRegion>
1049610496
<LRChannel>Undefined</LRChannel>

appdata.tgz

16.8 MB
Binary file not shown.

0 commit comments

Comments
 (0)