fix macos permission issues
This commit is contained in:
parent
21a0e0db70
commit
5bbd51c4bc
2 changed files with 82 additions and 79 deletions
79
.github/workflows/ios.yml
vendored
79
.github/workflows/ios.yml
vendored
|
|
@ -1,49 +1,50 @@
|
||||||
name: "Build iOS App"
|
name: "Build iOS App"
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: ["main"]
|
branches: ["main"]
|
||||||
tags: ["*"]
|
tags: ["*"]
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-app:
|
build-app:
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v6
|
||||||
with:
|
with:
|
||||||
submodules: recursive
|
submodules: recursive
|
||||||
|
|
||||||
- name: Lix GHA Installer Action
|
- name: Lix GHA Installer Action
|
||||||
uses: samueldr/lix-gha-installer-action@v2026-02-22
|
uses: samueldr/lix-gha-installer-action@v2026-02-22
|
||||||
with:
|
with:
|
||||||
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 '
|
nix develop --command bash -c '
|
||||||
set -e
|
set -e
|
||||||
flutter pub get
|
flutter pub get
|
||||||
dart scripts/generate.dart
|
dart scripts/generate.dart
|
||||||
flutter pub run build_runner build
|
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
|
FLUTTER_ROOT="$(dirname "$(dirname "$(readlink -f "$(command -v flutter)")")")"
|
||||||
# user's own Apple ID at install time, so no certificate is needed here.
|
sudo find -L "$FLUTTER_ROOT" -type d -iname "*.framework" -exec chmod -R u+w {} +
|
||||||
- name: Package unsigned IPA
|
|
||||||
run: |
|
|
||||||
mkdir Payload
|
|
||||||
cp -r build/ios/iphoneos/Runner.app Payload/
|
|
||||||
zip -r Nexus.ipa Payload
|
|
||||||
|
|
||||||
- name: Upload IPA artifact
|
flutter build ios --release --no-codesign
|
||||||
uses: actions/upload-artifact@v6
|
'
|
||||||
with:
|
|
||||||
name: Nexus.ipa
|
# Unsigned IPA: SideStore/AltStore re-sign this on-device with the
|
||||||
path: Nexus.ipa
|
# user's own Apple ID at install time, so no certificate is needed here.
|
||||||
|
- name: Package unsigned IPA
|
||||||
|
run: |
|
||||||
|
mkdir Payload
|
||||||
|
cp -r build/ios/iphoneos/Runner.app Payload/
|
||||||
|
zip -r Nexus.ipa Payload
|
||||||
|
|
||||||
|
- name: Upload IPA artifact
|
||||||
|
uses: actions/upload-artifact@v6
|
||||||
|
with:
|
||||||
|
name: Nexus.ipa
|
||||||
|
path: Nexus.ipa
|
||||||
|
|
|
||||||
64
.github/workflows/macos.yml
vendored
64
.github/workflows/macos.yml
vendored
|
|
@ -1,40 +1,42 @@
|
||||||
name: "Build MacOS App"
|
name: "Build MacOS App"
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: ["main"]
|
branches: ["main"]
|
||||||
tags: ["*"]
|
tags: ["*"]
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-app:
|
build-app:
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v6
|
||||||
with:
|
with:
|
||||||
submodules: recursive
|
submodules: recursive
|
||||||
|
|
||||||
- name: Lix GHA Installer Action
|
- name: Lix GHA Installer Action
|
||||||
uses: samueldr/lix-gha-installer-action@v2026-02-22
|
uses: samueldr/lix-gha-installer-action@v2026-02-22
|
||||||
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: |
|
||||||
set -e
|
nix develop --command bash -c '
|
||||||
flutter pub get
|
set -e
|
||||||
dart scripts/generate.dart
|
flutter pub get
|
||||||
flutter pub run build_runner build
|
dart scripts/generate.dart
|
||||||
# Nix-provided Flutter'"'"'s bundled frameworks are read-only, which
|
flutter pub run build_runner build
|
||||||
# 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
|
FLUTTER_ROOT="$(dirname "$(dirname "$(readlink -f "$(command -v flutter)")")")"
|
||||||
uses: actions/upload-artifact@v6
|
sudo find -L "$FLUTTER_ROOT" -type d -iname "*.framework" -exec chmod -R u+w {} +
|
||||||
with:
|
|
||||||
name: App
|
flutter build macos --release
|
||||||
path: build/macos/Build/Products/Release/Nexus.app
|
'
|
||||||
|
|
||||||
|
- name: Upload installer artifact
|
||||||
|
uses: actions/upload-artifact@v6
|
||||||
|
with:
|
||||||
|
name: App
|
||||||
|
path: build/macos/Build/Products/Release/Nexus.app
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue