Files
FlightTube/src-tauri/tauri.conf.json
T
vincent 3296b5436a feat: bundle yt-dlp and ffmpeg as sidecars
The app is now self-contained: yt-dlp, ffmpeg and ffprobe ship inside
the bundle and are resolved beside the executable, so a fresh Mac needs
nothing installed. A system copy still wins when present, which is how
to run a newer yt-dlp than the bundled one. yt-dlp is pointed at the
bundled ffmpeg explicitly, since a bundled app has no reason to have one
on PATH.

The binaries stay out of git (~140MB); scripts/fetch-binaries.sh pulls
them. Homebrew's ffmpeg cannot be used — it links a dozen dylibs and
does not relocate — so the static arm64 build is used instead.

Version checks moved to the async Command. yt-dlp is a PyInstaller
bundle that unpacks ~37MB on first run, and the blocking call was
stalling a runtime worker for roughly twenty seconds.

Bundle size goes from 19MB to 153MB.
2026-08-29 11:41:14 +02:00

54 lines
1.1 KiB
JSON

{
"$schema": "https://schema.tauri.app/config/2",
"productName": "FlightTube",
"version": "0.1.0",
"identifier": "com.vincent.flighttube",
"build": {
"beforeDevCommand": "npm run dev",
"devUrl": "http://localhost:1420",
"beforeBuildCommand": "npm run build",
"frontendDist": "../dist"
},
"app": {
"windows": [
{
"title": "FlightTube",
"width": 1180,
"height": 780,
"minWidth": 900,
"minHeight": 560,
"center": true,
"titleBarStyle": "Overlay",
"hiddenTitle": true
}
],
"security": {
"csp": null,
"assetProtocol": {
"enable": true,
"scope": [
"$HOME/Movies/FlightTube/**",
"$APPDATA/**",
"$APPLOCALDATA/**"
]
}
}
},
"bundle": {
"active": true,
"targets": "all",
"icon": [
"icons/32x32.png",
"icons/128x128.png",
"icons/128x128@2x.png",
"icons/icon.icns",
"icons/icon.ico"
],
"externalBin": [
"binaries/yt-dlp",
"binaries/ffmpeg",
"binaries/ffprobe"
]
}
}