diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 00000000..dfec0994 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,36 @@ +name: Bug Report +description: Report a bug or something that's not working as expected +labels: [bug] +body: + - type: input + id: version + attributes: + label: iOS Version + description: What iOS version are you running? + placeholder: iOS 17.4.1 + validations: + required: true + - type: input + id: stikjit_version + attributes: + label: StikJIT Version + description: What version of StikJIT are you using? + placeholder: 1.3.2 + validations: + required: true + - type: textarea + id: detailed-description + attributes: + label: Describe the bug + description: What happened? What did you expect to happen? + placeholder: StikJIT crashes when I try to enable JIT for an app. I get this error code when trying to do this.. etc + validations: + required: true + - type: textarea + id: logs + attributes: + label: Relevant logs or screenshots + description: If applicable, please add screenshots or logs/screenshots to help explain your problem + placeholder: Paste any relevant logs here + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..49c7e274 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: false +contact_links: + - name: StikJIT Discussions + url: https://github.com/0-Blu/StikJIT/discussions + about: For questions or help, please use the discussions area instead of opening an issue. + - name: Discord Community + url: https://discord.gg/ZnNcrRT3M8 + about: Join our Discord server for quick help and community support. \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 00000000..eb3b9fa3 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,20 @@ +name: Feature Request +description: Suggest an idea or enhancement for StikJIT +labels: [enhancement] +body: + - type: textarea + id: feature-request + attributes: + label: Feature Description + description: Describe the feature you'd like to see in StikJIT + placeholder: I'd like StikJIT to have... because it would help with... + validations: + required: true + - type: textarea + id: detailed-description + attributes: + label: Additional details + description: Provide any additional details or examples + placeholder: This feature could work by... and might look like... + validations: + required: false diff --git a/.github/workflows/update_ios_version.yml b/.github/workflows/update_ios_version.yml new file mode 100644 index 00000000..d78a196c --- /dev/null +++ b/.github/workflows/update_ios_version.yml @@ -0,0 +1,182 @@ +name: Update iOS Version in README + +on: + schedule: + - cron: '0 0 * * *' # Run daily at midnight + workflow_dispatch: # Allow manual triggering + +permissions: + contents: write + +jobs: + update-ios-version: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + ref: main + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: '3.x' + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install requests + + - name: Update iOS version in README + id: update_readme + run: | + python - < latest_version_parts: + latest_ios = version_info + latest_version_parts = version_parts + latest_ios['compact_name'] = name + except Exception as e: + print(f"Error processing version entry: {e}") + continue + + if latest_ios: + print(f"Latest iOS version from AppleDB: {latest_ios['compact_name']}") + return latest_ios['compact_name'] + else: + print("No iOS 18+ versions found, using fallback") + return "18.5b2" # Default fallback + + except Exception as e: + print(f"Error fetching iOS version from AppleDB: {e}") + + # Try ipsw.me API as a backup + try: + print("Trying ipsw.me API as backup...") + url = "https://api.ipsw.me/v4/releases" + response = requests.get(url, timeout=10) + releases = response.json() + + # Find latest iOS 18+ version + latest_version = None + latest_version_parts = None + + for release in releases: + if release.get('version', '').startswith('18'): + version = release['version'] + # Format beta versions if present + if 'beta' in release.get('tags', []): + beta_num = next((tag for tag in release.get('tags', []) if tag.startswith('beta')), 'beta1') + beta_num = beta_num.replace('beta', '') + version = f"{version}b{beta_num}" + + version_parts = parse_version(version) + if latest_version_parts is None or version_parts > latest_version_parts: + latest_version = version + latest_version_parts = version_parts + + if latest_version: + print(f"Latest iOS version from ipsw.me: {latest_version}") + return latest_version + + except Exception as backup_e: + print(f"Error fetching from backup source: {backup_e}") + + return "18.5b2" # Default fallback if all sources fail + + # Read the README.md file + with open('README.md', 'r') as file: + content = file.read() + + # Get the latest iOS version + latest_version = get_latest_ios_version() + print(f"Latest iOS version detected: {latest_version}") + + # Update the version range in the README + updated_content = re.sub( + r'An on-device JIT enabler for iOS versions 17\.4\+ \(17\.4-[^)]+\)\)+', + f'An on-device JIT enabler for iOS versions 17.4+ (17.4-{latest_version} (latest))', + content + ) + + # Check if there was an actual change + if content != updated_content: + # Write the updated content back to the README + with open('README.md', 'w') as file: + file.write(updated_content) + print("::set-output name=changes::true") + else: + print("No changes needed to README") + print("::set-output name=changes::false") + EOF + + - name: Commit and push if there are changes + if: steps.update_readme.outputs.changes == 'true' + run: | + git config --global user.name 'GitHub Action' + git config --global user.email 'action@github.com' + git add README.md + git commit -m "Update iOS version range in README [skip ci]" + git push origin main \ No newline at end of file diff --git a/README.md b/README.md index 25d0ffd1..774a04de 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,17 @@ ## Installation Guide For detailed installation instructions, including setup with SideStore, AltStore, or Altstore PAL (EU), please refer to our [User Manual](user-manual.md). +

+ +  + +  + +  + +  +

+ ## Building 1. **Clone the repository:** diff --git a/assets/downloadimages/AltstorePAL.png b/assets/downloadimages/AltstorePAL.png new file mode 100644 index 00000000..43a0ad3d Binary files /dev/null and b/assets/downloadimages/AltstorePAL.png differ