Skip to content
Open
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
33 changes: 30 additions & 3 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ env:
jobs:
build:
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
strategy:
fail-fast: false
matrix:
Expand Down Expand Up @@ -141,7 +144,24 @@ jobs:
if: matrix.platform == 'linux'
run: |
sudo apt-get update -o Acquire::Retries=3 -o Acquire::ForceIPv4=true
sudo apt-get install -y -o Acquire::Retries=3 -o Acquire::ForceIPv4=true --fix-missing libcurl4-openssl-dev ninja-build libgtk-3-dev rpm
sudo apt-get install -y -o Acquire::Retries=3 -o Acquire::ForceIPv4=true --fix-missing \
libcurl4-openssl-dev \
ninja-build \
libgtk-3-dev \
libayatana-appindicator3-dev \
libkeybinder-3.0-dev \
locate \
${{ matrix.arch == 'amd64' && 'rpm patchelf libfuse2' || '' }}

_arch=${{ matrix.arch == 'amd64' && 'x86_64' || 'aarch64' }}
wget -O appimagetool https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-${_arch}.AppImage
chmod +x appimagetool
sudo mv appimagetool /usr/local/bin/

- name: Install Dependencies (macOS)
if: matrix.platform == 'macos'
run: |
npm install -g appdmg

- name: Setup Golang
uses: actions/setup-go@v6
Expand Down Expand Up @@ -188,7 +208,14 @@ jobs:
run: |
flutter pub get
dart run build_runner build -d
dart setup.dart ${{ matrix.platform }} --arch ${{ matrix.arch }} ${{ env.IS_STABLE == 'true' && '--env stable' || '' }} ${{ matrix.compatible == true && '--compatible' || '' }}
dart setup.dart \
${{ matrix.platform }} \
--arch ${{ matrix.arch }} \
${{ env.IS_STABLE == 'true' && '--env stable' || '' }} \
${{ matrix.compatible == true && '--compatible' || '' }} \
${{ matrix.platform == 'linux' && '--targets' || ''}} \
${{ matrix.platform == 'linux' && matrix.arch == 'amd64' && 'deb,rpm,appimage' || '' }} \
${{ matrix.platform == 'linux' && matrix.arch == 'arm64' && 'deb' || '' }}

