Skip to content

Commit 83fa2e5

Browse files
committed
Add CLI tool and GitHub Actions release workflow (v0.3.0)
Add a `termina` CLI binary that communicates with the running GUI app via a Unix domain socket at ~/.config/termina/termina.sock. Supports list, start, stop, restart, add, logs, and settings commands. Refactor backend command handlers into reusable do_* functions shared by both Tauri IPC and the socket handler. Add GitHub Actions workflow to build and create releases on version tags.
1 parent 18e44ad commit 83fa2e5

12 files changed

Lines changed: 1014 additions & 94 deletions

File tree

.github/workflows/release.yml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v*'
7+
8+
jobs:
9+
build-and-release:
10+
runs-on: macos-latest
11+
permissions:
12+
contents: write
13+
14+
steps:
15+
- uses: actions/checkout@v4
16+
17+
- name: Setup Node.js
18+
uses: actions/setup-node@v4
19+
with:
20+
node-version: 20
21+
22+
- name: Install Rust stable
23+
uses: dtolnay/rust-toolchain@stable
24+
25+
- name: Rust cache
26+
uses: swatinem/rust-cache@v2
27+
with:
28+
workspaces: src-tauri
29+
30+
- name: Install frontend dependencies
31+
run: npm ci
32+
33+
- name: Build and release
34+
uses: tauri-apps/tauri-action@v0
35+
env:
36+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
37+
with:
38+
tagName: ${{ github.ref_name }}
39+
releaseName: 'Termina ${{ github.ref_name }}'
40+
releaseBody: 'See the assets below to download and install.'
41+
releaseDraft: false
42+
prerelease: false

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
{
22
"name": "termina",
3-
"version": "0.2.0",
3+
"version": "0.3.0",
44
"description": "A lightweight macOS app for managing long-running shell commands",
55
"type": "module",
66
"scripts": {
77
"dev": "vite",
8+
"ui-only": "VITE_UI_ONLY=true vite",
89
"build": "tsc && vite build",
910
"preview": "vite preview",
1011
"tauri": "tauri"

src-tauri/Cargo.lock

Lines changed: 115 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src-tauri/Cargo.toml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "termina"
3-
version = "0.1.0"
3+
version = "0.3.0"
44
description = "A lightweight macOS app for managing long-running shell commands"
55
authors = ["you"]
66
license = "MIT"
@@ -26,3 +26,8 @@ tauri-plugin-notification = "2"
2626
tauri-plugin-autostart = "2"
2727
tauri-plugin-global-shortcut = "2"
2828
ureq = "2"
29+
clap = { version = "4", features = ["derive"] }
30+
31+
[[bin]]
32+
name = "termina"
33+
path = "src/cli_main.rs"

0 commit comments

Comments
 (0)