Files
gronod e319e5b106
Build macOS Packages / Build macOS (Intel) (pull_request) Successful in 39s
Build macOS Packages / Build macOS (Apple Silicon) (pull_request) Successful in 40s
Build macOS Packages / Build macOS (Universal) (pull_request) Failing after 10s
fix: resolve PPD media type and tray option discovery and selection
- Parse PPD translation strings and decode hex escapes (e.g. CD<2F>DVD -> CD/DVD)
- Populate InspectorView media type and tray dropdowns with human-readable titles while preserving computer-readable choice codes
- Fix empty-array nil coalescing bug in InspectorView preventing empty tray and media type popups
- Support OEM vendor PPD keywords (Canon CNIJMediaType/CNIJMediaSupply, Epson EPIJ_FdSo)
- Add dual-identity lookup in PrintEngine and InspectorView for robust choice code vs title resolution
- Add comprehensive PPDOptionsTests and CLI test runner

Closes #1, Closes #2
2026-09-07 22:45:02 +01:00

47 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# Pack vendor-iccery/ (all archs present) into one zip for ICCery to drop into
# src-tauri/targetprint/ — matching their macos-x86_64 / macos-aarch64 layout.
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
PREFIX="${1:-TargetPrint-vendor-iccery}"
SRC="$ROOT/build/release-assets/vendor-iccery"
test -d "$SRC"
README="$SRC/README.md"
cat > "$README" <<'EOF'
# TargetPrint — vendor into ICCery
Drop this directory into ICCery as `src-tauri/targetprint/`:
```
src-tauri/targetprint/
macos-x86_64/TargetPrint.app
macos-aarch64/TargetPrint.app
macos-universal/TargetPrint.app
```
Launch from the Rust side (fire-and-forget, SPEC §16):
```rust
let app = bundled_targetprint_app(); // path to TargetPrint.app/Contents/MacOS/TargetPrint
Command::new(app)
.arg("--job")
.arg(&job_json_path)
.spawn()?;
```
Pick the folder that matches the ICCery bundle being built
(`macos-x86_64` / `macos-aarch64`), or ship `macos-universal` in every macOS build.
Do not sandbox TargetPrint; it must call `cupsGetPPD`.
EOF
OUT="$ROOT/build/release-assets/${PREFIX}.zip"
rm -f "$OUT"
(
cd "$ROOT/build/release-assets"
ditto -c -k --keepParent vendor-iccery "$OUT"
)
echo "==> $OUT"