ci: find the desktop bundles in CARGO_TARGET_DIR
CI / Formatação e clippy (push) Successful in 25s
CI / Testes (Linux) (push) Successful in 25s
CI / Auditoria de dependências (push) Successful in 10s
CI / Compila o app desktop (Linux) (push) Successful in 2m3s

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
Lucas RayanandClaude Sonnet 5.5 committed 2026-10-30 14:02:19 -03:00
1 parent c7638a2f4e
commit 827ef0c2c0
3 files changed
+26 -2

No files matched your search

+12
View File
@@ -21,6 +21,18 @@ CI runs on Linux only (Gitea has one runner); run these before pushing — almos
Live capture exists only on Linux (`AF_PACKET` + netlink); the code behind Windows and macOS paths still compiles and is covered by `cargo check`, but neither runs in CI nor is built for release. Live capture exists only on Linux (`AF_PACKET` + netlink); the code behind Windows and macOS paths still compiles and is covered by `cargo check`, but neither runs in CI nor is built for release.
## Releases
Pushing a `v*` tag makes the Gitea CI create the release (notes come from `CHANGELOG.md`, so update it first) and attach the Linux CLI (x86_64 and aarch64) and the desktop app for Linux **aarch64** and Windows. The runner is arm64, so the Linux **x86_64** desktop app comes from an x86_64 Linux machine:
```bash
scripts/build-gui.sh linux # AppImage + .deb in dist-gui/
API=https://git.lucasrguerra.dev.br/api/v1/repos/lucasrguerra/sabia TOKEN=... \
scripts/release-upload.sh vX.Y.Z dist-gui/*
```
There is no macOS build: it needs Apple's SDK and code signing, which a Linux runner cannot provide.
## Where to work ## Where to work
Module map in [docs/architecture.md](docs/architecture.md). What's missing and welcome is in the [ROADMAP](ROADMAP.md). Module map in [docs/architecture.md](docs/architecture.md). What's missing and welcome is in the [ROADMAP](ROADMAP.md).
+12
View File
@@ -21,6 +21,18 @@ O CI roda só em Linux (o Gitea tem um único runner); rode esses comandos antes
A captura ao vivo só existe no Linux (`AF_PACKET` + netlink); o código dos caminhos de Windows e macOS continua compilando e é coberto pelo `cargo check`, mas não roda no CI nem é compilado para release. são offline. A captura ao vivo só existe no Linux (`AF_PACKET` + netlink); o código dos caminhos de Windows e macOS continua compilando e é coberto pelo `cargo check`, mas não roda no CI nem é compilado para release. são offline.
## Releases
Enviar uma tag `v*` faz o CI do Gitea criar a release (as notas vêm do `CHANGELOG.md`, então atualize-o antes) e anexar o CLI para Linux (x86_64 e aarch64) e o app desktop para Linux **aarch64** e Windows. O runner é arm64, então o app Linux **x86_64** vem de uma máquina Linux x86_64:
```bash
scripts/build-gui.sh linux # AppImage + .deb em dist-gui/
API=https://git.lucasrguerra.dev.br/api/v1/repos/lucasrguerra/sabia TOKEN=... \
scripts/release-upload.sh vX.Y.Z dist-gui/*
```
Não há build para macOS: ele exige o SDK e a assinatura da Apple, que um runner Linux não tem.
## Onde mexer ## Onde mexer
Mapa dos módulos em [docs/pt-BR/arquitetura.md](docs/pt-BR/arquitetura.md). O que falta e o que é bem-vindo está no [ROADMAP](ROADMAP.pt-BR.md). Mapa dos módulos em [docs/pt-BR/arquitetura.md](docs/pt-BR/arquitetura.md). O que falta e o que é bem-vindo está no [ROADMAP](ROADMAP.pt-BR.md).
+2 -2
View File
@@ -41,7 +41,7 @@ cd apps/gui/src-tauri
case "$platform" in case "$platform" in
linux) linux)
tauri build --bundles appimage,deb tauri build --bundles appimage,deb
bundle=target/release/bundle bundle="${CARGO_TARGET_DIR:-target}/release/bundle"
cp "$bundle"/appimage/*.AppImage "$bundle"/deb/*.deb ../../../dist-gui/ cp "$bundle"/appimage/*.AppImage "$bundle"/deb/*.deb ../../../dist-gui/
# O atualizador do Tauri (quando o projeto usa) precisa do .sig ao lado. # O atualizador do Tauri (quando o projeto usa) precisa do .sig ao lado.
cp "$bundle"/appimage/*.AppImage.sig ../../../dist-gui/ 2>/dev/null || true cp "$bundle"/appimage/*.AppImage.sig ../../../dist-gui/ 2>/dev/null || true
@@ -49,7 +49,7 @@ case "$platform" in
windows) windows)
rustup target add x86_64-pc-windows-msvc >/dev/null rustup target add x86_64-pc-windows-msvc >/dev/null
tauri build --runner cargo-xwin --target x86_64-pc-windows-msvc --bundles nsis tauri build --runner cargo-xwin --target x86_64-pc-windows-msvc --bundles nsis
bundle=target/x86_64-pc-windows-msvc/release/bundle/nsis bundle="${CARGO_TARGET_DIR:-target}/x86_64-pc-windows-msvc/release/bundle/nsis"
cp "$bundle"/*-setup.exe ../../../dist-gui/ cp "$bundle"/*-setup.exe ../../../dist-gui/
cp "$bundle"/*-setup.exe.sig ../../../dist-gui/ 2>/dev/null || true cp "$bundle"/*-setup.exe.sig ../../../dist-gui/ 2>/dev/null || true
;; ;;