Skip to content

VERSION 2.0 FIXES + ADDED YTKACE

Choose a tag to compare

@PDFMerger2025 PDFMerger2025 released this 09 Sep 02:06
· 7 commits to main since this release
0bc19b1

🎃 *YouMod IPA Build Workflow now including YTKACE *

🔧 1. Logos %orig Parsing Regression Fix

❗ Issue

Theos/Logos commit 777925d (June 29, 2026) introduced a regression that breaks %orig(...) calls unless they appear alone on their own line, causing errors like:

Invalid argument structure in %orig

✅ Fix

Logos is pinned to the last known-good commit a62370066a97e36d59b200a9fa10c5091f5e8972 immediately after Theos is restored from cache.

🧩 Patch

- name: Workaround Logos %orig regression
  if: steps.theos.outputs.cache-hit == 'true'
  run: |
    cd "$THEOS/vendor/logos"
    git fetch --depth=50 origin a62370066a97e36d59b200a9fa10c5091f5e8972
    git checkout a62370066a97e36d59b200a9fa10c5091f5e8972

🧱 2. Framework Stub Symlink Fix

❗ Issue

Private frameworks inside community iOS SDKs often ship only .tbd files, missing the extensionless stub file the linker expects, resulting in “framework not found” errors.

✅ Fix

A workflow step now auto‑creates symlinks for every framework:

FrameworkName.tbd → FrameworkName

🧩 Patch

- name: Fix Missing Framework Stub Symlinks
  run: |
    find "$THEOS/sdks" -iname "*.framework" -type d | while read -r fw; do
      name=$(basename "$fw" .framework)
      if [ ! -e "$fw/$name" ] && [ -e "$fw/$name.tbd" ]; then
        ln -s "$name.tbd" "$fw/$name"
      fi
    done

🧭 3. Explicit PrivateFrameworks Linker Path

❗ Issue

Theos sometimes fails to auto-detect the PrivateFrameworks directory, causing unresolved framework errors even when symlinks exist.

✅ Fix

The linker is explicitly passed the PrivateFrameworks directory via ADDITIONAL_LDFLAGS.

🧩 Patch

ADDITIONAL_LDFLAGS="-F$THEOS/sdks/iPhoneOS18.6.sdk/System/Library/PrivateFrameworks"

🧹 4. Alderis Makefile SDK Hook Removal

❗ Issue

Alderis’s before-package:: sdk hook assumes a classic /Library/Frameworks layout, but rootless builds use /var/jb/Library/Frameworks, causing build failures.

✅ Fix

The workflow removes the problematic Makefile line using sed before building Alderis.

🧩 Patch

- name: Clone and Build Alderis
  if: inputs.alderis == true && steps.cache_tweaks.outputs.cache_alderis_hit != 'true'
  run: |
    git clone --quiet --depth=1 https://github.com/hbang/Alderis.git
    cd Alderis
    sed -i '' '/^before-package:: sdk$/d' Makefile
    make clean package DEBUG=0 FINALPACKAGE=1 ARCHS=arm64 TARGET=iphone:clang:latest:13.0 THEOS_PACKAGE_SCHEME=rootless ADDITIONAL_CFLAGS="-Wno-deprecated-declarations" ADDITIONAL_LDFLAGS="-F$THEOS/sdks/iPhoneOS18.6.sdk/System/Library/PrivateFrameworks"
    mv packages/*.deb ${{ github.workspace }}/alderis.deb

🐹 5. Golang Installation for Gonerino

❗ Issue

Gonerino requires Go to build, but Go was not installed in the workflow environment.

✅ Fix

Go is now included in the Homebrew dependency list.

🧩 Patch

brew install --quiet make ldid swiftlint dpkg meson ninja go

⚠️ 6. Alderis Deprecation Warning Suppression

❗ Issue

Alderis uses deprecated APIs such as keyWindow, and -Werror treats these warnings as fatal errors.

✅ Fix

Added ADDITIONAL_CFLAGS="-Wno-deprecated-declarations" to suppress deprecated API warnings.

🧩 Patch

ADDITIONAL_CFLAGS="-Wno-deprecated-declarations"

🆕 7. YTKace Integration by @itzzace0

🌟 New Feature

Added YTKace as a new optional tweak input so users can include it in their builds.

🧩 Patch

ytkace:
  type: boolean
  required: false
  default: false

🧛 I also added Discussions tab - feel free to use it for ideas/feedback/questions along with Issues tab, thank you!