Skip to content

Build YouTube Plus (YTLite) with optional integrated tweaks

Notifications You must be signed in to change notification settings

fosterbarnes/YTPlusYTweaks

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

456 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YouTube Plus (YTweaks Fork)

YouTube Plus with added plugins.

This repo focuses on simplifying the build process of YouTube Plus, and adding more optional tweaks to bundle with it (specifically YTweaks). No changes have been made to the YouTube Plus .deb itself, just the tweaks that get packaged with it.

When building the app, the latest stable YouTube Plus .deb is downloaded from the original repo, then other tweaks are built from source. All tweaks are then injected into your IPA.

YTweaks added settings:

  • Fullscreen to the right or left: Locks fullscreen orientation.
  • Night Mode: Lowers brightness below device minimum by "faking it" with an app-wide semi-transparent black overlay. Works best on OLED devices.
  • Disable floating miniplayer: Restores the old miniplayer by disabling the floating miniplayer.
  • Virtual fullscreen bezels: Adds invisible touch-safe zones on black bars to prevent accidental taps and skips.
  • Fix Casting - Attempts to fix casting by changing some A/B flags. Only works on v20.10.4 or lower

Experimental planned features

  • Hide AI Summaries: Hides AI summaries that appear in the feed.

Added tweaks:

Original repo: https://github.com/dayanch96/YTLite

How to build a YTPlusYTweaks app

If you just need to build the YouTube app without much fuss, use GitHub actions. Actions are easy to set up, but slow to run.

If you plan on testing, adding tweaks that aren't integrated with this repo, making changes, or building very frequently, build locally. Building locally on your computer takes a bit of setup initially, but is much quicker than actions after setup.

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.
How to build YTPlusYTweaks app
  1. Fork this repo if you haven't already. Sync if your branch is out of date.
  2. Go to the "Actions" tab of your new repo.
  3. Select "Build YTPlusYTweaks".
  4. Click "Run workflow".
  5. Select bundled tweaks.
  6. Prepare & upload base .ipa
    • Prepare a decrypted .ipa file (version 20.10.4 or earlier for Fix Casting to work).
      We cannot provide this file due to legal reasons.

    • Upload the decrypted IPA to a file hosting service (e.g., litterbox.catbox.moe or Dropbox).
      If you use Dropbox, change the end of the URL from dl=0 to dl=1.

    • Paste the direct download link to the decrypted IPA into the provided field.
      NOTE: Make sure to provide a direct download link to the file, not a webpage. Otherwise, the process will fail.

  7. Click "Run workflow".
  8. Screenshot 15
  9. Wait for the build to finish. You can download the YouTube 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/YTPlusYTweaks/releases.)

  10. Additional workflow options:

    • The version of YTLite to use:
      Input a release tag from dayanch96/YTLite/tags
      Example: 5.2b3 or v5.2b3

    • iOS SDK Version:
      16.5 should be used for older devices, 18.6 can be used for newer devices
      Example: 16.5

    • Inject pre-built DEB(s):
      User-provided DEBs can be downloaded and injected alongside other tweaks. Either provide comma-separated direct download links to .deb files OR a direct download link to zipped .deb files
      .deb example: https://litter.catbox.moe/1.deb, https://litter.catbox.moe/2.deb
      .zip example: https://litter.catbox.moe/debs.zip

    • App Name:
      Display name for the app on the homescreen
      Example: YTPlusYTweaks

    • BundleID:
      Unique identifier assigned to every application. Change if you want to have multiple installs of YouTube
      Example: com.google.ios.youtube2

How to build .debs
  1. Fork this repo if you haven't already. Sync if your branch is out of date.
  2. Go to the "Actions" tab of your new repo.
  3. Select "Build .deb packages".
  4. Click "Run workflow".
  5. Select tweaks.
  6. Click "Run workflow".
  7. Screenshot 10
  8. Wait for the build to finish. You can download the YouTube 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/YTPlusYTweaks/releases.)

Local (Tested on macOS 15 Sequoia)

How to build locally on your machine
  1. Install brew and git if not already present, then clone this repo to download the required build scripts:
if ! command -v brew &> /dev/null; then
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
else
    echo "Homebrew already installed."
fi

brew install git
cd "$HOME/Desktop"
git clone --filter=blob:none --no-checkout https://github.com/fosterbarnes/YTPlusYTweaks
cd YTPlusYTweaks || exit
git sparse-checkout init --no-cone
git sparse-checkout set \
    'deb/*' \
    'ipa/*' \
    'build.sh' \
    'build_dependencies.sh' \
    'README.md'
git checkout main
  1. Run the build dependencies script
./build_dependencies.sh
  1. Run the build script to build your app

Build with a URL to a decrypted IPA

./build.sh --ipa URL_HERE

Build with the IPA in 'YTPlusYTweaks/ipa'

./build.sh --ipa

Build with any pre-built DEBs in 'YTPlusYTweaks/deb'

./build.sh --ipa --deb

To list all options:

./build.sh -h
YTPlusYTweaks Build Script

Usage: $0 --ipa [URL] [options]

IPAs Source:
    --ipa [URL]                  If URL provided: download IPA from URL (saves to ipa/)
                                  If no URL: use local IPA from ipa/ folder (looks for *.ipa files)

Optional Arguments:
    --deb                        Use pre-built .deb files from deb/ folder. Otherwise, build from source.
    --tweak-version <version>    Version of YTLite tweak (default: 5.2b4)
    --display-name <name>        App display name (default: YouTube)
    --bundle-id <id>             Bundle ID (default: com.google.ios.youtube)

