Skip to content

Commit 3dbb3ea

Browse files
author
Maik Roland Damm
committed
feat(setup): enhance setup and release automation with platform-specific scripts
1 parent 7f4ae3d commit 3dbb3ea

3 files changed

Lines changed: 43 additions & 6 deletions

File tree

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
99

1010
### Added
1111

12+
- **Interactive setup scripts**: platform-specific post-clone setup helpers under `scripts/setup/` for Linux, macOS and Windows. They install/check Rust, `wasm32-unknown-unknown`, Trunk, Tauri CLI, Node/npm frontend assets, OS-native Tauri dependencies, and optional verification/bundle builds.
13+
- **Native release script counterparts**: PowerShell and Command Prompt release entrypoints (`scripts/release.ps1`, `scripts/release.cmd`, `scripts/release-windows.*`) plus a macOS launcher (`scripts/release-macos.sh`). The PowerShell modules under `scripts/release/*.ps1` mirror the Bash release pipeline for version bumps, CHANGELOG finalization, Tauri builds, artifact discovery, and GitHub uploads.
14+
1215
### Changed
1316

17+
- **Docs**: README, developer setup, build guide, and `.env.release.example` now document the setup and cross-platform release automation paths.
18+
1419
### Fixed
1520

1621
### Removed

README.md

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -76,12 +76,12 @@ BLXCode is early-stage open source. Core desktop, workspace, memory, plans, task
7676
After cloning, run the setup script for your platform:
7777

7878
```bash
79-
./scripts/setup-linux.sh
80-
./scripts/setup-macos.sh
79+
./scripts/setup/setup-linux.sh
80+
./scripts/setup/setup-macos.sh
8181
```
8282

8383
```powershell
84-
powershell -ExecutionPolicy Bypass -File scripts/setup-windows.ps1
84+
powershell -ExecutionPolicy Bypass -File scripts/setup/setup-windows.ps1
8585
```
8686

8787
Use `--check-only` to inspect missing prerequisites without installing anything, or `--with-bundle` to run `cargo tauri build` after the default checks.
@@ -122,6 +122,22 @@ The Tauri dev command starts Trunk automatically through `src-tauri/tauri.conf.j
122122
cargo tauri build
123123
```
124124
125+
### Release Automation
126+
127+
Use the release scripts for local bundle builds, version bumps, changelog finalization, tags, and GitHub release uploads:
128+
129+
```bash
130+
./scripts/release.sh
131+
./scripts/release-macos.sh
132+
```
133+
134+
```powershell
135+
scripts\release.cmd
136+
powershell -ExecutionPolicy Bypass -File scripts/release.ps1 --platform windows
137+
```
138+
139+
Release scripts are unsigned by default for local builds. Copy `.env.release.example` to `.env.release` only when you need signing keys, notarization credentials, or GitHub upload overrides.
140+
125141
### Useful Checks
126142

127143
```bash

docs/developer/setup.md

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ BLXCode is a two-crate Rust workspace:
1212
After cloning, you can let the platform setup script install/check the local toolchain and run the default verification:
1313

1414
```bash
15-
./scripts/setup-linux.sh
16-
./scripts/setup-macos.sh
15+
./scripts/setup/setup-linux.sh
16+
./scripts/setup/setup-macos.sh
1717
```
1818

1919
```powershell
20-
powershell -ExecutionPolicy Bypass -File scripts/setup-windows.ps1
20+
powershell -ExecutionPolicy Bypass -File scripts/setup/setup-windows.ps1
2121
```
2222

2323
Useful options are `--check-only`, `--skip-system`, `--no-verify`, and `--with-bundle`.
@@ -86,6 +86,22 @@ cargo tauri build
8686

8787
Bundle configuration lives in `src-tauri/tauri.conf.json`.
8888

89+
## Release Automation
90+
91+
Release helpers live at the repo root under `scripts/` and share the same option set where possible:
92+
93+
```bash
94+
./scripts/release.sh --help
95+
./scripts/release-macos.sh --help
96+
```
97+
98+
```powershell
99+
scripts\release.cmd --help
100+
powershell -ExecutionPolicy Bypass -File scripts/release.ps1 --help
101+
```
102+
103+
The Bash pipeline remains the Linux/macOS path. The PowerShell pipeline mirrors it for native Windows releases and is split into matching modules under `scripts/release/*.ps1` for common helpers, version bumping, changelog finalization, build preparation, Linux target handling, and GitHub uploads.
104+
89105
## Important Config Files
90106

91107
- `Cargo.toml`: workspace and frontend crate manifest.

0 commit comments

Comments
 (0)