Optimization: Strip foreign platform ArgyllCMS binaries from Windows and Linux builds #52

Closed
opened 2026-08-25 07:56:35 +01:00 by gronod · 0 comments
Owner

Description

Currently, src-tauri/tauri.conf.json defines "resources": ["argyll/**/*"]. As a result, the Windows installer bundles all Linux ArgyllCMS binaries (~100MB+), and the Linux bundles (Debian & AppImage) include all Windows ArgyllCMS binaries (.exe files).

Goal

  • Cleanly separate ArgyllCMS platform resources so that:
    • Windows builds bundle only Windows binaries (src-tauri/argyll/windows-x86_64/**/*) and common reference gamuts (src-tauri/argyll/reference_gamuts/**/*).
    • Linux builds bundle only Linux binaries (src-tauri/argyll/linux-x86_64/**/*) and common reference gamuts (src-tauri/argyll/reference_gamuts/**/*).
  • This will significantly reduce package sizes, installer generation times, and prevent bundling foreign OS binaries.

Proposed Changes

  1. Update CI workflows:
    • In .github/workflows/build-windows.yml, clean up/remove src-tauri/argyll/linux-x86_64 before npm run tauri build.
    • In .github/workflows/build-linux.yml, clean up/remove src-tauri/argyll/windows-x86_64 before npm run tauri build.
  2. Ensure local builds and packaging configurations handle platform-specific packaging cleanly.
  3. Bump patch version 0.1.8 -> 0.1.9.
  4. Open PR to development, verify Windows and Linux CI builds succeed, and merge.
### Description Currently, `src-tauri/tauri.conf.json` defines `"resources": ["argyll/**/*"]`. As a result, the Windows installer bundles all Linux ArgyllCMS binaries (~100MB+), and the Linux bundles (Debian & AppImage) include all Windows ArgyllCMS binaries (`.exe` files). ### Goal - Cleanly separate ArgyllCMS platform resources so that: - Windows builds bundle only Windows binaries (`src-tauri/argyll/windows-x86_64/**/*`) and common reference gamuts (`src-tauri/argyll/reference_gamuts/**/*`). - Linux builds bundle only Linux binaries (`src-tauri/argyll/linux-x86_64/**/*`) and common reference gamuts (`src-tauri/argyll/reference_gamuts/**/*`). - This will significantly reduce package sizes, installer generation times, and prevent bundling foreign OS binaries. ### Proposed Changes 1. Update CI workflows: - In `.github/workflows/build-windows.yml`, clean up/remove `src-tauri/argyll/linux-x86_64` before `npm run tauri build`. - In `.github/workflows/build-linux.yml`, clean up/remove `src-tauri/argyll/windows-x86_64` before `npm run tauri build`. 2. Ensure local builds and packaging configurations handle platform-specific packaging cleanly. 3. Bump patch version `0.1.8` -> `0.1.9`. 4. Open PR to `development`, verify Windows and Linux CI builds succeed, and merge.
Sign in to join this conversation.