chore: bump version to 1.0.21 #23
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build and Release | |
| on: | |
| push: | |
| tags: | |
| - 'v*.*.*' | |
| jobs: | |
| build-and-release: | |
| name: Build and Release | |
| runs-on: macos-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '18' | |
| cache: 'npm' | |
| - name: Install System Dependencies | |
| run: | | |
| brew install librsvg | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Update Version from Tag | |
| run: | | |
| VERSION=${GITHUB_REF_NAME#v} | |
| echo "VERSION=$VERSION" >> $GITHUB_OUTPUT | |
| echo "Setting package version to $VERSION" | |
| npm version $VERSION --no-git-tag-version --allow-same-version | |
| - name: Generate SSL certificates | |
| run: npm run generate-cert | |
| - name: Generate app icons | |
| run: npm run generate-icons | |
| - name: Import Apple Developer Certificate | |
| env: | |
| APPLE_CERTIFICATE: ${{ secrets.APPLE_CERTIFICATE }} | |
| APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }} | |
| run: | | |
| # Create keychain | |
| KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db | |
| KEYCHAIN_PASSWORD=$(openssl rand -base64 32) | |
| # Decode certificate and save to file | |
| echo "$APPLE_CERTIFICATE" | base64 --decode > certificate.p12 | |
| # Create keychain | |
| security create-keychain -p "$KEYCHAIN_PASSWORD" "$KEYCHAIN_PATH" | |
| security set-keychain-settings -lut 21600 "$KEYCHAIN_PATH" | |
| security unlock-keychain -p "$KEYCHAIN_PASSWORD" "$KEYCHAIN_PATH" | |
| # Import certificate to keychain | |
| security import certificate.p12 -k "$KEYCHAIN_PATH" -P "$APPLE_CERTIFICATE_PASSWORD" -T /usr/bin/codesign | |
| security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k "$KEYCHAIN_PASSWORD" "$KEYCHAIN_PATH" | |
| # Add keychain to search list | |
| security list-keychain -d user -s "$KEYCHAIN_PATH" | |
| # Clean up certificate file | |
| rm -f certificate.p12 | |
| - name: Build Electron Apps | |
| run: npm run build:all -- -p never | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| APPLE_ID: ${{ secrets.APPLE_ID }} | |
| APPLE_APP_SPECIFIC_PASSWORD: ${{ secrets.APPLE_APP_SPECIFIC_PASSWORD }} | |
| APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} | |
| CSC_IDENTITY_AUTO_DISCOVERY: true | |
| - name: Create Release | |
| uses: softprops/action-gh-release@v1 | |
| with: | |
| files: dist/*.zip | |
| generate_release_notes: true | |
| draft: false | |
| prerelease: false | |
| body: | | |
| ## LocalStream Release ${{ github.ref_name }} | |
| ### Downloads | |
| - **macOS (Intel)**: `LocalStream-${{ github.ref_name }}-mac.zip` | |
| - **macOS (Apple Silicon/M1/M3)**: `LocalStream-${{ github.ref_name }}-arm64-mac.zip` | |
| - **Windows (x64)**: `LocalStream-${{ github.ref_name }}-win.zip` | |
| - **Linux (x64)**: `LocalStream-${{ github.ref_name }}-linux.zip` | |
| ### Installation | |
| **macOS:** | |
| 1. Download and unzip the file for your platform | |
| 2. Double-click LocalStream.app to launch (app is signed and notarized) | |
| 3. Click "Start Server" to begin streaming | |
| **Windows/Linux:** | |
| 1. Download and unzip the file for your platform | |
| 2. Launch the LocalStream application | |
| 3. Click "Start Server" to begin streaming | |
| ### Features | |
| - 🖥️ Desktop GUI for easy server control | |
| - 📱 QR code generation for mobile devices | |
| - 🔒 HTTPS support with auto-generated certificates | |
| - 🎥 WebRTC streaming optimized for OBS | |
| - 🌐 Automatic network discovery with mDNS | |
| ### Notes | |
| - Server runs on http://localhost:3000 and https://localhost:3443 | |
| - Check README.md for OBS setup instructions | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |