Skip to content

Commit d6a144a

Browse files
committed
- In Magisk Manager, added the option to install Tricky Store module. (You now have 3 PIF related modules to choose from, Playintegrity Fix, Playintegrity fork, Tricky Store)
- Updates to PIF Manager: - Option to convert from Json to prop (Env) format and vice versa (Tricky Store uses prop format) - Compatible with Tricky Store (latest CI), you can now edit / update / test using Trick Store module. Note: Tricky Store module does not yet support automatic updates, hence PixelFlasher is currently setup to point to the latest release in Github, this still uses Json file to spoof prints, use the latest CI. - If you have multiple PIF modules, for example if you use Trick Store and PiFork together, you can select which module's print you want to edit / update by selecting from the combo box. (Only enabled PIF modules are listed). - When loading prints from favorites, or console output, or using `Smart Paste`, PixelFlasher automatically converts the print to the format (json / prop) that the module requires. - Added option to push keybox.xml file to Tricky Store's predefine path. - Added a button to generate FrameworkPatcher compatible code for use in Android.java, just select the print, generate code and paste it in the proper section of Android.java to use your custom print with FrameworkPathcer. (Note: the generated code by default is commented out, as you can select multiple prints, just uncomment the ones you want to apply) - Added option to backup / restore `/data/adb` directory, please be aware that this only backs up / restores `/data/adb/*`, any modules that installs files outside this path will not be backed up, as it's impossible to know what all modules do. - New features in `My Tools Manger` - Different methods to launch application - Option to enable / disable launching detached process. - Option to insert separator. Note: Start with the defaults and experiment if default behavior is unacceptable. - Miscellaneous fixes and improvements.
1 parent 3b2c6b5 commit d6a144a

18 files changed

+999
-296
lines changed

Main.py

Lines changed: 180 additions & 90 deletions
Large diffs are not rendered by default.

build-on-mac.spec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,6 @@ exe = EXE(pyz,
2828
icon='images/icon-dark-256.icns')
2929
app = BUNDLE(exe,
3030
name='PixelFlasher.app',
31-
version='7.1.1.1',
31+
version='7.2.0.0',
3232
icon='./images/icon-dark-256.icns',
3333
bundle_identifier='com.badabing.pixelflasher')

build.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
# <https://www.gnu.org/licenses/>.
3232

3333
rm -rf build dist
34-
VERSION=7.1.1.1
34+
VERSION=7.2.0.0
3535
NAME="PixelFlasher"
3636
DIST_NAME="PixelFlasher"
3737

constants.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434

3535
APPNAME = 'PixelFlasher'
3636
CONFIG_FILE_NAME = 'PixelFlasher.json'
37-
VERSION = '7.1.1.1'
37+
VERSION = '7.2.0.0'
3838
SDKVERSION = '33.0.3'
3939
MAIN_WIDTH = 1400
4040
MAIN_HEIGHT = 1040
@@ -54,6 +54,7 @@
5454
FULL_OTA_IMAGES_FOR_BETA = 'https://developer.android.com/about/versions/15/download-ota'
5555
PIF_UPDATE_URL = 'https://raw.githubusercontent.com/chiteroman/PlayIntegrityFix/main/update.json'
5656
OSM0SIS_PIF_UPDATE_URL = 'https://raw.githubusercontent.com/osm0sis/PlayIntegrityFork/main/update.json'
57+
TRICKYSTORE_UPDATE_URL = 'https://raw.githubusercontent.com/5ec1cff/TrickyStore/main/update.json' # non-existent, just a placeholder
5758
PIF_JSON_PATH = '/data/adb/pif.json'
5859
XIAOMI_URL = "https://sourceforge.net/projects/xiaomi-eu-multilang-miui-roms/rss?path=/xiaomi.eu/Xiaomi.eu-app"
5960
FREEMANURL = "https://codeload.github.com/TheFreeman193/PIFS/zip/refs/heads/main"

encode-bitmaps.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,13 +160,17 @@
160160
"-a -F -i -n cloud-24 images/cloud-24.png images.py",
161161
"-a -F -i -n star-green-24 images/star-green-24.png images.py",
162162
"-a -F -i -n e2j-24 images/e2j-24.png images.py",
163+
"-a -F -i -n j2e-24 images/j2e-24.png images.py",
163164
"-a -F -i -n save-24 images/save-24.png images.py",
164165
"-a -F -i -n kernelsu-24 images/kernelsu-24.png images.py",
165166
"-a -F -i -n apatch-24 images/apatch-24.png images.py",
166167
"-a -F -i -n cert-24 images/cert-24.png images.py",
167168
"-a -F -i -n downgrade-24 images/downgrade-24.png images.py",
168169
"-a -F -i -n check-otacerts-24 images/check-otacerts-24.png images.py",
169170
"-a -F -i -n wrench-24 images/wrench-24.png images.py",
171+
"-a -F -i -n java-24 images/java-24.png images.py",
172+
"-a -F -i -n folder-zip-24 images/folder-zip-24.png images.py",
173+
"-a -F -i -n restore-24 images/restore-24.png images.py",
170174
]
171175

