Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 26 additions & 20 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,20 @@ on:
pull_request:
branches:
- master
# run when a new semantic version tag got pushed (a release)
push:
tags:
- "v[0-9]+.[0-9]+(.[0-9]+)?(-[a-z]+(.[0-9])?)?"
# allow to run the workflow manually from the actions tab
# run on github releases
release:
types: [released]
# run the workflow manually from the actions tab
workflow_dispatch:

jobs:
variables:
outputs:
ref_name: ${{ steps.var.outputs.ref_name}}
runs-on: "ubuntu-20.04"
runs-on: "ubuntu-22.04"
steps:
- name: Setting Global Variables
uses: actions/github-script@v6
uses: actions/github-script@v8
id: var
with:
script: |
Expand All @@ -41,17 +40,17 @@ jobs:
- {
name: "Ubuntu",
executable_name: "afec-explorer",
os: ubuntu-20.04,
os: ubuntu-22.04,
}
- {
name: "macOS",
executable_name: "AFEC-Explorer.app",
os: macos-13,
os: macos-14,
}

steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v5

- name: Rust Setup (Windows & Linux)
uses: dtolnay/rust-toolchain@stable
Expand All @@ -69,16 +68,17 @@ jobs:
workspaces: "./src-tauri -> target"

- name: Node Setup
uses: actions/setup-node@v3
uses: actions/setup-node@v5
with:
node-version: "lts/*"
node-version: "lts/Jod"
cache: "npm"

- name: System dependencies (Linux)
run: |
set -e
sudo apt update
sudo apt install -y libasound2-dev libjack-dev
sudo apt install -y libgtk-3-dev libwebkit2gtk-4.0-dev
sudo apt install -y libasound2-dev libjack-dev
sudo apt install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
if: ${{ matrix.config.name == 'Ubuntu' }}

- name: Node dependencies
Expand All @@ -101,7 +101,7 @@ jobs:
WINDOWS_CODE_CERT_DATA: ${{ secrets.WINDOWS_CODE_CERT_DATA }}
WINDOWS_CODE_CERT_PASS: ${{ secrets.WINDOWS_CODE_CERT_PASS }}
if: ${{ matrix.config.name == 'Windows' && env.WINDOWS_CODE_CERT_DATA != null && env.WINDOWS_CODE_CERT_PASS != null }}
uses: lando/code-sign-action@v2
uses: lando/code-sign-action@v3
with:
file: ./src-tauri/target/release/${{ matrix.config.executable_name }}
certificate-data: ${{ secrets.WINDOWS_CODE_CERT_DATA }}
Expand Down Expand Up @@ -139,31 +139,37 @@ jobs:

- name: Upload Artifact (Windows)
if: ${{ matrix.config.name == 'Windows' }}
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: "AFEC-Explorer-${{ needs.variables.outputs.ref_name }}-windows"
path: ./src-tauri/target/release/*.exe
if-no-files-found: error

- name: Prepare Upload Artifact (Linux)
if: ${{ matrix.config.name == 'Ubuntu' }}
run: cd ./src-tauri/target/release && tar -cvf ${{ matrix.config.executable_name }}.tar ${{ matrix.config.executable_name }}
run: |
set -e
cd ./src-tauri/target/release
tar -cvf ${{ matrix.config.executable_name }}.tar ${{ matrix.config.executable_name }}

- name: Upload Artifact (Linux)
if: ${{ matrix.config.name == 'Ubuntu' }}
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: "AFEC-Explorer-${{ needs.variables.outputs.ref_name }}-linux"
path: ./src-tauri/target/release/*.tar
if-no-files-found: error

- name: Prepare Upload Artifact (macOS)
if: ${{ matrix.config.name == 'macOS' }}
run: cd ./src-tauri/target/universal-apple-darwin/release/bundle/macos && tar -cvf ${{ matrix.config.executable_name }}.tar ${{ matrix.config.executable_name }}
run: |
set -e
cd ./src-tauri/target/universal-apple-darwin/release/bundle/macos
tar -cvf ${{ matrix.config.executable_name }}.tar ${{ matrix.config.executable_name }}

- name: Upload Artifact (macOS)
if: ${{ matrix.config.name == 'macOS' }}
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: "AFEC-Explorer-${{ needs.variables.outputs.ref_name }}-macOS"
path: ./src-tauri/target/universal-apple-darwin/release/bundle/macos/*.tar
Expand Down
6 changes: 6 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"recommendations": [
"tauri-apps.tauri-vscode",
"rust-lang.rust-analyzer"
]
}
54 changes: 53 additions & 1 deletion .vscode/tasks.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,33 @@
{
"label": "ui:dev",
"type": "shell",
"isBackground": true,
"command": "npm",
"args": [
"run",
"dev"
],
"isBackground": true,
"problemMatcher": [
{
"pattern": [
{
"regexp": "(ERROR|WARNING)\\(TypeScript\\) (.*)",
"severity": 1,
"message": 2
},
{
"regexp": "^ FILE (.*):(\\d*):(\\d*)$",
"file": 1,
"line": 2,
"column": 3
}
],
"background": {
"activeOnStart": true,
"beginsPattern": ".*",
"endsPattern": ".*Local:.*"
}
}
]
},
{
Expand All @@ -20,11 +42,38 @@
"args": [
"run",
"build"
],
"problemMatcher": [
{
"owner": "typescript",
"source": "Typescript",
"fileLocation": "absolute",
"applyTo": "allDocuments",
"background": {
"activeOnStart": true
},
"pattern": [
{
"regexp": "(ERROR|WARNING)\\(TypeScript\\) (.*)",
"severity": 1,
"message": 2
},
{
"regexp": "^ FILE (.*):(\\d*):(\\d*)$",
"file": 1,
"line": 2,
"column": 3
}
]
}
]
},
{
"label": "tauri:dev",
"type": "shell",
"problemMatcher": [
"$rustc"
],
"group": {
"kind": "build",
"isDefault": true
Expand All @@ -39,6 +88,9 @@
{
"label": "tauri:build",
"type": "shell",
"problemMatcher": [
"$rustc"
],
"group": {
"kind": "build",
"isDefault": false
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ You can generate `afec.db` files with [AFEC](https://github.com/emuell/AFEC)'s c

## Development

### Requirements
### Prerequisites

- Tauri: Rust and a C++ Compiler - see [Tauri's Prerequisites](https://tauri.app/v1/guides/getting-started/prerequisites)
- Tauri: Rust and a C++ Compiler - see [Tauri's Prerequisites](https://tauri.app/start/prerequisites)
- NPM: Download at [Node.js](https://nodejs.org/en/)

### Building
Expand Down
Loading
Loading