Tweak Integration Flags:
    --enable-all                 Enable all tweaks
    --disable-all                Disable all tweaks
    
    --enable-youpip              YouPiP (default: true)
    --enable-ytuhd               YTUHD (default: true)
    --enable-yq                  YouQuality (default: true)
    --enable-ryd                 Return YouTube Dislikes (default: true)
    --enable-demc                DontEatMyContent (default: true)
    --enable-ytabconfig          YTABConfig (default: true)
    --enable-ytweaks             YTweaks (default: true)
    --enable-yougroupsettings    Settings (default: true)
    --enable-yticons             YTIcons (default: false)
    --enable-gonerino            Gonerino (default: false)

    --disable-youpip             YouPiP
    --disable-ytuhd              YTUHD
    --disable-yq                 YouQuality
    --disable-ryd                Return YouTube Dislikes
    --disable-demc               DontEatMyContent
    --disable-ytabconfig         YTABConfig
    --disable-ytweaks            YTweaks
    --disable-yougroupsettings   YouGroupSettings
    --disable-yticons            YTIcons
    --disable-gonerino           Gonerino

Other Options:
    -h, --help                   Show this help message

Examples:
    $0 --ipa https://example.com/youtube.ipa
    $0 --ipa --deb --disable-all
    $0 --ipa --disable-yticons --enable-ytweaks

Table of Contents

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3
More screenshots
Screenshot 4 Screenshot 5 Screenshot 6
Screenshot 7 Screenshot 8 Screenshot 9

YouTube Plus Features

  • Download videos, audio (including audio track selection), thumbnails, posts, and profile pictures
  • Copy video, comment, and post information
  • Interface customization: Remove feed elements, reorder tabs, enable OLED mode, and as use Shorts-only mode
  • Player settings: Gestures, default quality, preferred audio track
  • Save, Load and Restore settings. Clear cache once or automatically on app startup
  • Built-in SponsorBlock
  • And much, much more

  • YouTube Plus preferences can be found in the YouTube Settings

    All contributors are listed in the Contributors section Used open-source libraries are listed in the Open Source Libraries section

    Issues, Bugs & Feature Requests

    Fill out an issue form with the applicable option selected and fill out all required info.

    FAQ

    Supported YouTube Version

    • Recommended: 20.10.4
    • Latest confirmed: 21.02.3
    • Date tested: Jan 17, 2025
    • YouTube Plus: 5.2 beta 4

    Tweak Integration Details

    YouPiP

    YouPiP is a tweak developed by PoomSmart that enables the native Picture-in-Picture feature for videos in the iOS YouTube app.

    YouPiP preferences are available in the YouTube settings.

    Source code and additional information are available in PoomSmart's GitHub repository.

    YTUHD

    YTUHD is a tweak developed by PoomSmart that unlocks 1440p (2K) and 2160p (4K) resolutions in the iOS YouTube app. Forked by Tonwalter888 to fix some issues when using the tweak while sideloading

    YTUHD preferences are available in the Video quality preferences section under YouTube settings.

    Source code and additional information are available in PoomSmart's GitHub repository.

    Return YouTube Dislikes

    Return YouTube Dislikes is a tweak developed by PoomSmart that brings back dislikes on the YouTube app.

    Return YouTube Dislikes preferences are available in the YouTube settings.

    Source code and additional information are available in PoomSmart's GitHub repository.

    YouQuality

    YouQuality is a tweak developed by PoomSmart that allows to view and change video quality directly from the video overlay.

    YouQuality can be enabled in the Video overlay section under YouTube settings.

    Source code and additional information are available in PoomSmart's GitHub repository.

    DontEatMyContent

    DontEatMyContent is a tweak developed by therealFoxster that prevents the Notch/Dynamic Island from munching on 2:1 video content in the iOS YouTube app.

    DontEatMyContent preferences are available in the YouTube settings.

    Source code and additional information are available in therealFoxster's GitHub repository.

    YTABConfig

    YTABConfig is a tweak developed by PoomSmart that configures A/B settings in the iOS YouTube app.

    YTABConfig preferences are available in the YouTube settings.

    Source code and additional information are available in PoomSmart's GitHub repository.

    YTIcons

    YTIcons is a tweak developed by PoomSmart that displays all usable icons in the iOS YouTube app.

    YTIcons are available in the YouTube settings.

    Source code and additional information are available in PoomSmart's GitHub repository.

    YTweaks

    YTweaks is a tweak developed by fosterbarnes that adds a few extra settings like "Fullscreen to Right" and "Fullscreen to Left"

    YTweaks preferences are available in the YouTube settings.

    Source code and additional information are available in fosterbarnes's GitHub repository.

    YouGroupSettings

    YouGroupSettings is a tweak developed by PoomSmart that allows custom settings (made by tweaks) to be displayed when the grouped settings experiment is active. Forked by FosterBarnes to support YTweaks

    Source code and additional information are available in fosterbarnes's GitHub repository.

    Gonerino

    Gonerino is a tweak developed by castdrian that lets you block certain content from your home feed.

    Source code and additional information are available in castdrian's GitHub repository.

    Credits

    Thank you to everyone that made this project possible! This project would not exist without the existing tools made by these developers. I really appreciate your work :)

    dayanch96 - YTLite

    PoomSmart - YouPiP, YTUHD, Return YouTube Dislikes, YouQuality, YTABConfig, YTIcons, YouGroupSettings

    therealFoxster - DontEatMyContent

    castdrian - Gonerino

    theos - theos, SDKs

    Tonwalter888 - YTUHD, SDKs

    About

    Build YouTube Plus (YTLite) with optional integrated tweaks

    Resources

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Sponsor this project

    Packages

    No packages published

    Languages

    • Shell 100.0%