Compare commits

..
Author SHA1 Message Date
66a350eb53
test 2026-08-08 17:14:54 -04:00
5 changed files with 21 additions and 25 deletions

View file

@ -22,17 +22,7 @@ jobs:
extra_nix_config: experimental-features = nix-command flakes flake-self-attrs extra_nix_config: experimental-features = nix-command flakes flake-self-attrs
- name: Build app - name: Build app
run: | run: nix develop --command bash -c "flutter pub get && dart scripts/generate.dart && flutter pub run build_runner build && flutter build ios --release --no-codesign"
nix develop --command bash -c '
set -e
flutter pub get
dart scripts/generate.dart
flutter pub run build_runner build
# Nix-provided Flutter'"'"'s bundled frameworks are read-only, which
# breaks lipo when Flutter thins them into build/ (NixOS/nixpkgs#405066).
find "$(dirname "$(dirname "$(readlink -f "$(command -v flutter)")")")" -type d -iname "*.framework" -exec chmod -R u+w {} + 2>/dev/null || true
flutter build ios --release --no-codesign
'
# Unsigned IPA: SideStore/AltStore re-sign this on-device with the # Unsigned IPA: SideStore/AltStore re-sign this on-device with the
# user's own Apple ID at install time, so no certificate is needed here. # user's own Apple ID at install time, so no certificate is needed here.

View file

@ -21,17 +21,8 @@ jobs:
with: with:
extra_nix_config: experimental-features = nix-command flakes flake-self-attrs extra_nix_config: experimental-features = nix-command flakes flake-self-attrs
- run: | - name: Build app
nix develop --command bash -c ' run: nix develop --command bash -c "flutter pub get && dart scripts/generate.dart && flutter pub run build_runner build && flutter build macos --release"
set -e
flutter pub get
dart scripts/generate.dart
flutter pub run build_runner build
# Nix-provided Flutter'"'"'s bundled frameworks are read-only, which
# breaks lipo when Flutter thins them into build/ (NixOS/nixpkgs#405066).
find "$(dirname "$(dirname "$(readlink -f "$(command -v flutter)")")")" -type d -iname "*.framework" -exec chmod -R u+w {} + 2>/dev/null || true
flutter build macos --release
'
- name: Upload installer artifact - name: Upload installer artifact
uses: actions/upload-artifact@v6 uses: actions/upload-artifact@v6

View file

@ -336,7 +336,7 @@
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh; shellPath = /bin/sh;
shellScript = "ebin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin; shellScript = "export PATH=\"$PROJECT_DIR/scripts:$PATH\"\n/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
}; };
9740EEB61CF901F6004384FC /* Run Script */ = { 9740EEB61CF901F6004384FC /* Run Script */ = {
isa = PBXShellScriptBuildPhase; isa = PBXShellScriptBuildPhase;
@ -351,7 +351,7 @@
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh; shellPath = /bin/sh;
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; shellScript = "export PATH=\"$PROJECT_DIR/scripts:$PATH\"\n/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
}; };
EE82EC529EB6C0F1FA480659 /* [CP] Check Pods Manifest.lock */ = { EE82EC529EB6C0F1FA480659 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase; isa = PBXShellScriptBuildPhase;

View file

@ -349,7 +349,7 @@
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh; shellPath = /bin/sh;
shellScript = "echo \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename && \"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh embed\n"; shellScript = "export PATH=\"$PROJECT_DIR/scripts:$PATH\"\necho \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename && \"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh embed\n";
}; };
33CC111E2044C6BF0003C045 /* ShellScript */ = { 33CC111E2044C6BF0003C045 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase; isa = PBXShellScriptBuildPhase;

15
scripts/lipo Executable file
View file

@ -0,0 +1,15 @@
#!/bin/sh
for arg in "$@"; do
case "$arg" in
*.framework/*)
fw_dir="${arg%.framework/*}.framework"
chmod -R u+w "$fw_dir" 2>/dev/null
;;
*.lipo)
chmod u+w "$(dirname "$arg")" 2>/dev/null
;;
esac
done
exec /usr/bin/lipo "$@"