Commit graph

52 commits

Author SHA1 Message Date
delibae
b5ced3a7fa feat: add Intel Mac build workflow, bump version to 1.0.8
Add build-macos-intel job using macos-15-intel runner with
x86_64-apple-darwin target. Includes code signing, notarization,
and updater support (darwin-x86_64 platform key in latest.json).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 03:19:05 +09:00
delibae
a10afacd6c fix: improve Linux AppImage compatibility and login reliability
- Add sanitize_appimage_env() to restore original LD_LIBRARY_PATH/PATH
  when spawning child processes from AppImage (fixes xdg-open, curl)
- Pass DISPLAY, WAYLAND_DISPLAY, XDG_*, DBUS_SESSION_BUS_ADDRESS to
  child processes for Linux desktop integration
- Add stdin(Stdio::null()) to install_claude_cli to prevent interactive
  prompt hangs
- Add 120s timeout to login_claude to prevent indefinite hang when
  browser fails to open
- Show "Setup Guide" link to code.claude.com/docs/quickstart on login
  failure
- Keep releases as draft in CI workflow for manual publish

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 01:11:02 +09:00
delibae
16b4c469b5 chore: add husky pre-commit hook and CI lint workflow
- Add husky with biome check --staged --write pre-commit hook
- Add GitHub Actions lint workflow (biome ci on PR/push to main)
- Update CONTRIBUTING.md with pre-commit and CI documentation

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 17:15:58 +09:00
delibae
51e038495f feat: version-free release filenames, inline updater UI (v1.0.3)
- Rename build artifacts to fixed names (ClaudePrism-macOS.dmg, etc.)
- Update latest.json URLs to use fixed filenames
- Update README download links to /releases/latest
- Inline update UI on home screen with version badge
- Gitignore Tauri gen/schemas
- Bump to v1.0.3

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 15:40:18 +09:00
delibae
b393a9e14b fix: export BASE_URL so node can read it in latest.json generation
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 14:36:25 +09:00
delibae
6e8521cd6f fix: collect Windows updater artifacts from .exe.sig not .nsis.zip.sig
Tauri v2 signs the NSIS .exe directly, not a .nsis.zip bundle.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 14:25:39 +09:00
delibae
ac47bf87fe fix: regenerate signing key with password, reference PASSWORD secret
Previous key generated with --ci had unusable password. Regenerated
with explicit password and updated pubkey + workflow.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 14:08:26 +09:00
delibae
31a4eda97c fix: remove TAURI_SIGNING_PRIVATE_KEY_PASSWORD env (key has no password)
Empty string is interpreted as a password. Omit entirely instead.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 13:50:02 +09:00
delibae
00e53db25b fix: merge brew include paths into CXXFLAGS/CFLAGS for macOS CI
cc-rs uses CXXFLAGS/CFLAGS, not CPPFLAGS. Move include paths there.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 13:40:37 +09:00
delibae
c5105c9bc8 fix: add CPPFLAGS/LDFLAGS for macOS CI harfbuzz include paths
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 13:39:11 +09:00
delibae
1058c40733 fix: set PKG_CONFIG_PATH for macOS CI brew dependencies
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 13:33:32 +09:00
delibae
634af53ac2 fix: macOS use pkg-config for tectonic deps, set empty signing key password
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 13:27:38 +09:00
delibae
08e54f263d feat: add auto-updater and fix macOS black screen on focus loss (v1.0.1)
- Add tauri-plugin-updater with signed update artifacts
- Add backgroundThrottling: disabled to prevent WKWebView black screen
- Add update check UI with toast notifications (sonner)
- Update build scripts to generate latest.json for GitHub Releases
- Add multi-platform CI workflow (macOS/Linux/Windows) with draft releases
- Bump version to 1.0.1

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 13:16:39 +09:00
Hanjin Bae
ebcb190d7a
fix: detect missing Git for Windows and guide users to install it (#37)
Windows users without Git for Windows see "Install Claude Code" loop
because Claude Code requires git-bash but the app never checks for it.
Now check_claude_status reports missing_git on Windows, and the setup UI
shows a dedicated "Git for Windows Required" screen with a download link
and re-check button.

Also adds Windows-essential env vars to uv installer and improves the
CI workflow to support manual release_tag input.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 00:27:15 +09:00
Hanjin Bae
3322f3c600
ci: preserve existing release assets when uploading Windows build (#36)
Replace tauri-action's built-in release management with gh CLI to
avoid overwriting macOS/Linux assets. The workflow now creates a
release only if one doesn't exist, and uploads Windows binaries
with --clobber to update only the Windows assets.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 22:15:28 +09:00
delibae
f594addbe1 ci: Windows-only GitHub Actions, macOS/Linux built locally
- Simplify build-desktop.yml to Windows only (with vcpkg cache)
- Add scripts/build-macos.sh for local macOS builds with signing/notarization
- Remove Travis CI (macOS unsupported, Windows too slow)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-14 16:50:08 +09:00
delibae
c634fb38b1 fix: use GitHub API for auto-generated release notes
gh release edit doesn't support --generate-notes flag,
use repos/{owner}/{repo}/releases/generate-notes API instead.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-14 02:41:04 +09:00
delibae
c8f7741d80 chore: remove covector, simplify release to manual tag-based flow
- Remove covector and .changes/ directory
- Remove covector workflow, keep only build-desktop.yml
- Replace custom changelog with GitHub auto-generated release notes
- Move Homebrew cask management to delibae/homebrew-claude-prism tap repo
- Remove in-repo homebrew/ directory
- Bump version to 1.0.0

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 02:00:38 +09:00
delibae
bb80c99271 fix: trigger build workflow via workflow_dispatch after covector publish
GITHUB_TOKEN tag pushes don't trigger other workflows (GitHub limitation).
Use gh workflow run to explicitly trigger Build Desktop after creating the
unified v* tag.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 21:36:56 +09:00
delibae
fb3914585e feat: create unified v* tag after covector publish to trigger build workflow
Covector creates per-package tags (e.g. claude-prism-desktop-v0.5.3) which
don't match the build workflow's v* trigger pattern. This adds a step to
create a unified vX.Y.Z tag after publish, bridging covector and the build.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 21:34:31 +09:00
delibae
fe1e5d8685 fix: enable covector createRelease for automatic tag and release creation 2026-03-10 21:20:18 +09:00
delibae
7904ba4084 fix: translate Korean comments to English for consistency in README and workflow files 2026-03-10 20:42:50 +09:00
delibae
bfb02d4f5c feat: Enhance Claude installation process and permissions handling
- Updated Tectonic build configuration for local macOS development.
- Modified git2 dependency to use vendored-libgit2 feature.
- Improved the `find_claude_binary` function to check for native installation paths first.
- Added functions to ensure required directories for Claude are created and writable, with elevation handling on macOS.
- Updated `install_claude_cli` to ensure necessary directories exist before installation.
- Refactored scientific skills installation to include directory permission checks and logging.
- Enhanced error handling and logging during installation processes.
- Improved UI components for displaying installation progress and logs.
- Added tests for new directory handling functions and installation logic.
- Updated LaTeX template for poster presentation with improved formatting and content.
2026-03-06 19:23:41 +09:00
delibae
9a0ac95496 feat: update build workflow to include Zotero OAuth secrets and add new .env.example file 2026-03-05 20:45:02 +09:00
delibae
f103a5199b feat: add --skip-stapling option to macOS build scripts and workflow 2026-03-05 20:28:20 +09:00
delibae
740ea8cbe4 fix: resolve vcpkg cache path via shell env before cache steps
${{ env.VCPKG_INSTALLATION_ROOT }} may not resolve in 'with' context.
Set path explicitly via GITHUB_ENV in a shell step first.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 19:40:01 +09:00
delibae
7ce175cd63 fix: use cache/restore + cache/save for vcpkg caching
Replace deprecated save-always with split restore/save steps.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 18:32:08 +09:00
delibae
32e4c62271 test: lightweight cache test with dummy data
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 18:28:45 +09:00
delibae
740a86d7dc test: temporary vcpkg cache-only workflow for testing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 17:47:20 +09:00
delibae
27a8eff68d fix: save vcpkg cache even on job failure and skip install on cache hit
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 17:38:17 +09:00
delibae
5f1b6fb06b chore: setup covector and bump version to v0.4.0
- Add covector config and CI workflow for automated versioning
- Bump all package versions to 0.4.0
- Add .changes/ directory with README for change management

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 17:36:21 +09:00
delibae
fd892ce6fd ci: use stable vcpkg cache key instead of workflow file hash
The previous key was based on hashFiles('build-desktop.yml'), which
invalidated the cache on every workflow change. Use a static key with
package names and a version suffix (bump v1→v2 when deps change).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 22:53:37 +09:00
delibae
5dc5e71c36 fix: Windows CI C++17 flag for ICU 78+ and add CSP validation tests
- Set CXXFLAGS=/std:c++17 on Windows CI (ICU 78+ requires C++17 features
  like nested-namespace-definition and auto in non-type template params)
- Add Vitest tests validating tauri.conf.json CSP configuration to prevent
  regressions (dangerousDisableAssetCspModification, style-src, connect-src,
  font-src directives)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 16:39:42 +09:00
delibae
7b9474414d ci: use external-harfbuzz on all platforms, fix Windows build
- Use external-harfbuzz globally (vendored harfbuzz build.rs has a
  header copy bug on Windows)
- Install harfbuzz[graphite2] via vcpkg on Windows instead of
  standalone graphite2
- Clear CXXFLAGS/CFLAGS on Windows to prevent macOS-specific
  .cargo/config.toml values from leaking

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 15:47:41 +09:00
delibae
029fe0bae4 ci: fix Windows vcpkg deps and macOS codesign skip
- Add vcpkg setup for Windows to provide graphite2, freetype, ICU,
  fontconfig (tectonic_bridge_graphite2 has no vendoring support)
- Use --no-sign flag on macOS when Apple certificate is not available
  (Tauri's var_os treats empty string as Some, triggering codesign)
- Cache vcpkg packages for faster subsequent builds

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 15:05:30 +09:00
delibae
eead431198 fix: use bundled HarfBuzz on Windows, update README
Use platform-specific tectonic features so Windows CI builds with
bundled HarfBuzz/Graphite2 instead of requiring pkg-config.
Rewrite README with updated feature list and install instructions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 14:45:45 +09:00
delibae
8d09eac810 ci: drop macOS x64 build, arm64 only
GitHub Actions no longer supports macos-13 Intel runners.
macOS Intel users can run the arm64 build via Rosetta 2.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 14:28:29 +09:00
delibae
7dd6b8325e ci: use macos-13 (Intel) runner for x86_64 macOS build
macos-14 is Apple Silicon and cannot cross-compile x86_64 with
pkg-config. Use macos-13 which is an Intel runner.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 14:26:36 +09:00
delibae
1b14c490f7 ci: use continue-on-error for Apple signing step
Signing step now uses continue-on-error so invalid or missing
certificates produce a warning instead of failing the build.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 14:21:16 +09:00
delibae
69fda868cc ci: skip signing when certificate not configured, improve release notes
- Skip Apple code signing with warning when secrets are not set
- Categorize changelog by feat/fix/chore
- Add download table with per-OS install instructions
- Add contributor avatars to release notes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 14:20:22 +09:00
delibae
480976c15a feat: add Homebrew Cask support and update SHA256 for macOS builds
fix: enhance slash command picker with loading state and tab filtering
fix: improve PDF preview button styling and functionality
fix: update PDF viewer layout for better responsiveness
fix: handle user cancellation in Claude event processing
chore: add cancelledByUser state to Claude chat store
docs: update README with installation instructions for macOS
2026-03-02 14:11:28 +09:00
delibae
6f82e67350 feat: integrate Tectonic for LaTeX compilation and update project structure
- Added Tectonic as a dependency for LaTeX compilation in Cargo.toml.
- Created Entitlements.plist for macOS app sandboxing and security permissions.
- Refactored latex.rs to utilize Tectonic for PDF generation, removing legacy compilation logic.
- Updated compile_latex function to handle Tectonic's processing and error handling.
- Enhanced synctex editing functionality to read and parse synctex data correctly.
- Modified project-wizard and template-preview components to improve project creation prompts.
- Adjusted tauri.conf.json to include entitlements for macOS and set minimum system version.
- Cleaned up unused code and improved overall code readability and maintainability.
2026-03-02 12:47:10 +09:00
delibae
3ed156af22 docs: improve macOS installation instructions in release notes
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 16:14:52 +09:00
delibae
1cf79dc00e fix: add ad-hoc code signing for macOS builds
Enables "Open Anyway" in System Settings instead of "damaged" error.
Uses APPLE_SIGNING_IDENTITY="-" for ad-hoc signing (no Apple Developer account needed).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 15:45:40 +09:00
delibae
802d7f8ded docs: add macOS xattr workaround to release notes
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 15:42:17 +09:00
delibae
0216700e16 fix: enable bundle creation and use tauri-action@v0
- Add bundle.active=true (defaults to false, causing no artifacts)
- Revert tauri-action to @v0 as recommended by official Tauri docs

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 15:16:45 +09:00
delibae
16c0b9446d fix: use tauri-action@v0.6 (v1 does not exist)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 15:06:05 +09:00
delibae
b0a42c109a fix: resolve CI build failures for cross-platform builds
- Remove OpenSSL dependency by disabling git2 default features (only local ops needed)
- Remove non-existent hidden_title() call from WebviewWindowBuilder
- Upgrade tauri-action v0 → v1 for artifact detection fixes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 15:05:10 +09:00
delibae
71aedaffb4 fix: use macos-14 runner for Intel builds (macos-13 deprecated) 2026-02-27 14:47:53 +09:00
delibae
20f0968803 feat: implement desktop build workflow and enhance editor detection 2026-02-27 14:43:06 +09:00