name: GUI Build on: [push, pull_request] jobs: build-linux-gui: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v4 with: node-version: '20' - name: Install dependencies (GUI) run: cd gui && npm install - name: Build Linux Application run: cd gui && npm run dist-linux - name: Archive Linux production build run: | cd gui/dist tar czf linux-unpacked.tar.gz linux-unpacked - name: Upload Linux AppImage uses: actions/upload-artifact@v4 with: name: KuzcoChat-Linux-Appimage path: gui/dist/*.AppImage - name: Upload Linux DEB uses: actions/upload-artifact@v4 with: name: KuzcoChat-DEB path: gui/dist/*.deb - name: Upload Linux Unpacked Archive uses: actions/upload-artifact@v4 with: name: KuzcoChat-Linux-Unpacked path: gui/dist/linux-unpacked.tar.gz build-windows-gui: runs-on: windows-latest steps: - uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v4 with: node-version: '20' - name: Install dependencies (GUI) run: cd gui && npm install - name: Build Windows Application run: cd gui && npm run dist-win - name: Zip Windows production build run: | Compress-Archive -Path gui/dist/win-unpacked/* -DestinationPath gui/dist/win-unpacked.zip - name: Upload Windows Executable uses: actions/upload-artifact@v4 with: name: KuzcoChat-Windows-EXE path: gui/dist/*.exe - name: Upload Windows Unpacked Archive uses: actions/upload-artifact@v4 with: name: KuzcoChat-Windows-Unpacked path: gui/dist/win-unpacked.zip