├── .gitignore ├── .devcontainer └── devcontainer.json ├── .github └── workflows │ └── build.yml └── .gitmodules /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | -------------------------------------------------------------------------------- /.devcontainer/devcontainer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Tweaks", 3 | "image": "mcr.microsoft.com/devcontainers/base:ubuntu", 4 | "features": { 5 | "ghcr.io/waruhachi/features/theos:latest": {}, 6 | "ghcr.io/waruhachi/features/swift:latest": {}, 7 | "ghcr.io/waruhachi/features/comet:latest": {}, 8 | "ghcr.io/waruhachi/features/libplist:latest": {}, 9 | "ghcr.io/waruhachi/features/libgcuniversal:latest": {} 10 | }, 11 | "overrideFeatureInstallOrder": [ 12 | "ghcr.io/waruhachi/features/theos", 13 | "ghcr.io/waruhachi/features/swift", 14 | "ghcr.io/waruhachi/features/comet", 15 | "ghcr.io/waruhachi/features/libplist", 16 | "ghcr.io/waruhachi/features/libgcuniversal" 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | name: Build All Tweaks 2 | permissions: 3 | contents: write 4 | 5 | on: 6 | push: 7 | branches: 8 | - release 9 | 10 | jobs: 11 | cleanup: 12 | runs-on: macos-latest 13 | steps: 14 | - uses: actions/checkout@v4 15 | 16 | - name: Cleaning up existing releases and tags 17 | env: 18 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 19 | run: | 20 | gh release delete release --yes || true 21 | 22 | build: 23 | needs: cleanup 24 | runs-on: macos-latest 25 | strategy: 26 | matrix: 27 | project: 28 | - AmongLock 29 | - AppareilPhoto 30 | - AppStoreTroller 31 | - Astolfo 32 | - CCNoiseControl 33 | - Central 34 | - Diary 35 | - FocusDND 36 | - Frame 37 | - Heartlines 38 | - Kabegami 39 | - Letter 40 | - Libellum 41 | - Nita 42 | - NoRecents 43 | - SCMusicPlus 44 | - SheetMusicScanner 45 | - VerticalBatteryDrain 46 | steps: 47 | - uses: actions/checkout@v4 48 | with: 49 | submodules: true 50 | 51 | 52 | - name: Set up Theos 53 | uses: waruhachi/theos-action@v2.4.6 54 | with: 55 | theos-src: 'waruhachi/theos' 56 | theos-branch: 'main' 57 | sdks-src: 'waruhachi/sdks' 58 | sdks-branch: 'main' 59 | libgcuniversal: true 60 | libgcuniversal-src: 'waruhachi/LibGcUniversal' 61 | libgcuniversal-branch: 'main' 62 | altlist: true 63 | altlist-src: 'waruhachi/AltList' 64 | altlist-branch: 'main' 65 | 66 | - name: Build Package 67 | working-directory: ${{ matrix.project }} 68 | shell: bash 69 | run: | 70 | make clean package FINALPACKAGE=1 71 | make clean package FINALPACKAGE=1 THEOS_PACKAGE_SCHEME=rootless 72 | make clean package FINALPACKAGE=1 THEOS_PACKAGE_SCHEME=roothide 73 | 74 | - name: Save Metadata 75 | id: metadata 76 | working-directory: ${{ matrix.project }} 77 | shell: bash 78 | run: | 79 | mkdir -p $GITHUB_WORKSPACE/${{ matrix.project }} 80 | 81 | MD5_ARM=$(md5 -q packages/*_iphoneos-arm.deb) 82 | SHA1_ARM=$(shasum -a 1 packages/*_iphoneos-arm.deb | awk '{ print $1 }') 83 | SHA256_ARM=$(shasum -a 256 packages/*_iphoneos-arm.deb | awk '{ print $1 }') 84 | 85 | MD5_ARM64=$(md5 -q packages/*_iphoneos-arm64.deb) 86 | SHA1_ARM64=$(shasum -a 1 packages/*_iphoneos-arm64.deb | awk '{ print $1 }') 87 | SHA256_ARM64=$(shasum -a 256 packages/*_iphoneos-arm64.deb | awk '{ print $1 }') 88 | 89 | MD5_ARM64E=$(md5 -q packages/*_iphoneos-arm64e.deb) 90 | SHA1_ARM64E=$(shasum -a 1 packages/*_iphoneos-arm64e.deb | awk '{ print $1 }') 91 | SHA256_ARM64E=$(shasum -a 256 packages/*_iphoneos-arm64e.deb | awk '{ print $1 }') 92 | 93 | echo "${{ matrix.project }}" > $GITHUB_WORKSPACE/${{ matrix.project }}/metadata.txt 94 | echo "$MD5_ARM,$SHA1_ARM,$SHA256_ARM,$MD5_ARM64,$SHA1_ARM64,$SHA256_ARM64,$MD5_ARM64E,$SHA1_ARM64E,$SHA256_ARM64E" >> $GITHUB_WORKSPACE/${{ matrix.project }}/metadata.txt 95 | 96 | - name: Generate Release Notes 97 | id: release-notes 98 | shell: bash 99 | run: | 100 | FILE=$GITHUB_WORKSPACE/${{ matrix.project }}/metadata.txt 101 | PROJECT=$(head -n 1 "$FILE") 102 | METADATA=$(tail -n 1 "$FILE") 103 | 104 | MD5_ARM=$(echo "$METADATA" | cut -d',' -f1) 105 | SHA1_ARM=$(echo "$METADATA" | cut -d',' -f2) 106 | SHA256_ARM=$(echo "$METADATA" | cut -d',' -f3) 107 | MD5_ARM64=$(echo "$METADATA" | cut -d',' -f4) 108 | SHA1_ARM64=$(echo "$METADATA" | cut -d',' -f5) 109 | SHA256_ARM64=$(echo "$METADATA" | cut -d',' -f6) 110 | MD5_ARM64E=$(echo "$METADATA" | cut -d',' -f7) 111 | SHA1_ARM64E=$(echo "$METADATA" | cut -d',' -f8) 112 | SHA256_ARM64E=$(echo "$METADATA" | cut -d',' -f9) 113 | 114 | echo "### $PROJECT" >> release_body.md 115 | echo "iphoneos-arm:" >> release_body.md 116 | echo " MD5: $MD5_ARM" >> release_body.md 117 | echo " SHA1: $SHA1_ARM" >> release_body.md 118 | echo " SHA256: $SHA256_ARM" >> release_body.md 119 | echo "" >> release_body.md 120 | echo "iphoneos-arm64:" >> release_body.md 121 | echo " MD5: $MD5_ARM64" >> release_body.md 122 | echo " SHA1: $SHA1_ARM64" >> release_body.md 123 | echo " SHA256: $SHA256_ARM64" >> release_body.md 124 | echo "" >> release_body.md 125 | echo "iphoneos-arm64e:" >> release_body.md 126 | echo " MD5: $MD5_ARM64E" >> release_body.md 127 | echo " SHA1: $SHA1_ARM64E" >> release_body.md 128 | echo " SHA256: $SHA256_ARM64E" >> release_body.md 129 | echo "" >> release_body.md 130 | 131 | - name: Create GitHub Release 132 | uses: softprops/action-gh-release@v2 133 | env: 134 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 135 | with: 136 | tag_name: release 137 | name: Tweaks 138 | body_path: release_body.md 139 | files: ${{ matrix.project }}/packages/*.deb 140 | draft: false 141 | prerelease: false 142 | make_latest: true 143 | append_body: true 144 | preserve_order: true 145 | 146 | - name: Create GitHub Release for Submodule 147 | uses: softprops/action-gh-release@v2 148 | with: 149 | tag_name: ${{ matrix.project }} 150 | name: ${{ matrix.project }} 151 | body_path: release_body.md 152 | files: ${{ matrix.project }}/packages/*.deb 153 | token: ${{ secrets.TOKEN }} 154 | repository: ${{ github.repository_owner }}/${{ matrix.project }} 155 | draft: false 156 | prerelease: false 157 | make_latest: true 158 | preserve_order: true 159 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "NoLSPowerDown"] 2 | path = NoLSPowerDown 3 | url = https://github.com/waruhachi/nolspowerdown.git 4 | branch = main 5 | [submodule "Crystal"] 6 | path = Crystal 7 | url = https://github.com/waruhachi/Crystal.git 8 | branch = main 9 | [submodule "Kayoko"] 10 | path = Kayoko 11 | url = https://github.com/waruhachi/Kayoko.git 12 | branch = main 13 | [submodule "Ve"] 14 | path = Ve 15 | url = https://github.com/waruhachi/Ve.git 16 | branch = main 17 | [submodule "HATE"] 18 | path = HATE 19 | url = https://github.com/waruhachi/HATE.git 20 | branch = main 21 | [submodule "CozyBadges"] 22 | path = CozyBadges 23 | url = https://github.com/waruhachi/CozyBadges.git 24 | branch = main 25 | [submodule "QuickPrefs"] 26 | path = QuickPrefs 27 | url = https://github.com/waruhachi/QuickPrefs.git 28 | branch = main 29 | [submodule "BatteryBuddy"] 30 | path = BatteryBuddy 31 | url = https://github.com/waruhachi/BatteryBuddy.git 32 | branch = main 33 | [submodule "MagmaEvo"] 34 | path = MagmaEvo 35 | url = https://github.com/waruhachi/MagmaEvo.git 36 | branch = main 37 | [submodule "BetterAlarm"] 38 | path = BetterAlarm 39 | url = https://github.com/waruhachi/BetterAlarm.git 40 | branch = main 41 | [submodule "AlbumManager"] 42 | path = AlbumManager 43 | url = https://github.com/waruhachi/AlbumManager.git 44 | branch = main 45 | [submodule "Velvet2"] 46 | path = Velvet2 47 | url = https://github.com/waruhachi/Velvet2.git 48 | branch = main 49 | [submodule "Eneko"] 50 | path = Eneko 51 | url = https://github.com/waruhachi/Eneko.git 52 | branch = main 53 | [submodule "Liddell"] 54 | path = Liddell 55 | url = https://github.com/waruhachi/Liddell.git 56 | branch = main 57 | [submodule "ShyLabels"] 58 | path = ShyLabels 59 | url = https://github.com/waruhachi/ShyLabels.git 60 | branch = main 61 | [submodule "NotificationFaker"] 62 | path = NotificationFaker 63 | url = https://github.com/waruhachi/NotificationFaker.git 64 | branch = main 65 | [submodule "EasyAirplaneDisabler"] 66 | path = EasyAirplaneDisabler 67 | url = https://github.com/waruhachi/EasyAirplaneDisabler.git 68 | branch = main 69 | [submodule "Diary"] 70 | path = Diary 71 | url = https://github.com/waruhachi/Diary.git 72 | branch = main 73 | [submodule "Koi"] 74 | path = Koi 75 | url = https://github.com/waruhachi/Koi.git 76 | branch = main 77 | [submodule "HiddenPhotosCC"] 78 | path = HiddenPhotosCC 79 | url = https://github.com/waruhachi/HiddenPhotosCC.git 80 | branch = main 81 | [submodule "WindowHUD"] 82 | path = WindowHUD 83 | url = https://github.com/waruhachi/WindowHUD.git 84 | branch = main 85 | [submodule "OhMyFlash"] 86 | path = OhMyFlash 87 | url = https://github.com/waruhachi/OhMyFlash.git 88 | branch = main 89 | [submodule "WiFiCarrier"] 90 | path = WiFiCarrier 91 | url = https://github.com/waruhachi/WiFiCarrier.git 92 | branch = main 93 | [submodule "Ballet"] 94 | path = Ballet 95 | url = https://github.com/waruhachi/Ballet 96 | [submodule "Avrora"] 97 | path = Avrora 98 | url = https://github.com/waruhachi/Avrora.git 99 | branch = main 100 | [submodule "Dress"] 101 | path = Dress 102 | url = https://github.com/waruhachi/Dress.git 103 | branch = main 104 | [submodule "Deja-Vu"] 105 | path = Deja-Vu 106 | url = https://github.com/waruhachi/Deja-Vu.git 107 | branch = main 108 | [submodule "Lisa"] 109 | path = Lisa 110 | url = https://github.com/waruhachi/Lisa.git 111 | branch = main 112 | [submodule "Lobelias"] 113 | path = Lobelias 114 | url = https://github.com/waruhachi/Lobelias.git 115 | branch = main 116 | [submodule "Puck"] 117 | path = Puck 118 | url = https://github.com/waruhachi/Puck.git 119 | branch = main 120 | [submodule "Violet"] 121 | path = Violet 122 | url = https://github.com/waruhachi/Violet.git 123 | branch = main 124 | [submodule "Yuna"] 125 | path = Yuna 126 | url = https://github.com/waruhachi/Yuna.git 127 | branch = main 128 | [submodule "AmongLock"] 129 | path = AmongLock 130 | url = https://github.com/waruhachi/AmongLock.git 131 | branch = main 132 | [submodule "Nita"] 133 | path = Nita 134 | url = https://github.com/waruhachi/Nita.git 135 | branch = main 136 | [submodule "VerticalBatteryDrain"] 137 | path = VerticalBatteryDrain 138 | url = https://github.com/waruhachi/VerticalBatteryDrain.git 139 | branch = main 140 | [submodule "Central"] 141 | path = Central 142 | url = https://github.com/waruhachi/Central.git 143 | branch = main 144 | [submodule "Astolfo"] 145 | path = Astolfo 146 | url = https://github.com/waruhachi/Astolfo.git 147 | branch = main 148 | [submodule "Heartlines"] 149 | path = Heartlines 150 | url = https://github.com/waruhachi/Heartlines.git 151 | branch = main 152 | [submodule "Lune"] 153 | path = Lune 154 | url = https://github.com/waruhachi/Lune.git 155 | branch = main 156 | [submodule "Rose"] 157 | path = Rose 158 | url = https://github.com/waruhachi/Rose.git 159 | branch = main 160 | [submodule "Juin"] 161 | path = Juin 162 | url = https://github.com/waruhachi/Juin.git 163 | branch = main 164 | [submodule "SheetMusicScanner"] 165 | path = SheetMusicScanner 166 | url = https://github.com/waruhachi/SheetMusicScanner.git 167 | branch = main 168 | [submodule "NoRecents"] 169 | path = NoRecents 170 | url = https://github.com/waruhachi/NoRecents.git 171 | branch = main 172 | [submodule "Kabegami"] 173 | path = Kabegami 174 | url = https://github.com/waruhachi/Kabegami.git 175 | branch = main 176 | [submodule "FocusDND"] 177 | path = FocusDND 178 | url = https://github.com/waruhachi/FocusDND.git 179 | branch = main 180 | [submodule "SCMusicPlus"] 181 | path = SCMusicPlus 182 | url = https://github.com/waruhachi/SCMusicPlus.git 183 | branch = main 184 | [submodule "CCNoiseControl"] 185 | path = CCNoiseControl 186 | url = https://github.com/waruhachi/CCNoiseControl.git 187 | branch = main 188 | [submodule "Stardust"] 189 | path = Stardust 190 | url = https://github.com/waruhachi/Stardust.git 191 | branch = main 192 | [submodule "ProudLock"] 193 | path = ProudLock 194 | url = https://github.com/waruhachi/ProudLock.git 195 | branch = main 196 | [submodule "Playlist"] 197 | path = Playlist 198 | url = https://github.com/waruhachi/Playlist.git 199 | branch = main 200 | [submodule "NoLowPowerAlert"] 201 | path = NoLowPowerAlert 202 | url = https://github.com/waruhachi/NoLowPowerAlert.git 203 | branch = main 204 | [submodule "Neverland"] 205 | path = Neverland 206 | url = https://github.com/waruhachi/Neverland.git 207 | branch = main 208 | [submodule "Lou"] 209 | path = Lou 210 | url = https://github.com/waruhachi/Lou.git 211 | branch = main 212 | [submodule "Letter"] 213 | path = Letter 214 | url = https://github.com/waruhachi/Letter.git 215 | branch = main 216 | [submodule "Ember"] 217 | path = Ember 218 | url = https://github.com/waruhachi/Ember.git 219 | branch = main 220 | [submodule "AppareilPhoto"] 221 | path = AppareilPhoto 222 | url = https://github.com/waruhachi/AppareilPhoto.git 223 | branch = main 224 | [submodule "Libellum"] 225 | path = Libellum 226 | url = https://github.com/waruhachi/Libellum.git 227 | branch = main 228 | [submodule "Frame"] 229 | path = Frame 230 | url = https://github.com/waruhachi/Frame.git 231 | branch = main 232 | [submodule "AppStoreTroller"] 233 | path = AppStoreTroller 234 | url = https://github.com/waruhachi/AppStoreTroller.git 235 | branch = main 236 | --------------------------------------------------------------------------------