@@ -260,8 +260,7 @@ in rec {
260260
261261 # An Obelisk project is a reflex-platform project with a predefined layout and role for each component
262262 project = base: projectDefinition:
263− let configPath = base + "/config";
264− projectOut = sys: (getReflexPlatform sys).project (args@{ nixpkgs, ... }:
263+ let projectOut = sys: (getReflexPlatform sys).project (args@{ nixpkgs, ... }:
265264 let mkProject = { android ? null #TODO: Better error when missing
266265 , ios ? null #TODO: Better error when missing
267266 , packages ? {}
@@ -294,7 +293,21 @@ in rec {
294293 privateConfigDirs = ["config/backend"];
295294 injectableConfig = builtins.filterSource (path: _:
296295 !(lib.lists.any (x: hasPrefix (toString base + "/" + toString x) (toString path)) privateConfigDirs)
297− ) configPath;
296+ );
297+ __android = configPath: {
298+ ${if android == null then null else frontendName} = {
299+ executableName = "frontend";
300+ ${if builtins.pathExists staticFiles then "assets" else null} =
301+ nixpkgs.obeliskExecutableConfig.platforms.android.inject (injectableConfig configPath) processedStatic.symlinked;
302+ } // android;
303+ };
304+ __ios = configPath: {
305+ ${if ios == null then null else frontendName} = {
306+ executableName = "frontend";
307+ ${if builtins.pathExists staticFiles then "staticSrc" else null} =
308+ nixpkgs.obeliskExecutableConfig.platforms.ios.inject (injectableConfig configPath) processedStatic.symlinked;
309+ } // ios;
310+ };
298311 in {
299312 inherit shellToolOverrides tools withHoogle;
300313 overrides = totalOverrides;
@@ -314,21 +327,9 @@ in rec {
314327 commonName
315328 ];
316329 };
317− android = {
318− ${if android == null then null else frontendName} = {
319− executableName = "frontend";
320− ${if builtins.pathExists staticFiles then "assets" else null} =
321− nixpkgs.obeliskExecutableConfig.platforms.android.inject injectableConfig processedStatic.symlinked;
322− } // android;
323− };
324− ios = {
325− ${if ios == null then null else frontendName} = {
326− executableName = "frontend";
327− ${if builtins.pathExists staticFiles then "staticSrc" else null} =
328− nixpkgs.obeliskExecutableConfig.platforms.ios.inject injectableConfig processedStatic.symlinked;
329− } // ios;
330− };
331− passthru = { inherit android ios packages overrides tools shellToolOverrides withHoogle staticFiles staticFilesImpure __closureCompilerOptimizationLevel; };
330+ android = __android null;
331+ ios = __ios null;
332+ passthru = { inherit android ios packages overrides tools shellToolOverrides withHoogle staticFiles staticFilesImpure __closureCompilerOptimizationLevel processedStatic __ios __android; };
332333 };
333334 in mkProject (projectDefinition args));
334335 serverOn = sys: version: serverExe