Skip to content

fix (release) : switched release from ubuntu to arch self hosted #12

fix (release) : switched release from ubuntu to arch self hosted

fix (release) : switched release from ubuntu to arch self hosted #12

Workflow file for this run

name: Release
on:
push:
tags:
- 'v*'
workflow_dispatch:
jobs:
release:
permissions:
contents: write
strategy:
fail-fast: false
matrix:
platform: [macos-latest, windows-latest, self-hosted]
runs-on: ${{ matrix.platform }}
env:
NEXT_PUBLIC_FIREBASE_API_KEY: ${{ secrets.FIREBASE_API_KEY }}
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN: ${{ secrets.FIREBASE_AUTH_DOMAIN }}
NEXT_PUBLIC_FIREBASE_PROJECT_ID: ${{ secrets.FIREBASE_PROJECT_ID }}
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET: ${{ secrets.FIREBASE_STORAGE_BUCKET }}
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID: ${{ secrets.FIREBASE_MESSAGING_SENDER_ID }}
NEXT_PUBLIC_FIREBASE_APP_ID: ${{ secrets.FIREBASE_APP_ID }}
NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID: ${{ secrets.FIREBASE_MEASUREMENT_ID }}
NEXT_PUBLIC_FIREBASE_DATABASE_URL: ${{ secrets.FIREBASE_DATABASE_URL }}
SKIP_PREFLIGHT_CHECK: true
NEXT_TELEMETRY_DISABLED: 1
steps:
# Checkout the repository
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
# Install Rust
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
# Install dependencies for Arch Linux
- name: Install dependencies (Arch only)
if: matrix.platform == 'archlinux'
run: |
sudo pacman -Syu --noconfirm
sudo pacman -S --needed --noconfirm \
webkit2gtk \
gtk3 \
libsoup \
libappindicator-gtk3 \
librsvg \
rustup nodejs npm
rustup default stable
rustup target add x86_64-unknown-linux-gnu
# Install dependencies for macOS
- name: Install dependencies (macOS only)
if: matrix.platform == 'macos-latest'
run: |
brew install gtk+3 librsvg
# Setup Node.js
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: '18'
cache: 'npm'
# Setup Python
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.x'
# Install frontend dependencies
- name: Install frontend dependencies
run: |
npm install
npm install -D @tauri-apps/cli
# Create Next.js config
- name: Create Next.js config
run: |
echo 'const nextConfig = {
output: "export",
images: { unoptimized: true },
experimental: { appDir: true }
};
module.exports = nextConfig;' > next.config.js
# Build Next.js
- name: Build Next.js
run: npm run build
env:
CI: true
NODE_ENV: production
# Build Tauri App
- name: Build Tauri
uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NODE_ENV: production
with:
tagName: ${{ github.ref_name }}
releaseName: 'Dash Desktop ${{ github.ref_name }}'
releaseBody: |
## Dash Desktop ${{ github.ref_name }}
🚀 Latest Release
### Features
- Cross-platform desktop application
- Real-time Firebase integration
- Task management system
- Network node status monitoring
### Download Options
Choose the appropriate version for your operating system:
- Windows: `.msi` installer
- macOS: `.dmg` installer
- Linux: `.deb` package and `.AppImage`
### System Requirements
- Windows 10 or later
- macOS 10.15 or later
- Arch Linux (latest updates)
### Installation
1. Download the appropriate file for your OS
2. Run the installer
3. Follow the on-screen instructions
### Known Issues
- Please report any issues on the GitHub repository
### Support
If you encounter any problems, please open an issue on GitHub.
---
🔄 Release Date: ${{ github.event.release.published_at }}
👤 Build Triggered By: ${{ github.actor }}
releaseDraft: false
prerelease: false