diff --git a/.github/workflows/beta.yml b/.github/workflows/beta.yml index 0dec182a..219c8c36 100644 --- a/.github/workflows/beta.yml +++ b/.github/workflows/beta.yml @@ -2,7 +2,7 @@ name: Beta SideStore build on: push: tags: - - '[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+' # example: 1.0.0-beta.1 + - '[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+' # example: 1.0.0-beta.1 jobs: build: @@ -11,41 +11,41 @@ jobs: fail-fast: false matrix: include: - - os: 'macos-12' - version: '14.2' + - os: 'macos-12' + version: '14.2' runs-on: ${{ matrix.os }} steps: - - name: Checkout code - uses: actions/checkout@v2 - with: - submodules: recursive + - name: Checkout code + uses: actions/checkout@v2 + with: + submodules: recursive - - name: Install dependencies - run: brew install ldid + - name: Install dependencies + run: brew install ldid - - name: Change version to tag - run: sed -e '/MARKETING_VERSION = .*/s/= .*/= ${{ github.ref_name }}/' -i '' Build.xcconfig + - name: Change version to tag + run: sed -e '/MARKETING_VERSION = .*/s/= .*/= ${{ github.ref_name }}/' -i '' Build.xcconfig - - name: Setup Xcode - uses: maxim-lobanov/setup-xcode@v1.4.1 - with: - xcode-version: ${{ matrix.version }} + - name: Setup Xcode + uses: maxim-lobanov/setup-xcode@v1.4.1 + with: + xcode-version: ${{ matrix.version }} - - name: Build SideStore - run: make build | xcpretty && exit ${PIPESTATUS[0]} + - name: Build SideStore + run: make build | xcpretty && exit ${PIPESTATUS[0]} - - name: Fakesign app - run: make fakesign + - name: Fakesign app + run: make fakesign - - name: Convert to IPA - run: make ipa + - name: Convert to IPA + run: make ipa - name: Upload SideStore.ipa Artifact - uses: actions/upload-artifact@v3.1.0 - with: - name: SideStore.ipa - path: SideStore.ipa + uses: actions/upload-artifact@v3.1.0 + with: + name: SideStore.ipa + path: SideStore.ipa - name: Upload *.dSYM Artifact uses: actions/upload-artifact@v3.1.0 @@ -53,38 +53,38 @@ jobs: name: SideStore-dSYM path: ./*.dSYM/ - - name: Get version - id: version - run: echo "version=$(grep MARKETING_VERSION Build.xcconfig | sed -e "s/MARKETING_VERSION = //g")" >> $GITHUB_OUTPUT + - name: Get version + id: version + run: echo "version=$(grep MARKETING_VERSION Build.xcconfig | sed -e "s/MARKETING_VERSION = //g")" >> $GITHUB_OUTPUT - - name: Get current date - id: date - run: echo "date=$(date -u +'%c')" >> $GITHUB_OUTPUT + - name: Get current date + id: date + run: echo "date=$(date -u +'%c')" >> $GITHUB_OUTPUT - - name: Get current date in AltStore date form - id: date_altstore - run: echo "date=$(date -u +'%Y-%m-%d')" >> $GITHUB_OUTPUT + - name: Get current date in SideStore date form + id: date_sidestore + run: echo "date=$(date -u +'%Y-%m-%d')" >> $GITHUB_OUTPUT - - name: Upload to new beta release - uses: softprops/action-gh-release@v1 - with: - token: ${{ secrets.GITHUB_TOKEN }} - name: ${{ steps.version.outputs.version }} - tag_name: ${{ github.ref_name }} - draft: true - prerelease: true - files: SideStore.ipa - body: | - - Beta builds are hand-picked builds from development commits that will allow you to try out new features earlier than normal. However, **they might contain bugs and other issues. Use at your own risk!** + - name: Upload to new beta release + uses: softprops/action-gh-release@v1 + with: + token: ${{ secrets.GITHUB_TOKEN }} + name: ${{ steps.version.outputs.version }} + tag_name: ${{ github.ref_name }} + draft: true + prerelease: true + files: SideStore.ipa + body: | + + Beta builds are hand-picked builds from development commits that will allow you to try out new features earlier than normal. However, **they might contain bugs and other issues. Use at your own risk!** - ## Changelog - - - TODO - - ## Build Info - - Built at (UTC): `${{ steps.date.outputs.date }}` - Built at (UTC date): `${{ steps.date_altstore.outputs.date }}` - Commit SHA: `${{ github.sha }}` - Version: `${{ steps.version.outputs.version }}` + ## Changelog + + - TODO + + ## Build Info + + Built at (UTC): `${{ steps.date.outputs.date }}` + Built at (UTC date): `${{ steps.date_sidestore.outputs.date }}` + Commit SHA: `${{ github.sha }}` + Version: `${{ steps.version.outputs.version }}` diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 42555c0f..40cdebbd 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -2,7 +2,7 @@ name: Nightly SideStore build on: push: branches: - - develop + - develop jobs: build: @@ -14,47 +14,47 @@ jobs: fail-fast: false matrix: include: - - os: 'macos-12' - version: '14.2' + - os: 'macos-12' + version: '14.2' runs-on: ${{ matrix.os }} steps: - - name: Checkout code - uses: actions/checkout@v2 - with: - submodules: recursive + - name: Checkout code + uses: actions/checkout@v2 + with: + submodules: recursive - - name: Install dependencies - run: brew install ldid + - name: Install dependencies + run: brew install ldid - - name: Cache .nightly-build-num - uses: actions/cache@v3 - with: - path: .nightly-build-num - key: nightly-build-num + - name: Cache .nightly-build-num + uses: actions/cache@v3 + with: + path: .nightly-build-num + key: nightly-build-num - - name: Increase nightly build number and set as version - run: bash .github/workflows/increase-nightly-build-num.sh + - name: Increase nightly build number and set as version + run: bash .github/workflows/increase-nightly-build-num.sh - - name: Setup Xcode - uses: maxim-lobanov/setup-xcode@v1.4.1 - with: - xcode-version: ${{ matrix.version }} + - name: Setup Xcode + uses: maxim-lobanov/setup-xcode@v1.4.1 + with: + xcode-version: ${{ matrix.version }} - - name: Build SideStore - run: make build | xcpretty && exit ${PIPESTATUS[0]} + - name: Build SideStore + run: make build | xcpretty && exit ${PIPESTATUS[0]} - - name: Fakesign app - run: make fakesign + - name: Fakesign app + run: make fakesign - - name: Convert to IPA - run: make ipa + - name: Convert to IPA + run: make ipa - name: Upload SideStore.ipa Artifact - uses: actions/upload-artifact@v3.1.0 - with: - name: SideStore.ipa - path: SideStore.ipa + uses: actions/upload-artifact@v3.1.0 + with: + name: SideStore.ipa + path: SideStore.ipa - name: Upload *.dSYM Artifact uses: actions/upload-artifact@v3.1.0 @@ -62,39 +62,39 @@ jobs: name: SideStore-dSYM path: ./*.dSYM/ - - name: Get version - id: version - run: echo "version=$(grep MARKETING_VERSION Build.xcconfig | sed -e "s/MARKETING_VERSION = //g")" >> $GITHUB_OUTPUT + - name: Get version + id: version + run: echo "version=$(grep MARKETING_VERSION Build.xcconfig | sed -e "s/MARKETING_VERSION = //g")" >> $GITHUB_OUTPUT - - name: Get current date - id: date - run: echo "date=$(date -u +'%c')" >> $GITHUB_OUTPUT + - name: Get current date + id: date + run: echo "date=$(date -u +'%c')" >> $GITHUB_OUTPUT - - name: Get current date in AltStore date form - id: date_altstore - run: echo "date=$(date -u +'%Y-%m-%d')" >> $GITHUB_OUTPUT + - name: Get current date in SideStore date form + id: date_sidestore + run: echo "date=$(date -u +'%Y-%m-%d')" >> $GITHUB_OUTPUT - - name: Upload to nightly release - uses: IsaacShelton/update-existing-release@v1.3.1 - with: - token: ${{ secrets.GITHUB_TOKEN }} - release: "Nightly" - tag: "nightly" - prerelease: true - files: SideStore.ipa - body: | - This is an ⚠️ **EXPERIMENTAL** ⚠️ nightly build for commit [${{ github.sha }}](https://github.com/${{ github.repository }}/commit/${{ github.sha }}). - - Nightly builds are **extremely experimental builds only meant to be used by developers and alpha testers. They often contain bugs and experimental features. Use at your own risk!** - - If you want to try out new features early but want a lower chance of bugs, you can look at [SideStore Beta](https://github.com/${{ github.repository }}/releases?q=beta). - - ## Build Info - - Built at (UTC): `${{ steps.date.outputs.date }}` - Built at (UTC date): `${{ steps.date_altstore.outputs.date }}` - Commit SHA: `${{ github.sha }}` - Version: `${{ steps.version.outputs.version }}` + - name: Upload to nightly release + uses: IsaacShelton/update-existing-release@v1.3.1 + with: + token: ${{ secrets.GITHUB_TOKEN }} + release: "Nightly" + tag: "nightly" + prerelease: true + files: SideStore.ipa + body: | + This is an ⚠️ **EXPERIMENTAL** ⚠️ nightly build for commit [${{ github.sha }}](https://github.com/${{ github.repository }}/commit/${{ github.sha }}). - - name: Reset cache for apps.sidestore.io/nightly - run: sleep 10 && curl https://apps.sidestore.io/reset-cache/nightly/${{ secrets.SIDESOURCE_KEY }} + Nightly builds are **extremely experimental builds only meant to be used by developers and alpha testers. They often contain bugs and experimental features. Use at your own risk!** + + If you want to try out new features early but want a lower chance of bugs, you can look at [SideStore Beta](https://github.com/${{ github.repository }}/releases?q=beta). + + ## Build Info + + Built at (UTC): `${{ steps.date.outputs.date }}` + Built at (UTC date): `${{ steps.date_sidestore.outputs.date }}` + Commit SHA: `${{ github.sha }}` + Version: `${{ steps.version.outputs.version }}` + + - name: Reset cache for apps.sidestore.io/nightly + run: sleep 10 && curl https://apps.sidestore.io/reset-cache/nightly/${{ secrets.SIDESOURCE_KEY }} diff --git a/.github/workflows/stable.yml b/.github/workflows/stable.yml index 7db5cd49..e3bb0262 100644 --- a/.github/workflows/stable.yml +++ b/.github/workflows/stable.yml @@ -2,7 +2,7 @@ name: Stable SideStore build on: push: tags: - - '[0-9]+.[0-9]+.[0-9]+' # example: 1.0.0 + - '[0-9]+.[0-9]+.[0-9]+' # example: 1.0.0 jobs: build: @@ -11,41 +11,41 @@ jobs: fail-fast: false matrix: include: - - os: 'macos-12' - version: '14.2' + - os: 'macos-12' + version: '14.2' runs-on: ${{ matrix.os }} steps: - - name: Checkout code - uses: actions/checkout@v2 - with: - submodules: recursive + - name: Checkout code + uses: actions/checkout@v2 + with: + submodules: recursive - - name: Install dependencies - run: brew install ldid + - name: Install dependencies + run: brew install ldid - - name: Change version to tag - run: sed -e '/MARKETING_VERSION = .*/s/= .*/= ${{ github.ref_name }}/' -i '' Build.xcconfig + - name: Change version to tag + run: sed -e '/MARKETING_VERSION = .*/s/= .*/= ${{ github.ref_name }}/' -i '' Build.xcconfig - - name: Setup Xcode - uses: maxim-lobanov/setup-xcode@v1.4.1 - with: - xcode-version: ${{ matrix.version }} + - name: Setup Xcode + uses: maxim-lobanov/setup-xcode@v1.4.1 + with: + xcode-version: ${{ matrix.version }} - - name: Build SideStore - run: make build | xcpretty && exit ${PIPESTATUS[0]} + - name: Build SideStore + run: make build | xcpretty && exit ${PIPESTATUS[0]} - - name: Fakesign app - run: make fakesign + - name: Fakesign app + run: make fakesign - - name: Convert to IPA - run: make ipa + - name: Convert to IPA + run: make ipa - name: Upload SideStore.ipa Artifact - uses: actions/upload-artifact@v3.1.0 - with: - name: SideStore.ipa - path: SideStore.ipa + uses: actions/upload-artifact@v3.1.0 + with: + name: SideStore.ipa + path: SideStore.ipa - name: Upload *.dSYM Artifact uses: actions/upload-artifact@v3.1.0 @@ -53,35 +53,35 @@ jobs: name: SideStore-dSYM path: ./*.dSYM/ - - name: Get version - id: version - run: echo "version=$(grep MARKETING_VERSION Build.xcconfig | sed -e "s/MARKETING_VERSION = //g")" >> $GITHUB_OUTPUT + - name: Get version + id: version + run: echo "version=$(grep MARKETING_VERSION Build.xcconfig | sed -e "s/MARKETING_VERSION = //g")" >> $GITHUB_OUTPUT - - name: Get current date - id: date - run: echo "date=$(date -u +'%c')" >> $GITHUB_OUTPUT + - name: Get current date + id: date + run: echo "date=$(date -u +'%c')" >> $GITHUB_OUTPUT - - name: Get current date in AltStore date form - id: date_altstore - run: echo "date=$(date -u +'%Y-%m-%d')" >> $GITHUB_OUTPUT + - name: Get current date in SideStore date form + id: date_sidestore + run: echo "date=$(date -u +'%Y-%m-%d')" >> $GITHUB_OUTPUT - - name: Upload to new stable release - uses: softprops/action-gh-release@v1 - with: - token: ${{ secrets.GITHUB_TOKEN }} - name: ${{ steps.version.outputs.version }} - tag_name: ${{ github.ref_name }} - draft: true - files: SideStore.ipa - body: | - - ## Changelog - - - TODO - - ## Build Info - - Built at (UTC): `${{ steps.date.outputs.date }}` - Built at (UTC date): `${{ steps.date_altstore.outputs.date }}` - Commit SHA: `${{ github.sha }}` - Version: `${{ steps.version.outputs.version }}` + - name: Upload to new stable release + uses: softprops/action-gh-release@v1 + with: + token: ${{ secrets.GITHUB_TOKEN }} + name: ${{ steps.version.outputs.version }} + tag_name: ${{ github.ref_name }} + draft: true + files: SideStore.ipa + body: | + + ## Changelog + + - TODO + + ## Build Info + + Built at (UTC): `${{ steps.date.outputs.date }}` + Built at (UTC date): `${{ steps.date_sidestore.outputs.date }}` + Commit SHA: `${{ github.sha }}` + Version: `${{ steps.version.outputs.version }}` diff --git a/Makefile b/Makefile index 503859bf..f455f719 100644 --- a/Makefile +++ b/Makefile @@ -157,8 +157,8 @@ test: ## -- Building -- build: - @xcodebuild -project AltStore.xcodeproj \ - -scheme AltStore \ + @xcodebuild -project SideStore.xcodeproj \ + -scheme SideStore \ -sdk iphoneos \ archive -archivePath ./archive \ CODE_SIGNING_REQUIRED=NO \ @@ -169,8 +169,8 @@ build: DWARF_DSYM_FOLDER_PATH="." fakesign: - rm -rf archive.xcarchive/Products/Applications/SideStore.app/Frameworks/AltStoreCore.framework/Frameworks/ - ldid -SAltStore/Resources/tempEnt.plist archive.xcarchive/Products/Applications/SideStore.app/SideStore + rm -rf archive.xcarchive/Products/Applications/SideStore.app/Frameworks/SideStoreCore.framework/Frameworks/ + ldid -SSideStoreApp/Sources/SideStore/Resources/tempEnt.plist archive.xcarchive/Products/Applications/SideStore.app/SideStore ipa: mkdir Payload diff --git a/SideStoreApp/Package.resolved b/SideStoreApp/Package.resolved index e6c74538..98731a1d 100644 --- a/SideStoreApp/Package.resolved +++ b/SideStoreApp/Package.resolved @@ -1,12 +1,21 @@ { "pins" : [ + { + "identity" : "aexml", + "kind" : "remoteSourceControl", + "location" : "https://github.com/tadija/AEXML", + "state" : { + "revision" : "54bb8ea6fb693dd3f92a89e5fcc19e199fdeedd0", + "version" : "4.3.3" + } + }, { "identity" : "altsign", "kind" : "remoteSourceControl", "location" : "https://github.com/SideStore/AltSign", "state" : { - "revision" : "9c63397f0fc6038c04b930dd2d10b030d508d6fa", - "version" : "1.0.2" + "revision" : "eb4c74dcf6be2fb00a3edc0381aae59fbbdb4cf3", + "version" : "1.0.3" } }, { @@ -27,6 +36,15 @@ "revision" : "e754ab1c80920dd51a8e08290c912ac1c2ac8b58" } }, + { + "identity" : "ignore", + "kind" : "remoteSourceControl", + "location" : "https://github.com/IgorMuzyka/ignore", + "state" : { + "revision" : "49780cf3d46053eb40f4c425a46aaaf662f0665c", + "version" : "0.0.2" + } + }, { "identity" : "imobiledevice.swift", "kind" : "remoteSourceControl", @@ -54,6 +72,15 @@ "version" : "4.2.2" } }, + { + "identity" : "logger", + "kind" : "remoteSourceControl", + "location" : "https://github.com/f-meloni/Logger", + "state" : { + "revision" : "53c3ecca5abe8cf46697e33901ee774236d94cce", + "version" : "0.2.3" + } + }, { "identity" : "matchable", "kind" : "remoteSourceControl", @@ -81,6 +108,33 @@ "version" : "1.1.2000" } }, + { + "identity" : "packagebuildinfo", + "kind" : "remoteSourceControl", + "location" : "https://github.com/DimaRU/PackageBuildInfo", + "state" : { + "branch" : "master", + "revision" : "7fe63ad12b50bad5d86e6abaef5a944f931ce765" + } + }, + { + "identity" : "packageconfig", + "kind" : "remoteSourceControl", + "location" : "https://github.com/orta/PackageConfig.git", + "state" : { + "revision" : "bf90dc69fa0792894b08a0b74cf34029694ae486", + "version" : "0.13.0" + } + }, + { + "identity" : "pathkit", + "kind" : "remoteSourceControl", + "location" : "https://github.com/kylef/PathKit", + "state" : { + "revision" : "e2f5be30e4c8f531c9c1e8765aa7b71c0a45d7a0", + "version" : "0.9.2" + } + }, { "identity" : "plcrashreporter", "kind" : "remoteSourceControl", @@ -108,6 +162,15 @@ "version" : "1.3.2" } }, + { + "identity" : "secretsmanager", + "kind" : "remoteSourceControl", + "location" : "https://github.com/vdka/SecretsManager.git", + "state" : { + "revision" : "7e7eb0304726a2d9788432a3b90d79817ce2f6e1", + "version" : "1.1.1" + } + }, { "identity" : "semanticversion", "kind" : "remoteSourceControl", @@ -126,6 +189,60 @@ "version" : "0.1.0" } }, + { + "identity" : "spectre", + "kind" : "remoteSourceControl", + "location" : "https://github.com/kylef/Spectre.git", + "state" : { + "revision" : "f79d4ecbf8bc4e1579fbd86c3e1d652fb6876c53", + "version" : "0.9.2" + } + }, + { + "identity" : "swift-argument-parser", + "kind" : "remoteSourceControl", + "location" : "https://github.com/apple/swift-argument-parser", + "state" : { + "revision" : "fee6933f37fde9a5e12a1e4aeaa93fe60116ff2a", + "version" : "1.2.2" + } + }, + { + "identity" : "swift-docc-plugin", + "kind" : "remoteSourceControl", + "location" : "https://github.com/apple/swift-docc-plugin", + "state" : { + "revision" : "10bc670db657d11bdd561e07de30a9041311b2b1", + "version" : "1.1.0" + } + }, + { + "identity" : "swift-docc-symbolkit", + "kind" : "remoteSourceControl", + "location" : "https://github.com/apple/swift-docc-symbolkit", + "state" : { + "revision" : "b45d1f2ed151d057b54504d653e0da5552844e34", + "version" : "1.0.0" + } + }, + { + "identity" : "swift-secret-keys", + "kind" : "remoteSourceControl", + "location" : "https://github.com/simorgh3196/swift-secret-keys", + "state" : { + "revision" : "d156d039bea258466a2bbc0046936867db1a0915", + "version" : "0.1.0" + } + }, + { + "identity" : "swiftlintplugin", + "kind" : "remoteSourceControl", + "location" : "https://github.com/lukepistrol/SwiftLintPlugin", + "state" : { + "revision" : "f69b412a765396d44dc9f4788a5b79919c1ca9e3", + "version" : "0.2.2" + } + }, { "identity" : "swiftpmplugins", "kind" : "remoteSourceControl", @@ -135,6 +252,15 @@ "version" : "1.0.0" } }, + { + "identity" : "swiftshell", + "kind" : "remoteSourceControl", + "location" : "https://github.com/kareman/SwiftShell", + "state" : { + "revision" : "beebe43c986d89ea5359ac3adcb42dac94e5e08a", + "version" : "4.1.2" + } + }, { "identity" : "versionator", "kind" : "remoteSourceControl", @@ -144,6 +270,15 @@ "version" : "1.0.3" } }, + { + "identity" : "xcodeproj", + "kind" : "remoteSourceControl", + "location" : "https://github.com/tuist/xcodeproj.git", + "state" : { + "revision" : "065f348754b6155b8037dc43876a8f2ee354b95d", + "version" : "6.7.0" + } + }, { "identity" : "xctestextensions", "kind" : "remoteSourceControl", @@ -152,6 +287,15 @@ "revision" : "39694671be8bea1ab0bbd87114705b2a92567a8e", "version" : "1.5.0" } + }, + { + "identity" : "yams", + "kind" : "remoteSourceControl", + "location" : "https://github.com/jpsim/Yams", + "state" : { + "revision" : "f47ba4838c30dbd59998a4e4c87ab620ff959e8a", + "version" : "5.0.5" + } } ], "version" : 2