Repository navigation
Replies: 1 comment 4 replies
|
@hyochan I'd keep an explicit signal, but move it from a project marker to the build invocation, and I'd avoid auto-detecting from files in the project. Why not project markers If Vega and FireOS ship as different artifacts, they are usually built from the same project. Any Vega marker in the repo is then present in the FireOS build too, so marker-based detection would rewrite the FireOS build as well. The only thing that differs between the two builds is how the build was invoked, which matches your point that the build intent has to carry the answer. What I'd suggest
{
"build": {
"firetv": { "env": { "EXPO_IAP_STORE": "amazon" } },
"vega": { "env": { "EXPO_IAP_STORE": "vega" } }
}
}
This keeps the build deterministic: the same command always produces the same artifact, whatever else is in the repository. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
The Expo plugin rewrites the app for VegaOS builds when
isVegaEnabledis set in the plugin options.Question: should the plugin auto-detect a VegaOS build (e.g. Vega markers in the project or an explicit store target for the build invocation) instead of requiring the flag, with the flag kept as an explicit override?
Context: Vega and FireOS ship as different install artifacts, and the build-time store resolver only names play, horizon, and amazon — Vega is detected at runtime through the platform instead. The check runs at prebuild before any InstallReferrer/API signal exists, so the build intent — not the device — has to carry the answer.
If auto-detect sounds right, what markers should count: an environment variable set by the Vega build invocation, explicit config objects for FireOS vs Vega, or something else?
All reactions