- name: Install SignPath (Windows)
if: matrix.platform == 'windows'
Expand Down Expand Up @@ -462,4 +489,4 @@ jobs:
with:
files: ./dist/*
body_path: './release.md'
prerelease: ${{ env.IS_PRERELEASE == 'true' }}
prerelease: ${{ env.IS_PRERELEASE == 'true' }}
55 changes: 2 additions & 53 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,67 +2,16 @@
"version": "0.2.0",
"configurations": [
{
"name": "Bettbox Windows Dev",
"name": "Bettbox Dev",
"request": "launch",
"type": "dart",
"flutterMode": "debug",
"program": "lib/main.dart",
"deviceId": "windows",
"toolArgs": [
"--dart-define",
"APP_DEV=true"
],
"preLaunchTask": "bettbox: ensure windows dev core"
},
{
"name": "Bettbox macOS Dev",
"request": "launch",
"type": "dart",
"flutterMode": "debug",
"program": "lib/main.dart",
"deviceId": "macos",
"toolArgs": [
"--dart-define",
"APP_DEV=true"
],
"preLaunchTask": "bettbox: ensure macos dev core"
},
{
"name": "Bettbox Linux Dev",
"request": "launch",
"type": "dart",
"flutterMode": "debug",
"program": "lib/main.dart",
"deviceId": "linux",
"toolArgs": [
"--dart-define",
"APP_DEV=true"
],
"preLaunchTask": "bettbox: ensure linux dev core"
},
{
"name": "Bettbox Android x64 Dev",
"request": "launch",
"type": "dart",
"flutterMode": "debug",
"program": "lib/main.dart",
"toolArgs": [
"--dart-define",
"APP_DEV=true"
],
"preLaunchTask": "bettbox: ensure android x64 core"
},
{
"name": "Bettbox Android arm64 Dev",
"request": "launch",
"type": "dart",
"flutterMode": "debug",
"program": "lib/main.dart",
"toolArgs": [
"--dart-define",
"APP_DEV=true"
],
"preLaunchTask": "bettbox: ensure android arm64 core"
"preLaunchTask": "bettbox: ensure dev core"
}
]
}
112 changes: 21 additions & 91 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,102 +2,32 @@
"version": "2.0.0",
"tasks": [
{
"label": "bettbox: ensure windows dev core",
"type": "shell",
"command": "dart",
"label": "bettbox: ensure dev core",
"type": "process",
"command": "bash",
"args": [
"./setup.dart",
"windows",
"--arch",
"auto",
"--out",
"core",
"--dev",
"--ensure"
"-c",
"exec dart ./setup.dart \"$(flutter devices --machine 2>/dev/null | jq -r --arg id \"${command:flutter.getSelectedDeviceId}\" '.[] | select(.id == $id).targetPlatform' | sed 's/-.*//;s/darwin/macos/')\" --out core --dev --ensure"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [],
"group": "build"
},
{
"label": "bettbox: ensure macos dev core",
"type": "shell",
"command": "dart",
"args": [
"./setup.dart",
"macos",
"--arch",
"auto",
"--out",
"core",
"--dev",
"--ensure"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [],
"group": "build"
},
{
"label": "bettbox: ensure linux dev core",
"type": "shell",
"command": "dart",
"args": [
"./setup.dart",
"linux",
"--arch",
"auto",
"--out",
"core",
"--dev",
"--ensure"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [],
"group": "build"
},
{
"label": "bettbox: ensure android x64 core",
"type": "shell",
"command": "dart",
"args": [
"./setup.dart",
"android",
"--arch",
"amd64",
"--out",
"core",
"--ensure"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [],
"group": "build"
},
{
"label": "bettbox: ensure android arm64 core",
"type": "shell",
"command": "dart",
"args": [
"./setup.dart",
"android",
"--arch",
"arm64",
"--out",
"core",
"--ensure"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [],
"group": "build"
"windows": {
"command": "powershell.exe",
"args": [
"-NoProfile",
"-ExecutionPolicy",
"Bypass",
"-Command",
"$id = \"${command:flutter.getSelectedDeviceId}\";",
"$d = (flutter devices --machine 2>$null | ConvertFrom-Json) | Where-Object { $_.id -eq $id } | Select-Object -First 1;",
"if (-not $d) { Write-Error \"No device selected: $id\"; exit 1 };",
"$p = $d.targetPlatform.Split('-')[0];",
"if ($p -eq 'darwin') { $p = 'macos' };",
"& dart ./setup.dart $p --out=core --dev --ensure"
]
}
}
]
}
}
57 changes: 50 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,10 +1,53 @@
android_arm64:
android_app_arm64:
dart ./setup.dart android --arch arm64
macos_arm64:
dart ./setup.dart macos --arch arm64
android_app:

android_app_all:
dart ./setup.dart android
android_arm64_core:

android_app_universal:
dart ./setup.dart android --arch universal

android_core_arm64:
dart ./setup.dart android --arch arm64 --out core
macos_arm64_core:
dart ./setup.dart macos --arch arm64 --out core

android_core_all:
dart ./setup.dart android --out core

macos_app:
dart ./setup.dart macos

macos_app_arm64:
dart ./setup.dart macos --arch arm64

macos_app_amd64:
dart ./setup.dart macos --arch amd64

macos_app_universal:
dart ./setup.dart macos --arch universal

macos_core:
dart ./setup.dart macos --out core

macos_core_arm64:
dart ./setup.dart macos --arch arm64 --out core

macos_core_amd64:
dart ./setup.dart macos --arch amd64 --out core

windows_app:
dart ./setup.dart windows

windows_app_amd64_compatible:
dart ./setup.dart windows --arch amd64 --compatible

linux:
dart ./setup.dart linux --build-only

linux_amd64_compatible:
dart ./setup.dart linux --arch amd64 --compatible --build-only

linux_core:
dart ./setup.dart linux --out core

linux_core_amd64_compatible:
dart ./setup.dart linux --out core --arch amd64 --compatible
Loading