[PR #1879] [FEATURE] Add AppImage build variants and CI workflow (#1348) #2665

Open
opened 2026-01-29 17:23:19 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/CCExtractor/ccextractor/pull/1879

State: closed
Merged: Yes


Summary

Rewrites the AppImage build script and adds a CI workflow to automatically build AppImages on releases.

Build Variants (matching Docker)

  • minimal: Basic CCExtractor without OCR (smallest size, ~14MB)
  • ocr: CCExtractor with OCR support (default)
  • hardsubx: CCExtractor with burned-in subtitle extraction (OCR + FFmpeg)

Changes to linux/build_appimage.sh

  • Add BUILD_TYPE environment variable to select variant
  • Fix CMake options (was incorrectly passing ENABLE_OCR=yes to make instead of -DWITH_OCR=ON to cmake)
  • Bundle tessdata for OCR builds with wrapper script that sets TESSDATA_PREFIX
  • Create proper desktop file and icon handling
  • Improve error handling and cleanup

New CI Workflow .github/workflows/build_appimage.yml

  • Builds all three variants on release
  • Uploads AppImages as release assets automatically
  • Can be manually triggered for specific variants
  • Caches GPAC build for faster CI runs

Usage

./build_appimage.sh              # Builds 'ocr' variant (default)
BUILD_TYPE=minimal ./build_appimage.sh
BUILD_TYPE=hardsubx ./build_appimage.sh

Testing

Tested locally - minimal variant builds successfully and runs:

$ ./ccextractor-minimal-x86_64.AppImage --version
CCExtractor detailed version info
    Version: 0.95
    ...

Closes #1348

🤖 Generated with Claude Code

**Original Pull Request:** https://github.com/CCExtractor/ccextractor/pull/1879 **State:** closed **Merged:** Yes --- ## Summary Rewrites the AppImage build script and adds a CI workflow to automatically build AppImages on releases. ### Build Variants (matching Docker) - **minimal**: Basic CCExtractor without OCR (smallest size, ~14MB) - **ocr**: CCExtractor with OCR support (default) - **hardsubx**: CCExtractor with burned-in subtitle extraction (OCR + FFmpeg) ### Changes to `linux/build_appimage.sh` - Add `BUILD_TYPE` environment variable to select variant - Fix CMake options (was incorrectly passing `ENABLE_OCR=yes` to make instead of `-DWITH_OCR=ON` to cmake) - Bundle tessdata for OCR builds with wrapper script that sets `TESSDATA_PREFIX` - Create proper desktop file and icon handling - Improve error handling and cleanup ### New CI Workflow `.github/workflows/build_appimage.yml` - Builds all three variants on release - Uploads AppImages as release assets automatically - Can be manually triggered for specific variants - Caches GPAC build for faster CI runs ## Usage ```bash ./build_appimage.sh # Builds 'ocr' variant (default) BUILD_TYPE=minimal ./build_appimage.sh BUILD_TYPE=hardsubx ./build_appimage.sh ``` ## Testing Tested locally - minimal variant builds successfully and runs: ``` $ ./ccextractor-minimal-x86_64.AppImage --version CCExtractor detailed version info Version: 0.95 ... ``` Closes #1348 🤖 Generated with [Claude Code](https://claude.com/claude-code)
claunia added the pull-request label 2026-01-29 17:23:20 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ccextractor#2665