172176
if __name__ == "__main__":
@@ -177,6 +181,38 @@
177181
# create images.py with proper header
178182
with open('images.py', "w", encoding="ISO-8859-1", errors="replace") as f:
179183
header = """
184+
# This file is part of PixelFlasher https://github.com/badabing2005/PixelFlasher
185+
#
186+
# Copyright (C) 2024 Badabing2005
187+
# SPDX-License-Identifier: AGPL-3.0-or-later
188+
#
189+
# This program is free software: you can redistribute it and/or modify it under
190+
# the terms of the GNU Affero General Public License as published by the Free
191+
# Software Foundation, either version 3 of the License, or (at your option) any
192+
# later version.
193+
#
194+
# This program is distributed in the hope that it will be useful, but WITHOUT
195+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
196+
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License
197+
# for more details.
198+
#
199+
# You should have received a copy of the GNU Affero General Public License
200+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
201+
#
202+
# Also add information on how to contact you by electronic and paper mail.
203+
#
204+
# If your software can interact with users remotely through a computer network,
205+
# you should also make sure that it provides a way for users to get its source.
206+
# For example, if your program is a web application, its interface could
207+
# display a "Source" link that leads users to an archive of the code. There are
208+
# many ways you could offer source, and different solutions will be better for
209+
# different programs; see section 13 for the specific requirements.
210+
#
211+
# You should also get your employer (if you work as a programmer) or school, if
212+
# any, to sign a "copyright disclaimer" for the program, if necessary. For more
213+
# information on this, and how to apply and follow the GNU AGPL, see
214+
# <https://www.gnu.org/licenses/>.
215+
180216
#----------------------------------------------------------------------
181217
# This file was generated by encode-bitmaps.py
182218
#

images.py

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6468,6 +6468,17 @@
64686468

64696469
#----------------------------------------------------------------------
64706470
e2j_24 = PyEmbeddedImage(
6471+
b'iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1B'
6472+
b'AACxjwv8YQUAAAAJcEhZcwAADsIAAA7CARUoSoAAAAE5SURBVEhL7dUxS4JBHMfxMygbTCjs'
6473+
b'DeQo1SQNRVBTNPYOImgRB3sDgjUVNQYthWAQLdES4ioN7dXg6CtoKJqivr/n7nnwSRSHexqk'
6474+
b'H3y4/3Pi3XN3eJqkk3Ltt2t9JzXhisSjFfhcRTTen61gPLKIK1v6S+8ZTGPFlv4y7JCPcIdy'
6475+
b'8GRTQh3nKKiDrOIJFdxiF1EGTVCFBtjDpDrIIZZxjEc8QEljCZto4hLa7r4U8WpLc4B7qC9M'
6476+
b'B1u2DKK3XoMGbqnDRd/btmV8Bb0/tDNc4xQX6iBzCF9A+cCMLc2Xa5VPTNkyPkEe+lBZgPZz'
6477+
b'HTvI4BnabyWLDbwET/EJYgkn0NvfQIeqnEB7rKU38I4adA5tvGEfXSgjXTPzrg2Tgw7wd2Zd'
6478+
b'+x+/ie5vT4nGG3ZVeMn4/CcnFGN+AL3WNWKCnLKoAAAAAElFTkSuQmCC')
6479+
6480+
#----------------------------------------------------------------------
6481+
j2e_24 = PyEmbeddedImage(
64716482
b'iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1B'
64726483
b'AACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEySURBVEhL3ZU9SgRBEEZ7xb/An8wL'
64736484
b'CF5ANBLFQC9g5A1MxEAXN9iNFg30BB5BEMyMzEQDRTBQzE0ETQRDA31fd83QLowO0r2BDx5V'
@@ -6591,3 +6602,36 @@
65916602
b'kAAKRoWQAVSIE4ACcQZYQAqc9puzAF0Q3GPrKMqWZwOaIEZcL8y+XWJ7XnbXDsW5yvy4s2wF'
65926603
b'XON+ABl2zBkFef63AAAAAElFTkSuQmCC')
65936604

6605+
#----------------------------------------------------------------------
6606+
java_24 = PyEmbeddedImage(
6607+
b'iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAABXUlEQVRIS7WTDY3CQBSEQQFI'
6608+
b'AAfggFMAKAAUAAoupwAc3DkACUUB4AAUcBJuPrLvst203d1AXzJptj8z8+a9djstV7dl/s4r'
6609+
b'AhOZK2IGXxFYivynLYGNiG/CsQ2BkUh3wlz4fbcAzqfCypEj1jiHnBlAvhA+hE/h+s4ZzFws'
6610+
b'Y13XQl/YxuLheWoHZE5Beha+UgacI0DWxMJgv4WBiyraRGoHEDED1pLNeQhD4RZTyBGAayIU'
6611+
b'wkGwTeI+M6lc2SYBYoHw4pz6bomIsxHX/hsxAdYSZxBZcb67A+KAstUt/d0pEZH93hOwSOjC'
6612+
b'yOmA9WXLSlGlCOCMqKwLooGEK+sKOc+KwMTzmCKAUwh9Z7VDDUVSBHDPj+aTIoZjOmisKgGI'
6613+
b'yPMkkHHoHMJwJfkGEFup6gTInWgQseoF37JJRmrENpv/V2MRQWBD9FcVAovMROg2qYNIqnmP'
6614+
b'Yx3ksVW8/QdjBEgZ1/PFyAAAAABJRU5ErkJggg==')
6615+
6616+
#----------------------------------------------------------------------
6617+
folder_zip_24 = PyEmbeddedImage(
6618+
b'iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAuklEQVRIS2NkoDFgpLH5DMPI'
6619+
b'AtH5XQYMLAzzGf4zGGALtv8M/wvfxJVPIDVI4UEkuqhrP1CzAz4DyLEE2YL/pLoOh/oD///+'
6620+
b'bXyTWHkAJE8LC0DmPngdV6aI1QKgBFEpCxikYB+jq0cXx/DBoLEAFv7oLqaaD2huwWgcEJ3n'
6621+
b'aBbJgzIO7gPDRYHosMGnkJHhwuvYMkOUokJkfrsDIzPzfCpYAirkFgJLhAUoFlDF5VgMIapg'
6622+
b'o8TyoW8BACFToBnuVIsBAAAAAElFTkSuQmCC')
6623+
6624+
#----------------------------------------------------------------------
6625+
restore_24 = PyEmbeddedImage(
6626+
b'iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAACEElEQVRIS9VVXU7CQBCeYes7'
6627+
b'JmB8lBOIJxBvAAcA7Q3kQYxP6pMRH/QG5ecA4AnEE8gN5NGIiX00gWWdWVrZ1nZrTIixSRPS'
6628+
b'nZ3vm++bGRDW/OCa88PfAxS8qwo4zj6CqoKCHV0xwgQUjkCq7tRtjW0qpFaQ927zG2J+DqCO'
6629+
b'7TLi3bRx0kyLSQQoeu0yCBjQJWbsE+UO4uJRzXEiQPoLJ1deQG4XlboIEvtKytqbezaKA30D'
6630+
b'0Myd2QPJUaZgkgGaaTIERG4prsJEpo3WZiZAsXdDF7Qso5ncqPlukyqwP8Ve+4FBFMDwrdGq'
6631+
b'mdGRCrb611WlkKXxiflBloFhoqVfs3ftP6raa/10GJ5FAAr9m/OlrnbjkupZ3YUOSeUmAhT7'
6632+
b'7SfWPs6Cg7XeDnh0zoZexg01qze9iFRAWj5z5wgpSy/u2cRkGuocfJtQkpJ5bsgUMRsNUxMq'
6633+
b'X0kVgusghPG03tpLAQAC/yKufySDRH3giUYhPArnyrqUpGMCBOfcTZHqvpCiIL83Od6qMQ94'
6634+
b'BoBKTB/9pA7a9q52pBBPdJa3tmnS5Z98K/TaA2JapdhIiy7tsjzcGbZJ5nNHzLwguU+TX4rH'
6635+
b'W7fp6jLeKTm/597XSeGDZoJWuNIrJU+vT9K45gSHvFMBAl1pXcNRhkzWnZX5j7bcmHhIC5C3'
6636+
b'a4XZ8kvdMs6h6iaxNgllAvzEZFvM/wf4BKTuAihlxtTWAAAAAElFTkSuQmCC')
6637+

images/e2j-24.png

7 Bytes
Loading

images/folder-zip-24.png

243 Bytes
Loading

images/j2e-24.png

413 Bytes
Loading

images/java-24.png

406 Bytes
Loading

0 commit comments

Comments
 (0)