Package validation now requires iptvnator_mpv_helper.exe and the frame
reader next to the addon on win32 (mirroring darwin); the after-pack hook
resolves the .exe name and skips the POSIX execute-bit fixup there. The
build-and-make win32 dist check asserts the helper, the reader and an mpv
DLL beside the helper at the native/ top level. The dist asset copy stops
shipping MSVC intermediates (pdb/iobj/ipdb/ilk/exp/obj) and build-time
import libraries (.lib/.dll.a) — the runtime DLLs are what packages need.
The release-files regex in the identity test tolerates CRLF so the suite
stays host-agnostic on Windows checkouts.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Introduced tooling for building and staging the macOS `libmpv` runtime for IPTVnator's embedded MPV player.
- Added `build-macos-runtime.mjs` for building an LGPL-compatible runtime from source.
- Created `stage-macos-runtime.mjs` for staging the built runtime artifacts.
- Implemented validation for the packaged embedded MPV runtime in `electron-after-pack.cjs` and `embedded-mpv-macos.cjs`.
- Updated packaging scripts to ensure the embedded MPV runtime is correctly integrated and validated during the build process.
- Added README files to document the expected layout and usage for the embedded MPV runtime artifacts.
Entire-Checkpoint: c6e522b4276c
Add webpack config and include it in the electron backend build so
worker scripts are correctly bundled for packaged apps. Move worker
files to be packaged as extraResources instead of asar unpack patterns
so the packaged app can load worker JS from Resources/dist/... at
runtime. Fix worker path resolution in epg.events: compute resourcesPath
from app.getAppPath() and point to dist/apps/electron-backend/workers
when app.isPackaged. Remove verbose app path logging and update comments
to reflect the actual packaged layout.
Why: ensure webworker entry points are included in the renderer/backend
bundle and accessible when the Electron app is packaged, preventing
worker loading failures in production builds.
Add a new remote-control-web application using Angular standalone
bootstrap. Add main.ts to bootstrap Application with appConfig and log
bootstrap errors.
Introduce global styles (styles.scss) to reset page margins, ensure
full-height layout, set dark background, and prevent horizontal scroll.
Add Nx project configuration (project.json) for build, serve, test,
lint, extract-i18n and serve-static targets with production and
development configurations, asset and style wiring, and Jest test
integration.
Add tsconfig.spec.json to configure testing compilation (Jest, Node),
include test files and test setup.
Start app configuration provider file (app.config.ts) to prepare
application providers (partial file added).
These changes scaffold the new remote-control-web application and
enable building, serving and testing in the monorepo.