Improves workflows, removes old ones

This commit is contained in:
Dan
2024-12-07 07:04:57 +03:00
parent 6a019a8364
commit fd5ae2bd2b
3 changed files with 313 additions and 191 deletions
+207 -9
View File
@@ -3,8 +3,39 @@ name: Create YouTube Plus app
on: on:
workflow_dispatch: workflow_dispatch:
inputs: inputs:
enable_youpip:
description: "Integrate YouPiP"
type: boolean
required: true
default: true
enable_ytuhd:
description: "Integrate YTUHD"
type: boolean
required: true
default: true
enable_ryd:
description: "Integrate Return YouTube Dislikes"
type: boolean
required: true
default: true
enable_yq:
description: "Integrate YouQuality"
type: boolean
required: true
default: true
enable_demc:
description: "Integrate DontEatMyContent"
type: boolean
required: true
default: true
ipa_url: ipa_url:
description: "The direct URL to the decrypted IPA file" description: "URL to the decrypted IPA file"
default: "" default: ""
required: true required: true
type: string type: string
@@ -15,6 +46,12 @@ on:
required: true required: true
type: string type: string
info_note:
description: "TIP: Learn more about integrations in the README via the link below"
default: "https://github.com/dayanch96/YTLite#how-to-build-a-youtube-plus-app-by-yourself-using-github-actions"
type: string
required: false
concurrency: concurrency:
group: ${{ github.workflow }}-${{ github.ref }} group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
@@ -33,12 +70,51 @@ jobs:
path: main path: main
submodules: recursive submodules: recursive
- name: Install Dependencies
run: brew install make ldid
- name: Set PATH environment variable - name: Set PATH environment variable
run: echo "$(brew --prefix make)/libexec/gnubin" >> $GITHUB_PATH run: echo "$(brew --prefix make)/libexec/gnubin" >> $GITHUB_PATH
- name: Cache Theos
id: theos
uses: actions/cache@v4.0.1
env:
cache-name: theos_cache_67db2ab
with:
path: theos/
key: ${{ env.cache-name }}
restore-keys: ${{ env.cache-name }}
- name: Setup Theos
if: steps.theos.outputs.cache-hit != 'true'
uses: actions/checkout@v4.1.7
with:
repository: theos/theos
ref: 67db2ab8d950910161730de77c322658ea3e6b44
path: ${{ github.workspace }}/theos
submodules: recursive
- name: Download iOS SDK
if: steps.theos.outputs.cache-hit != 'true'
run: |
git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/theos/sdks/
cd sdks
git sparse-checkout set --no-cone iPhoneOS16.5.sdk
git checkout
mv *.sdk $THEOS/sdks
env:
THEOS: ${{ github.workspace }}/theos
- name: Install cyan - name: Install cyan
run: pipx install --force https://github.com/asdfzxcvbn/pyzule-rw/archive/main.zip run: pipx install --force https://github.com/asdfzxcvbn/pyzule-rw/archive/main.zip
- name: Download YouTube Plus
id: download_ytp
run: |
deb_url="https://github.com/dayanch96/YTLite/releases/download/v${{ inputs.tweak_version }}/com.dvntm.ytlite_${{ inputs.tweak_version }}_iphoneos-arm.deb"
wget "$deb_url" --no-verbose -O ${{ github.workspace }}/ytplus.deb
- name: Hide sensitive inputs - name: Hide sensitive inputs
uses: levibostian/action-hide-sensitive-inputs@v1 uses: levibostian/action-hide-sensitive-inputs@v1
@@ -46,12 +122,6 @@ jobs:
id: download_youtube id: download_youtube
run: wget "${{ inputs.ipa_url }}" --no-verbose -O ${{ github.workspace }}/youtube.ipa run: wget "${{ inputs.ipa_url }}" --no-verbose -O ${{ github.workspace }}/youtube.ipa
- name: Download YouTube Plus
id: download_ytp
run: |
deb_url="https://github.com/dayanch96/YTLite/releases/download/v${{ inputs.tweak_version }}/com.dvntm.ytlite_${{ inputs.tweak_version }}_iphoneos-arm.deb"
wget "$deb_url" --no-verbose -O ${{ github.workspace }}/ytplus.deb
- name: Clone Open in YouTube (Safari extension) - name: Clone Open in YouTube (Safari extension)
run: | run: |
git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/CokePokes/YoutubeExtensions/ git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/CokePokes/YoutubeExtensions/
@@ -60,8 +130,136 @@ jobs:
git checkout git checkout
mv *.appex ${{ github.workspace }} mv *.appex ${{ github.workspace }}
- name: Inject tweak into IPA - name: Clone YouTubeHeader
run: cyan -i youtube.ipa -o YouTubePlus_${{ inputs.tweak_version }}.ipa -uwf ytplus.deb OpenYoutubeSafariExtension.appex run: |
if [ -d "$THEOS/include/YouTubeHeader" ]; then
echo "YouTubeHeader exists. Pulling latest changes..."
cd $THEOS/include/YouTubeHeader
git pull
else
echo "YouTubeHeader does not exist. Cloning repository..."
cd $THEOS/include
git clone --quiet --depth=1 https://github.com/PoomSmart/YouTubeHeader.git
fi
env:
THEOS: ${{ github.workspace }}/theos
- name: Clone YouPiP
if: ${{ inputs.enable_youpip }}
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YouPiP.git
- name: Clone YTUHD
if: ${{ inputs.enable_ytuhd }}
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YTUHD.git
- name: Clone Return-YouTube-Dislikes
if: ${{ inputs.enable_ryd }}
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/Return-YouTube-Dislikes.git
- name: Clone YouGroupSettings
if: ${{ inputs.enable_demc }}
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YouGroupSettings.git
- name: Clone YouQuality
if: ${{ inputs.enable_yq }}
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YouQuality.git
- name: Clone YTVideoOverlay
if: ${{ inputs.enable_yq }}
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YTVideoOverlay.git
- name: Clone DontEatMyContent
if: ${{ inputs.enable_demc }}
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 --recurse-submodules https://github.com/therealFoxster/DontEatMyContent.git
- name: Build YouPiP
if: ${{ inputs.enable_youpip }}
run: |
cd ${{ github.workspace }}/YouPiP
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/youpip.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build YTUHD
if: ${{ inputs.enable_ytuhd }}
run: |
cd ${{ github.workspace }}/YTUHD
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/ytuhd.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build Return-YouTube-Dislikes
if: ${{ inputs.enable_ryd }}
run: |
cd ${{ github.workspace }}/Return-YouTube-Dislikes
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/ryd.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build YouGroupSettings
if: ${{ inputs.enable_demc }}
run: |
cd ${{ github.workspace }}/YouGroupSettings
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/ygs.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build YouQuality
if: ${{ inputs.enable_yq }}
run: |
cd ${{ github.workspace }}/YouQuality
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/yq.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build YTVideoOverlay
if: ${{ inputs.enable_yq }}
run: |
cd ${{ github.workspace }}/YTVideoOverlay
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/ytvo.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build DontEatMyContent
if: ${{ inputs.enable_demc }}
run: |
cd ${{ github.workspace }}/DontEatMyContent
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/demc.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Inject tweaks into IPA
run: |
tweaks="ytplus.deb OpenYoutubeSafariExtension.appex"
for deb in youpip.deb ytuhd.deb ryd.deb ygs.deb yq.deb ytvo.deb demc.deb; do
if [ -f "$deb" ]; then
tweaks="$tweaks $deb"
fi
done
cyan -i youtube.ipa -o YouTubePlus_${{ inputs.tweak_version }}.ipa -uwf $tweaks
- name: Upload to GitHub Releases - name: Upload to GitHub Releases
uses: softprops/action-gh-release@v2.0.1 uses: softprops/action-gh-release@v2.0.1
@@ -1,20 +1,57 @@
name: '[LINK] YouTube Plus + YouPiP, YTUHD and RYD' name: '[BETA] Create YouTube Plus app'
on: on:
workflow_dispatch: workflow_dispatch:
inputs: inputs:
enable_youpip:
description: "Integrate YouPiP"
type: boolean
required: true
default: true
enable_ytuhd:
description: "Integrate YTUHD"
type: boolean
required: true
default: true
enable_ryd:
description: "Integrate Return YouTube Dislikes"
type: boolean
required: true
default: true
enable_yq:
description: "Integrate YouQuality"
type: boolean
required: true
default: true
enable_demc:
description: "Integrate DontEatMyContent"
type: boolean
required: true
default: true
ipa_url: ipa_url:
description: "Direct link to the decrypted IPA file (not to the web-page)" description: "URL to the decrypted IPA file"
default: "" default: ""
required: true required: true
type: string type: string
tweak_url: tweak_url:
description: "Direct link to the YouTube Plus tweak file (not to the web-page)" description: "URL to the YouTube Plus tweak file"
default: "" default: ""
required: true required: true
type: string type: string
info_note:
description: "TIP: Learn more about integrations in the README via the link below"
default: "https://github.com/dayanch96/YTLite#how-to-build-a-youtube-plus-app-by-yourself-using-github-actions"
type: string
required: false
concurrency: concurrency:
group: ${{ github.workflow }}-${{ github.ref }} group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
@@ -106,26 +143,49 @@ jobs:
THEOS: ${{ github.workspace }}/theos THEOS: ${{ github.workspace }}/theos
- name: Clone YouPiP - name: Clone YouPiP
if: ${{ inputs.enable_youpip }}
run: | run: |
cd ${{ github.workspace }} cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YouPiP.git git clone --quiet --depth=1 https://github.com/PoomSmart/YouPiP.git
- name: Clone YTUHD - name: Clone YTUHD
if: ${{ inputs.enable_ytuhd }}
run: | run: |
cd ${{ github.workspace }} cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YTUHD.git git clone --quiet --depth=1 https://github.com/PoomSmart/YTUHD.git
- name: Clone Return-YouTube-Dislikes - name: Clone Return-YouTube-Dislikes
if: ${{ inputs.enable_ryd }}
run: | run: |
cd ${{ github.workspace }} cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/Return-YouTube-Dislikes.git git clone --quiet --depth=1 https://github.com/PoomSmart/Return-YouTube-Dislikes.git
- name: Clone YouGroupSettings - name: Clone YouGroupSettings
if: ${{ inputs.enable_demc }}
run: | run: |
cd ${{ github.workspace }} cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YouGroupSettings.git git clone --quiet --depth=1 https://github.com/PoomSmart/YouGroupSettings.git
- name: Clone YouQuality
if: ${{ inputs.enable_yq }}
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YouQuality.git
- name: Clone YTVideoOverlay
if: ${{ inputs.enable_yq }}
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YTVideoOverlay.git
- name: Clone DontEatMyContent
if: ${{ inputs.enable_demc }}
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 --recurse-submodules https://github.com/therealFoxster/DontEatMyContent.git
- name: Build YouPiP - name: Build YouPiP
if: ${{ inputs.enable_youpip }}
run: | run: |
cd ${{ github.workspace }}/YouPiP cd ${{ github.workspace }}/YouPiP
make clean package DEBUG=0 FINALPACKAGE=1 make clean package DEBUG=0 FINALPACKAGE=1
@@ -134,6 +194,7 @@ jobs:
THEOS: ${{ github.workspace }}/theos THEOS: ${{ github.workspace }}/theos
- name: Build YTUHD - name: Build YTUHD
if: ${{ inputs.enable_ytuhd }}
run: | run: |
cd ${{ github.workspace }}/YTUHD cd ${{ github.workspace }}/YTUHD
make clean package DEBUG=0 FINALPACKAGE=1 make clean package DEBUG=0 FINALPACKAGE=1
@@ -142,6 +203,7 @@ jobs:
THEOS: ${{ github.workspace }}/theos THEOS: ${{ github.workspace }}/theos
- name: Build Return-YouTube-Dislikes - name: Build Return-YouTube-Dislikes
if: ${{ inputs.enable_ryd }}
run: | run: |
cd ${{ github.workspace }}/Return-YouTube-Dislikes cd ${{ github.workspace }}/Return-YouTube-Dislikes
make clean package DEBUG=0 FINALPACKAGE=1 make clean package DEBUG=0 FINALPACKAGE=1
@@ -150,6 +212,7 @@ jobs:
THEOS: ${{ github.workspace }}/theos THEOS: ${{ github.workspace }}/theos
- name: Build YouGroupSettings - name: Build YouGroupSettings
if: ${{ inputs.enable_demc }}
run: | run: |
cd ${{ github.workspace }}/YouGroupSettings cd ${{ github.workspace }}/YouGroupSettings
make clean package DEBUG=0 FINALPACKAGE=1 make clean package DEBUG=0 FINALPACKAGE=1
@@ -157,15 +220,49 @@ jobs:
env: env:
THEOS: ${{ github.workspace }}/theos THEOS: ${{ github.workspace }}/theos
- name: Build YouQuality
if: ${{ inputs.enable_yq }}
run: |
cd ${{ github.workspace }}/YouQuality
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/yq.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build YTVideoOverlay
if: ${{ inputs.enable_yq }}
run: |
cd ${{ github.workspace }}/YTVideoOverlay
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/ytvo.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build DontEatMyContent
if: ${{ inputs.enable_demc }}
run: |
cd ${{ github.workspace }}/DontEatMyContent
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/demc.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Inject tweaks into IPA - name: Inject tweaks into IPA
run: | run: |
cyan -i youtube.ipa -o YTPlus_Tweaks.ipa \ tweaks="ytplus.deb OpenYoutubeSafariExtension.appex"
-uwf ytplus.deb OpenYoutubeSafariExtension.appex youpip.deb ytuhd.deb ryd.deb ygs.deb
for deb in youpip.deb ytuhd.deb ryd.deb ygs.deb yq.deb ytvo.deb demc.deb; do
if [ -f "$deb" ]; then
tweaks="$tweaks $deb"
fi
done
cyan -i youtube.ipa -o YouTubePlus_Beta.ipa -uwf $tweaks
- name: Upload to GitHub Releases - name: Upload to GitHub Releases
uses: softprops/action-gh-release@v2.0.1 uses: softprops/action-gh-release@v2.0.1
with: with:
tag_name: v${{ github.run_number }} tag_name: v${{ github.run_number }}
name: YouTubePlus + Tweaks (${{ github.run_number }}) name: YouTubePlus Beta (${{ github.run_number }})
files: YTPlus_Tweaks.ipa files: YouTubePlus_Beta.ipa
draft: true draft: true
-173
View File
@@ -1,173 +0,0 @@
name: YouTube Plus + YouPiP, YTUHD and RYD
on:
workflow_dispatch:
inputs:
ipa_url:
description: "The direct 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/YTLite/releases or leave default"
default: "5.1"
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: Install Dependencies
run: brew install make ldid
- name: Set PATH environment variable
run: echo "$(brew --prefix make)/libexec/gnubin" >> $GITHUB_PATH
- name: Cache Theos
id: theos
uses: actions/cache@v4.0.1
env:
cache-name: theos_cache_67db2ab
with:
path: theos/
key: ${{ env.cache-name }}
restore-keys: ${{ env.cache-name }}
- name: Setup Theos
if: steps.theos.outputs.cache-hit != 'true'
uses: actions/checkout@v4.1.7
with:
repository: theos/theos
ref: 67db2ab8d950910161730de77c322658ea3e6b44
path: ${{ github.workspace }}/theos
submodules: recursive
- name: Download iOS SDK
if: steps.theos.outputs.cache-hit != 'true'
run: |
git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/theos/sdks/
cd sdks
git sparse-checkout set --no-cone iPhoneOS16.5.sdk
git checkout
mv *.sdk $THEOS/sdks
env:
THEOS: ${{ github.workspace }}/theos
- name: Install cyan
run: pipx install --force https://github.com/asdfzxcvbn/pyzule-rw/archive/main.zip
- name: Hide sensitive inputs
uses: levibostian/action-hide-sensitive-inputs@v1
- name: Download YouTube
id: download_youtube
run: wget "${{ inputs.ipa_url }}" --no-verbose -O ${{ github.workspace }}/youtube.ipa
- name: Download YouTube Plus
id: download_ytp
run: |
deb_url="https://github.com/dayanch96/YTLite/releases/download/v${{ inputs.tweak_version }}/com.dvntm.ytlite_${{ inputs.tweak_version }}_iphoneos-arm.deb"
wget "$deb_url" --no-verbose -O ${{ github.workspace }}/ytplus.deb
- name: Clone Open in YouTube (Safari extension)
run: |
git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/CokePokes/YoutubeExtensions/
cd YoutubeExtensions
git sparse-checkout set --no-cone OpenYoutubeSafariExtension.appex
git checkout
mv *.appex ${{ github.workspace }}
- name: Clone YouTubeHeader
run: |
if [ -d "$THEOS/include/YouTubeHeader" ]; then
echo "YouTubeHeader exists. Pulling latest changes..."
cd $THEOS/include/YouTubeHeader
git pull
else
echo "YouTubeHeader does not exist. Cloning repository..."
cd $THEOS/include
git clone --quiet --depth=1 https://github.com/PoomSmart/YouTubeHeader.git
fi
env:
THEOS: ${{ github.workspace }}/theos
- name: Clone YouPiP
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YouPiP.git
- name: Clone YTUHD
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YTUHD.git
- name: Clone Return-YouTube-Dislikes
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/Return-YouTube-Dislikes.git
- name: Clone YouGroupSettings
run: |
cd ${{ github.workspace }}
git clone --quiet --depth=1 https://github.com/PoomSmart/YouGroupSettings.git
- name: Build YouPiP
run: |
cd ${{ github.workspace }}/YouPiP
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/youpip.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build YTUHD
run: |
cd ${{ github.workspace }}/YTUHD
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/ytuhd.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build Return-YouTube-Dislikes
run: |
cd ${{ github.workspace }}/Return-YouTube-Dislikes
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/ryd.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Build YouGroupSettings
run: |
cd ${{ github.workspace }}/YouGroupSettings
make clean package DEBUG=0 FINALPACKAGE=1
mv packages/*.deb ${{ github.workspace }}/ygs.deb
env:
THEOS: ${{ github.workspace }}/theos
- name: Inject tweaks into IPA
run: |
cyan -i youtube.ipa -o YouTubePlus_${{ inputs.tweak_version }}_Tweaks.ipa \
-uwf ytplus.deb OpenYoutubeSafariExtension.appex youpip.deb ytuhd.deb ryd.deb ygs.deb
- name: Upload to GitHub Releases
uses: softprops/action-gh-release@v2.0.1
with:
tag_name: v${{ github.run_number }}
name: YouTubePlus v${{ inputs.tweak_version }} + Tweaks (${{ github.run_number }})
files: YouTubePlus_${{ inputs.tweak_version }}_Tweaks.ipa
draft: true