diff --git a/apps/rebreak-native/eas.json b/apps/rebreak-native/eas.json index 2a70831..6e6bca9 100644 --- a/apps/rebreak-native/eas.json +++ b/apps/rebreak-native/eas.json @@ -8,7 +8,8 @@ "developmentClient": true, "distribution": "internal", "env": { - "EXPO_PUBLIC_API_URL": "https://staging.rebreak.org" + "EXPO_PUBLIC_API_URL": "https://staging.rebreak.org", + "REBREAK_ENABLE_FAMILY_CONTROLS": "1" }, "ios": { "simulator": false diff --git a/apps/rebreak-native/plugins/with-rebreak-protection-ios.js b/apps/rebreak-native/plugins/with-rebreak-protection-ios.js index a6f0add..fbde45c 100644 --- a/apps/rebreak-native/plugins/with-rebreak-protection-ios.js +++ b/apps/rebreak-native/plugins/with-rebreak-protection-ios.js @@ -47,11 +47,16 @@ function withMainAppEntitlements(config) { cfg.modResults['com.apple.developer.networking.networkextension'] = [ 'content-filter-provider', ]; - // TEMP: Family Controls Distribution Entitlement liegt bei Apple zur Freigabe. - // Solange das Antrag nicht durch ist, kann EAS kein AppStore-Provisioning-Profil - // mit FC erstellen → Build-Fehler. Sobald Apple freigibt: Zeile wieder rein - // (oder via Env-Flag) + buildNumber bump. - // cfg.modResults['com.apple.developer.family-controls'] = true; + // Family Controls: das DISTRIBUTION-Entitlement liegt noch bei Apple zur Freigabe + // → AppStore/TestFlight-Builds (Profile preview/production) dürfen es NICHT claimen, + // sonst kippt EAS' Provisioning ("doesn't support the Family Controls capability"). + // Für development-Builds (Dev-Entitlement, internal distribution) schalten wir's per + // Env-Flag wieder ein (eas.json → development.env.REBREAK_ENABLE_FAMILY_CONTROLS="1"), + // damit denyAppRemoval / ManagedSettings im Dev-Client testbar ist. Sobald Apple das + // Distribution-Entitlement freigibt: Flag auch in preview/production env setzen + buildNumber bump. + if (process.env.REBREAK_ENABLE_FAMILY_CONTROLS === '1') { + cfg.modResults['com.apple.developer.family-controls'] = true; + } const groups = cfg.modResults['com.apple.security.application-groups'] || []; if (!groups.includes(APP_GROUP)) { cfg.modResults['com.apple.security.application-groups'] = [...groups, APP_GROUP];