2.0.1, actions, templates

This commit is contained in:
Dan
2025-01-27 21:26:04 +03:00
parent e1071e8f85
commit a3c6eabdae
13 changed files with 215 additions and 1 deletions

61
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file
View File

@@ -0,0 +1,61 @@
name: Bug report
description: This issue template is designed to help you report problems and suggest improvements for our project.
labels: bug
body:
- type: textarea
attributes:
label: Describe the bug
description: Describe the issue in detail here, including any relevant context or background information. Be clear and concise.
placeholder: |
Enter your description here
render: yaml
validations:
required: true
- type: textarea
attributes:
label: Steps to reproduce
description: |
Steps to reproduce the behavior (bug)
placeholder: |
Example:
1. Go to Main tab
2. Tap to the music
3. See error
render: yaml
validations:
required: true
- type: textarea
attributes:
label: Crashlog
description: |
**Do not put text from crashlog, include zipped Crashlog_File.ips instead**
**To find and attach your crashlog:**
1. Open the Analytics & Improvements section of Settings on the device.
2. Tap Analytics Data.
3. Locate the log for your app. The log name starts with YouTubeMusic_(DateTime).
4. Select the desired log.
5. Tap the Share icon, save it in the Files app, then zip saved file.
placeholder: |
Drag and drop your Crashlog.zip here.
validations:
required: false
- type: checkboxes
attributes:
label: Post Requisites
description: |
**IMPORTANT:** Read carefully before checking the box.
options:
- label: I have checked that a similar issue has not been reported before.
required: true
- label: Verified the relevance of the project and the version you are using.
required: true
- label: Provided a detailed description of the problem and have filled in all required fields.
required: true
- label: I did not answer truthfully to **ALL** the above checkboxes.
required: false
- label: By submitting this issue, **I confirm that I have filled in all the necessary fields and complied with the guidelines. Failure to comply may result in the issue being closed without discussion, and repeated violations may lead to restrict account from further participation.**
required: true

1
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1 @@
blank_issues_enabled: false

View File

@@ -0,0 +1,30 @@
name: Feature request
description: This template is designed to help you suggest improvements or new features for our project.
labels: enhancement
body:
- type: textarea
attributes:
label: Describe the feature request
description: Describe the feature or enhancement in detail here. Include any relevant context or background information. Be clear and concise.
placeholder: |
Enter your description here
render: yaml
validations:
required: true
- type: checkboxes
attributes:
label: Post Requisites
description: |
**IMPORTANT:** Read carefully before checking the box.
options:
- label: I have checked that a similar feature request has not been reported before.
required: true
- label: Verified the relevance of the project and the version you are using.
required: true
- label: Provided a detailed description of the request and have filled in all required fields.
required: true
- label: I did not answer truthfully to **ALL** the above checkboxes.
required: false
- label: By submitting this request, **I confirm that I have filled in all the necessary fields and complied with the guidelines. Failure to comply may result in the request being closed without discussion, and repeated violations may lead to restrict account from further participation.**
required: true

93
.github/workflows/main.yml vendored Normal file
View File

@@ -0,0 +1,93 @@
name: Create Infuse Plus app
on:
workflow_dispatch:
inputs:
ipa_url:
description: "URL to the decrypted IPA file"
default: ""
required: true
type: string
tweak_version:
description: "The version of the tweak to use. Enter the version manually from dayanch96/InfusePlus/releases or leave default"
default: "2.0.1"
required: true
type: string
display_name:
description: "App Name (Optional)"
default: "Infuse"
required: true
type: string
bundle_id:
description: "BundleID (Optional)"
default: "com.firecore.infuse"
required: true
type: string
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
name:
runs-on: macos-latest
permissions:
contents: write
steps:
- name: Checkout Main
uses: actions/checkout@v4.1.1
with:
path: main
submodules: recursive
- name: Hide sensitive inputs
uses: levibostian/action-hide-sensitive-inputs@v1
- name: Validate IPA URL
run: |
curl -L -r 0-1023 -o sample.part "${{ inputs.ipa_url }}" > /dev/null 2>&1
file_type=$(file --mime-type -b sample.part)
if [[ "$file_type" != "application/x-ios-app" && "$file_type" != "application/zip" ]]; then
echo "::error::Validation failed: The file is not a valid IPA file. Detected type: $file_type."
exit 1
fi
- name: Install Dependencies
run: brew install make ldid
- name: Set PATH environment variable
run: echo "$(brew --prefix make)/libexec/gnubin" >> $GITHUB_PATH
- name: Install cyan
run: pipx install --force https://github.com/asdfzxcvbn/pyzule-rw/archive/main.zip
- name: Download Infuse Plus
id: download_infp
run: |
deb_url="https://github.com/dayanch96/InfusePlus/releases/download/v${{ inputs.tweak_version }}/com.dvntm.infuseplus_${{ inputs.tweak_version }}_iphoneos-arm.deb"
wget "$deb_url" --no-verbose -O ${{ github.workspace }}/infplus.deb
- name: Download Infuse
id: download_infuse
run: wget "${{ inputs.ipa_url }}" --no-verbose -O ${{ github.workspace }}/infuse.ipa
- name: Inject tweaks into IPA
run: cyan -i infuse.ipa -o InfusePlus_${{ inputs.tweak_version }}.ipa -uwef infplus.deb -n "${{ inputs.display_name }}" -b ${{ inputs.bundle_id }}
- name: Upload to GitHub Releases
uses: softprops/action-gh-release@v2.0.1
with:
name: InfusePlus v${{ inputs.tweak_version }} (${{ github.run_number }})
files: InfusePlus_${{ inputs.tweak_version }}.ipa
draft: true
- name: Output Release URL
run: |
echo "::notice::Release available at: https://github.com/${{ github.repository }}/releases"

View File

@@ -30,6 +30,7 @@
"BatteryPercentageDesc" = "Displays the battery percentage in the status bar";
"ModernPercentage" = "Modern Percentage";
"ModernPercentageDesc" = "Combines the battery icon and percentage, as shown in the icon";
"StatusBarFooter" = "On some devices, the battery percentage may be rounded to the nearest 5%. This is a limitation set by Apple.";
"SpeedByLongTap" = "Speed Up Playback";
"SpeedByLongTapDesc" = "Pressing and holding the overlay speeds up playback rate";

View File

@@ -30,6 +30,7 @@
"BatteryPercentageDesc" = "Displays the battery percentage in the status bar";
"ModernPercentage" = "Modern Percentage";
"ModernPercentageDesc" = "Combines the battery icon and percentage, as shown in the icon";
"StatusBarFooter" = "On some devices, the battery percentage may be rounded to the nearest 5%. This is a limitation set by Apple.";
"SpeedByLongTap" = "Speed Up Playback";
"SpeedByLongTapDesc" = "Pressing and holding the overlay speeds up playback rate";

View File

@@ -30,6 +30,7 @@
"BatteryPercentageDesc" = "Muestra el porcentaje de batería en la barra de estado";
"ModernPercentage" = "Porcentaje moderno";
"ModernPercentageDesc" = "Combina el icono de la batería y el porcentaje, como se muestra en el icono";
"StatusBarFooter" = "On some devices, the battery percentage may be rounded to the nearest 5%. This is a limitation set by Apple.";
"SpeedByLongTap" = "Acelerar reproducción";
"SpeedByLongTapDesc" = "Manteniendo pulsada la superposición se acelera la velocidad de reproducción";

View File

@@ -30,6 +30,7 @@
"BatteryPercentageDesc" = "Displays the battery percentage in the status bar";
"ModernPercentage" = "Modern Percentage";
"ModernPercentageDesc" = "Combines the battery icon and percentage, as shown in the icon";
"StatusBarFooter" = "On some devices, the battery percentage may be rounded to the nearest 5%. This is a limitation set by Apple.";
"SpeedByLongTap" = "Speed Up Playback";
"SpeedByLongTapDesc" = "Pressing and holding the overlay speeds up playback rate";

View File

@@ -30,6 +30,7 @@
"BatteryPercentageDesc" = "Отображает проценты оставшегося заряда в статус-баре";
"ModernPercentage" = "Современный вид";
"ModernPercentageDesc" = "Отображает проценты внутри иконки аккумулятора, как показано в примере слева.";
"StatusBarFooter" = "На некоторых устройствах процент заряда батареи может округляться до ближайших 5%. Это ограничение, установленное Apple.";
"SpeedByLongTap" = "Ускорять зажатием";
"SpeedByLongTapDesc" = "Позволяет ускорять видео зажатием по экрану воспроизведения";

View File

@@ -30,6 +30,7 @@
"BatteryPercentageDesc" = "Displays the battery percentage in the status bar";
"ModernPercentage" = "Modern Percentage";
"ModernPercentageDesc" = "Combines the battery icon and percentage, as shown in the icon";
"StatusBarFooter" = "On some devices, the battery percentage may be rounded to the nearest 5%. This is a limitation set by Apple.";
"SpeedByLongTap" = "Speed Up Playback";
"SpeedByLongTapDesc" = "Pressing and holding the overlay speeds up playback rate";

View File

@@ -30,6 +30,7 @@
"BatteryPercentageDesc" = "在状态栏中显示电池百分比";
"ModernPercentage" = "现代百分比";
"ModernPercentageDesc" = "组合电池图标和百分比,如图标所示";
"StatusBarFooter" = "On some devices, the battery percentage may be rounded to the nearest 5%. This is a limitation set by Apple.";
"SpeedByLongTap" = "播放加速";
"SpeedByLongTapDesc" = "按住播放界面可加快播放速度";
@@ -118,4 +119,4 @@
"Welcome.More" = "更多功能";
"Welcome.MoreDesc" = "设置启动页、更改控制中心的播放器海报和标题、更新通知等等";
"SupportMe" = "支持我";
"Continue" = "继续";
"Continue" = "继续";

View File

@@ -30,6 +30,7 @@
"BatteryPercentageDesc" = "在狀態列中顯示電池百分比";
"ModernPercentage" = "現代百分比";
"ModernPercentageDesc" = "如圖所示,將電池圖示和百分比合併顯示";
"StatusBarFooter" = "On some devices, the battery percentage may be rounded to the nearest 5%. This is a limitation set by Apple.";
"SpeedByLongTap" = "長按加速播放";
"SpeedByLongTapDesc" = "長按播放介面可加快播放速度";

View File

@@ -52,3 +52,24 @@ Enhancer for Infuse iOS app.
</details>
**Infuse Plus preferences can be found in the Settings tab**
## How to build a Infuse Plus app using Github actions
> [!NOTE]
> If this your first time, complete following steps before starting:
>
> 1. Fork this repository using the fork button on the top right
> 2. On your forked repository, go to **Repository Settings** > **Actions**, enable **Read and Write** permissions.
<details>
<summary>How to build the Infuse Plus app</summary>
<ol>
<li>Click on <strong>Sync fork</strong>, and if your branch is out-of-date, click on <strong>Update branch</strong>.</li>
<li>Navigate to the <strong>Actions tab</strong> in your forked repository and select <strong>Build Infuse Plus app</strong>.</li>
<li>Click the <strong>Run workflow</strong> button located on the right side.</li>
<li>Prepare a decrypted .ipa file <em>(we cannot provide this due to legal reasons)</em>, then upload it to a file provider (e.g., filebin.net, filemail.com, or Dropbox is recommended). Paste the URL of the decrypted IPA file in the provided field.</li>
<li><span style="color: red; font-weight: bold;">NOTE:</span> Make sure to provide a direct download link to the file, not a link to a webpage. Otherwise, the process will fail.</li>
<li>Enter the tweak version from the releases (the latest release is selected by default). You can also change the BundleID and Display Name if desired.</li>
<li>Make sure all inputs are correct, then click <strong>Run workflow</strong> to start the process.</li>
<li>Wait for the build to finish. You can download the Infuse Plus app from the releases section of your forked repo. (If you can't find the releases section, go to your forked repo and add /releases to the URL, i.e., github.com/user/InfusePlus/releases.)</li>
</ol>
</details>