From 8ee10e40adbf4e33ba311be3187e986ae334bcfc Mon Sep 17 00:00:00 2001 From: Logan McNaughton <848146+loganmc10@users.noreply.github.com> Date: Sat, 18 Apr 2026 08:02:30 +0200 Subject: [PATCH] add provisionprofile (#767) * add provisionprofile * more --- .github/dependabot.yml | 1 + .github/workflows/build.yml | 42 ++++++++++++++--------- .github/workflows/lint.yml | 25 ++++++++------ data/macos/embedded.provisionprofile | Bin 0 -> 12309 bytes data/{ => macos}/entitlements_dev.plist | 0 data/{ => macos}/entitlements_prod.plist | 0 6 files changed, 41 insertions(+), 27 deletions(-) create mode 100644 data/macos/embedded.provisionprofile rename data/{ => macos}/entitlements_dev.plist (100%) rename data/{ => macos}/entitlements_prod.plist (100%) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 4cef5c4a..eab84a55 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -8,6 +8,7 @@ updates: directory: "/" schedule: interval: "weekly" + # - package-ecosystem: "cargo" # directory: "/" # schedule: diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 22100400..981f9581 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -4,11 +4,11 @@ permissions: on: push: - branches: ["main"] + branches: [ "main" ] tags: - "v*" pull_request: - branches: ["main"] + branches: [ "main" ] env: CARGO_TERM_COLOR: always @@ -40,24 +40,28 @@ jobs: rustflags: "" cache: ${{ github.ref_type != 'tag' }} - name: Set LLVM_VERSION - run: echo "LLVM_VERSION=$(rustc --version --verbose | grep "LLVM version" | cut -d':' -f2 | xargs)" >> $GITHUB_ENV + run: echo "LLVM_VERSION=$(rustc --version --verbose | grep "LLVM version" | cut + -d':' -f2 | xargs)" >> $GITHUB_ENV - name: Install SDL Dependencies # https://wiki.libsdl.org/SDL3/README-linux#build-dependencies uses: awalsh128/cache-apt-pkgs-action@v1 with: - packages: build-essential git make \ - pkg-config cmake ninja-build gnome-desktop-testing libasound2-dev libpulse-dev \ - libaudio-dev libfribidi-dev libjack-dev libsndio-dev libx11-dev libxext-dev \ - libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev libxss-dev libxtst-dev \ - libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev libgles2-mesa-dev \ - libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev libudev-dev libthai-dev \ - libpipewire-0.3-dev libwayland-dev libdecor-0-dev liburing-dev libfreetype-dev libfontconfig-dev + packages: build-essential git make pkg-config cmake ninja-build + gnome-desktop-testing libasound2-dev libpulse-dev libaudio-dev + libfribidi-dev libjack-dev libsndio-dev libx11-dev libxext-dev + libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev libxss-dev + libxtst-dev libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev + libgles2-mesa-dev libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev + libudev-dev libthai-dev libpipewire-0.3-dev libwayland-dev + libdecor-0-dev liburing-dev libfreetype-dev libfontconfig-dev version: ${{ matrix.target }}-1.0 - name: Install LLVM and Clang uses: KyleMayes/install-llvm-action@v2 with: version: ${{ env.LLVM_VERSION }} - force-url: https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ env.LLVM_VERSION }}/LLVM-${{ env.LLVM_VERSION }}-Linux-${{ matrix.llvm }}.tar.xz + force-url: https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ + env.LLVM_VERSION }}/LLVM-${{ env.LLVM_VERSION }}-Linux-${{ + matrix.llvm }}.tar.xz - name: Build run: | cargo build --release -v --target=${{ matrix.target }} @@ -104,7 +108,9 @@ jobs: uses: KyleMayes/install-llvm-action@v2 with: version: ${{ env.LLVM_VERSION }} - force-url: https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ env.LLVM_VERSION }}/LLVM-${{ env.LLVM_VERSION }}-${{ matrix.llvm }}.exe + force-url: https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ + env.LLVM_VERSION }}/LLVM-${{ env.LLVM_VERSION }}-${{ matrix.llvm + }}.exe - name: Build run: | cargo build --release -v --target=${{ matrix.target }} @@ -163,12 +169,15 @@ jobs: rustflags: "" cache: ${{ github.ref_type != 'tag' }} - name: Set LLVM_VERSION - run: echo "LLVM_VERSION=$(rustc --version --verbose | grep "LLVM version" | cut -d':' -f2 | xargs)" >> $GITHUB_ENV + run: echo "LLVM_VERSION=$(rustc --version --verbose | grep "LLVM version" | cut + -d':' -f2 | xargs)" >> $GITHUB_ENV - name: Install LLVM and Clang uses: KyleMayes/install-llvm-action@v2 with: version: ${{ env.LLVM_VERSION }} - force-url: https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ env.LLVM_VERSION }}/LLVM-${{ env.LLVM_VERSION }}-macOS-${{ matrix.llvm }}.tar.xz + force-url: https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ + env.LLVM_VERSION }}/LLVM-${{ env.LLVM_VERSION }}-macOS-${{ + matrix.llvm }}.tar.xz - name: Build run: | cargo install cargo-bundle @@ -184,7 +193,7 @@ jobs: - name: Sign Bundle Dev if: ${{ github.ref_type != 'tag' }} run: | - codesign -f --entitlements data/entitlements_dev.plist --deep --timestamp --options runtime -s - target/${{ matrix.target }}/release/bundle/osx/Gopher64.app + codesign -f --entitlements data/macos/entitlements_dev.plist --deep --timestamp --options runtime -s - target/${{ matrix.target }}/release/bundle/osx/Gopher64.app - name: Import Codesign Certs if: ${{ github.ref_type == 'tag' }} uses: apple-actions/import-codesign-certs@v6 @@ -194,7 +203,8 @@ jobs: - name: Sign Bundle Release if: ${{ github.ref_type == 'tag' }} run: | - codesign -f --entitlements data/entitlements_prod.plist --deep --timestamp --options runtime -s "${{ secrets.APPLE_DEVELOPER_ID }}" target/${{ matrix.target }}/release/bundle/osx/Gopher64.app + cp data/macos/embedded.provisionprofile target/${{ matrix.target }}/release/bundle/osx/Gopher64.app/Contents/embedded.provisionprofile + codesign -f --entitlements data/macos/entitlements_prod.plist --deep --timestamp --options runtime -s "${{ secrets.APPLE_DEVELOPER_ID }}" target/${{ matrix.target }}/release/bundle/osx/Gopher64.app zip -r gopher64-${{ matrix.arch }}.zip target/${{ matrix.target }}/release/bundle/osx/Gopher64.app xcrun notarytool submit --wait --apple-id "${{ secrets.APPLE_ID }}" --team-id "${{ secrets.APPLE_DEVELOPER_ID }}" --password "${{ secrets.APPLE_APP_PASSWORD }}" gopher64-${{ matrix.arch }}.zip xcrun stapler staple target/${{ matrix.target }}/release/bundle/osx/Gopher64.app diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 380a46d2..cfe87454 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -2,9 +2,9 @@ name: Rust-lint on: push: - branches: ["main"] + branches: [ "main" ] pull_request: - branches: ["main"] + branches: [ "main" ] permissions: contents: read @@ -23,24 +23,27 @@ jobs: with: components: clippy, rustfmt - name: Set LLVM_VERSION - run: echo "LLVM_VERSION=$(rustc --version --verbose | grep "LLVM version" | cut -d':' -f2 | xargs)" >> $GITHUB_ENV + run: echo "LLVM_VERSION=$(rustc --version --verbose | grep "LLVM version" | cut + -d':' -f2 | xargs)" >> $GITHUB_ENV - name: Install SDL Dependencies # https://wiki.libsdl.org/SDL3/README-linux#build-dependencies uses: awalsh128/cache-apt-pkgs-action@v1 with: - packages: build-essential git make \ - pkg-config cmake ninja-build gnome-desktop-testing libasound2-dev libpulse-dev \ - libaudio-dev libfribidi-dev libjack-dev libsndio-dev libx11-dev libxext-dev \ - libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev libxss-dev libxtst-dev \ - libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev libgles2-mesa-dev \ - libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev libudev-dev libthai-dev \ - libpipewire-0.3-dev libwayland-dev libdecor-0-dev liburing-dev libfreetype-dev libfontconfig-dev + packages: build-essential git make pkg-config cmake ninja-build + gnome-desktop-testing libasound2-dev libpulse-dev libaudio-dev + libfribidi-dev libjack-dev libsndio-dev libx11-dev libxext-dev + libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev libxss-dev + libxtst-dev libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev + libgles2-mesa-dev libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev + libudev-dev libthai-dev libpipewire-0.3-dev libwayland-dev + libdecor-0-dev liburing-dev libfreetype-dev libfontconfig-dev version: lint-1.0 - name: Install LLVM and Clang uses: KyleMayes/install-llvm-action@v2 with: version: ${{ env.LLVM_VERSION }} - force-url: https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ env.LLVM_VERSION }}/LLVM-${{ env.LLVM_VERSION }}-Linux-X64.tar.xz + force-url: https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ + env.LLVM_VERSION }}/LLVM-${{ env.LLVM_VERSION }}-Linux-X64.tar.xz - name: Rustfmt Check uses: actions-rust-lang/rustfmt@v1 - name: Lint diff --git a/data/macos/embedded.provisionprofile b/data/macos/embedded.provisionprofile new file mode 100644 index 0000000000000000000000000000000000000000..b2cd43fad3749d232248bb158fbb91df09872e17 GIT binary patch literal 12309 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