Skip to content

Commit

Permalink
feat: Implement custom terminal, rework flashing flow, improve UX
Browse files Browse the repository at this point in the history
changes include entirely new UI, custom terminal with better support for logs and many UX improvements
  • Loading branch information
lorow authored Sep 3, 2024
2 parents ce18b03 + 07237c4 commit 03e0ef6
Show file tree
Hide file tree
Showing 60 changed files with 3,110 additions and 1,237 deletions.
237 changes: 119 additions & 118 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,138 +1,139 @@
name: App Builder
on:
workflow_dispatch:
push:
tags:
- "v*"
branches:
- master
- main
- release
- develop
- beta
workflow_dispatch:
push:
tags:
- 'v*'
branches:
- master
- main
- release
- develop
- beta

env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RUST_TOOLCHAIN_VERSION: 1.79.0

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: write
contents: write

jobs:
build:
strategy:
fail-fast: false
matrix:
node-version: [18.x]
platform: [windows-latest]
include:
#- os: ubuntu-latest
# rust_target: x86_64-unknown-linux-gnu
- os: windows-latest
rust_target: x86_64-pc-windows-msvc
#- os: macos-latest
# rust_target: x86_64-apple-darwin
#- os: macos-latest
# rust_target: aarch64-apple-darwin
runs-on: ${{ matrix.platform }}
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
token: ${{ env.GITHUB_TOKEN }}
build:
strategy:
fail-fast: false
matrix:
node-version: [18.x]
platform: [windows-latest]
include:
#- os: ubuntu-latest
# rust_target: x86_64-unknown-linux-gnu
- os: windows-latest
rust_target: x86_64-pc-windows-msvc
#- os: macos-latest
# rust_target: x86_64-apple-darwin
#- os: macos-latest
# rust_target: aarch64-apple-darwin
runs-on: ${{ matrix.platform }}
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
token: ${{ env.GITHUB_TOKEN }}

- name: Node.js setup ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
# node-version-file: '.nvmrc'
- name: Node.js setup ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
# node-version-file: '.nvmrc'

- name: "Setup Rust"
uses: actions-rs/toolchain@v1
with:
default: true
override: true
profile: minimal
toolchain: stable
target: ${{ matrix.platform.rust_target }}
- name: 'Setup Rust'
uses: actions-rs/toolchain@v1
with:
default: true
override: true
profile: minimal
toolchain: ${{ env.RUST_TOOLCHAIN_VERSION }}
target: ${{ matrix.platform.rust_target }}

- uses: Swatinem/rust-cache@v2
- uses: Swatinem/rust-cache@v2

- name: Install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf
npm install -g pnpm
npm install -g typescript
- name: Install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf
npm install -g pnpm
npm install -g typescript
- name: install dependencies (windows only)
if: matrix.platform == 'windows-latest'
run: |
npm install -g typescript
npm install -g pnpm
- name: install dependencies (windows only)
if: matrix.platform == 'windows-latest'
run: |
npm install -g typescript
npm install -g pnpm
- name: Install dependencies (PNPM)
run: pnpm install --no-frozen-lockfile
- name: Install dependencies (PNPM)
run: pnpm install --no-frozen-lockfile

- name: Generate Local Plugins (PNPM)
run: pnpm run specta:gen
- name: Generate Local Plugins (PNPM)
run: pnpm run specta:gen

- uses: JonasKruckenberg/[email protected]
id: tauri_build
with:
target: ${{ matrix.platform.rust_target }}
- uses: JonasKruckenberg/[email protected]
id: tauri_build
with:
target: ${{ matrix.platform.rust_target }}

- uses: actions/upload-artifact@v3
with:
name: production-files
path: "${{ join(fromJSON(steps.tauri_build.outputs.artifacts), '\n') }}"
- uses: actions/upload-artifact@v3
with:
name: production-files
path: "${{ join(fromJSON(steps.tauri_build.outputs.artifacts), '\n') }}"

deploy:
runs-on: ubuntu-latest
name: Deploy
needs: [build]
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Create Directory
run: mkdir -p dist
- name: Download artifact
uses: actions/download-artifact@v2
with:
name: production-files
path: ./dist
- name: Setup node
uses: actions/setup-node@v3
with:
node-version: 18
- run: npm install -g conventional-changelog-conventionalcommits@6
- run: npm install -g [email protected]
- run: npm install -g @semantic-release/exec
- run: npm install -g @semantic-release/git
- run: npm install -g @semantic-release/release-notes-generator
- run: npm install -g @semantic-release/changelog
- run: npm install -g @semantic-release/github
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
sudo apt-get install -y jq
chmod +x ./.github/scripts/prepareCMD.sh
semantic-release
deploy:
runs-on: ubuntu-latest
name: Deploy
needs: [build]
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Create Directory
run: mkdir -p dist
- name: Download artifact
uses: actions/download-artifact@v2
with:
name: production-files
path: ./dist
- name: Setup node
uses: actions/setup-node@v3
with:
node-version: 18
- run: npm install -g conventional-changelog-conventionalcommits@6
- run: npm install -g [email protected]
- run: npm install -g @semantic-release/exec
- run: npm install -g @semantic-release/git
- run: npm install -g @semantic-release/release-notes-generator
- run: npm install -g @semantic-release/changelog
- run: npm install -g @semantic-release/github
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
sudo apt-get install -y jq
chmod +x ./.github/scripts/prepareCMD.sh
semantic-release
cleanup:
name: Cleanup actions
needs:
- deploy
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: "♻️ remove build artifacts"
uses: geekyeggo/delete-artifact@v1
with:
name: production-files
cleanup:
name: Cleanup actions
needs:
- deploy
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: '♻️ remove build artifacts'
uses: geekyeggo/delete-artifact@v1
with:
name: production-files
Loading

0 comments on commit 03e0ef6

Please sign in to comment.