Files
vega/.github/workflows/release.yml

140 lines
6.9 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
name: Release
on:
push:
tags:
- 'v*'
jobs:
release:
permissions:
contents: write
strategy:
fail-fast: false
matrix:
include:
- platform: ubuntu-22.04
args: ''
- platform: windows-latest
args: ''
- platform: macos-latest
args: '--target aarch64-apple-darwin'
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 'lts/*'
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.platform == 'macos-latest' && 'aarch64-apple-darwin' || matrix.platform == 'macos-12' && 'x86_64-apple-darwin' || '' }}
- name: Install Linux dependencies
if: matrix.platform == 'ubuntu-22.04'
run: |
sudo apt-get update
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
build-essential \
libssl-dev \
libayatana-appindicator3-dev \
librsvg2-dev \
patchelf
- name: Install frontend dependencies
run: npm install
- name: Build and release
uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
with:
tagName: ${{ github.ref_name }}
releaseName: Wrystr ${{ github.ref_name }}
releaseBody: |
## Wrystr ${{ github.ref_name }}
Cross-platform Nostr desktop client — polished UI, deep Lightning integration, first-class long-form writing.
> **Windows note:** The installer is not yet code-signed. Windows SmartScreen will show an "Unknown publisher" warning — click "More info → Run anyway" to install.
### New in v0.2.7
- **Fix: multi-account persistence** — all nsec accounts are now restored from OS keychain on startup; account switching no longer gets stuck after restart
- **Fix: account switcher** — shows re-login prompt when keychain entry is missing instead of silently going read-only
### New in v0.2.6
- **Fix: auto-updater** — added `createUpdaterArtifacts: true` + regenerated signing key; `.sig` files and `latest.json` are now correctly produced by CI
### New in v0.2.3
- **Fix: auto-updater** — `latest.json` now correctly generated via `includeUpdaterJson: true`; users on older versions will receive the update banner
### New in v0.2.0 — Phase 2: Engagement & Reach
- **Feed reply context** — replies show "↩ replying to @name" above the note; click to open the parent thread
- **NIP-65 outbox model** — reads kind 10002 relay lists so you see notes from people who publish to their own relays; "Publish relay list to Nostr" button in Settings
- **Notifications view** — 🔔 sidebar nav item; lists recent mentions with unread badge; badge clears on open
- **DM unread badge** — messages nav item shows count of conversations with new messages; clears when conversation is opened
- **Keyboard shortcuts** — `n` focus compose, `/` focus search, `j`/`k` navigate feed with highlight, `Esc` go back, `?` help overlay
### New in 0.1.7
- **Per-account Lightning wallet** — NWC connection is now stored per account; switching accounts loads the correct wallet automatically
- **New account creation in-app** — "Add account" now has a "New account" tab that generates a fresh keypair (no need to go through onboarding again)
- **Zap button on thread root note** — like and zap the main note in a thread view
- **Conditional zap button** — zap only shown for profiles that have a Lightning address (lud16/lud06)
- **Image paste in compose** — paste an image from clipboard → auto-uploads to nostr.build and inserts the URL
- **Account switcher redesign** — cleaner dropdown, sign-out/remove moved into menu
- **GitHub Sponsors link** in Support page
- Fix: posts no longer sign under the wrong account during rapid account switches
### New in 0.1.6
- **Linux packaging** — ships `.deb` (Ubuntu/Debian/Mint) and `.rpm` (Fedora/openSUSE) instead of AppImage; Arch users see PKGBUILD in the repo
### New in 0.1.5
- **Article reader** — click any `nostr:naddr1…` link to open it in a clean reader with cover image, author, tags, and full markdown; zap the author inline
- **Zap counts on notes** — ⚡ N sats shown on each note
- **Quoted note preview** — `nostr:note1…` / `nostr:nevent1…` references render as inline bordered cards; click to open thread
- **Auto-updater** — "Update & restart" banner appears when a new version is available
### New in 0.1.4
- **Sidebar** — explicit / collapse toggle, state persisted across restarts
- **Profile image upload** — uploads to nostr.build, auto-fills URL field
- **NIP-05 live verification** — real-time domain check with ✓/✗ status
- **Search improvements** — NIP-50 relay detection, hashtag fallback suggestion
### New in 0.1.3
- **OS keychain** — sessions survive restarts (macOS Keychain, Windows Credential Manager, Linux Secret Service)
- **Multi-account switcher** — instant switch from sidebar footer
- **SQLite note + profile cache** — feed loads instantly on startup
- **Quote & Repost** (NIP-18), **Mute users** (NIP-51), **NWC setup wizard**
- **System tray**, **Zap history**, **About / Support page**
### Install
**Linux (Ubuntu / Debian / Mint):** Download the `.deb` and run:
```
sudo dpkg -i wrystr_*.deb
```
**Linux (Fedora / openSUSE):** Download the `.rpm` and run:
```
sudo rpm -i wrystr-*.rpm # Fedora
sudo zypper install wrystr-*.rpm # openSUSE
```
**Linux (Arch / Manjaro):** See [`PKGBUILD`](https://github.com/hoornet/wrystr/blob/main/PKGBUILD) in the repo, or build from source with `npm run tauri build`.
**Windows:** Download the `.exe` installer and run it.
**macOS (Apple Silicon):** Download the `aarch64.dmg` and open it.
---
⚡ Find Wrystr useful? [Zap the developer](https://github.com/hoornet/wrystr#support) or star the repo.
releaseDraft: false
prerelease: false
includeUpdaterJson: true
args: ${{ matrix.args }}