applying posterboard tweaks from zip

This commit is contained in:
leminlimez
2025-03-13 11:44:25 -04:00
parent 6ccac7bd09
commit 9bc7647a8e
8 changed files with 6651 additions and 140 deletions

View File

@@ -113,6 +113,7 @@ class SymbolicLink(BackupFile):
class AppBundle: class AppBundle:
identifier: str identifier: str
path: str path: str
container_content_class: str
version: str = 804 version: str = 804
@dataclass @dataclass
@@ -197,6 +198,7 @@ class Backup:
appInfo = { appInfo = {
"CFBundleIdentifier": app.identifier, "CFBundleIdentifier": app.identifier,
"CFBundleVersion": app.version, "CFBundleVersion": app.version,
"ContainerContentClass": app.container_content_class,
"Path": app.path "Path": app.path
} }
plist["Applications"][app.identifier] = appInfo plist["Applications"][app.identifier] = appInfo

View File

@@ -11,10 +11,11 @@ class FileToRestore:
self.group = group self.group = group
class AppBundleToRestore(FileToRestore): class AppBundleToRestore(FileToRestore):
def __init__(self, contents: str, bundle_id: str, bundle_version: str, bundle_path: str): def __init__(self, bundle_id: str, bundle_version: str, bundle_path: str, container_content_class: str):
super().__init__(contents=contents, restore_path=bundle_path, domain=f"AppDomain-{bundle_id}") super().__init__(contents=None, restore_path=bundle_path, domain=f"AppDomain-{bundle_id}")
self.bundle_id = bundle_id self.bundle_id = bundle_id
self.bundle_version = bundle_version self.bundle_version = bundle_version
self.container_content_class = container_content_class
def concat_exploit_file(file: FileToRestore, files_list: list[FileToRestore], last_domain: str) -> str: def concat_exploit_file(file: FileToRestore, files_list: list[FileToRestore], last_domain: str) -> str:
base_path = "/var/backup" base_path = "/var/backup"
@@ -101,6 +102,7 @@ def restore_files(files: list, reboot: bool = False, lockdown_client: LockdownCl
apps_list.append(backup.AppBundle( apps_list.append(backup.AppBundle(
identifier=file.bundle_id, identifier=file.bundle_id,
path=file.restore_path, path=file.restore_path,
container_content_class=file.container_content_class,
version=file.bundle_version version=file.bundle_version
)) ))
elif file.domain == None: elif file.domain == None:

View File

@@ -14,6 +14,7 @@ from devicemanagement.data_singleton import DataSingleton
from tweaks.tweaks import tweaks, FeatureFlagTweak, EligibilityTweak, AITweak, BasicPlistTweak, AdvancedPlistTweak, RdarFixTweak, NullifyFileTweak from tweaks.tweaks import tweaks, FeatureFlagTweak, EligibilityTweak, AITweak, BasicPlistTweak, AdvancedPlistTweak, RdarFixTweak, NullifyFileTweak
from tweaks.custom_gestalt_tweaks import CustomGestaltTweaks from tweaks.custom_gestalt_tweaks import CustomGestaltTweaks
from tweaks.posterboard_tweak import PosterboardTweak
from tweaks.basic_plist_locations import FileLocationsList, RiskyFileLocationsList from tweaks.basic_plist_locations import FileLocationsList, RiskyFileLocationsList
from Sparserestore.restore import restore_files, FileToRestore from Sparserestore.restore import restore_files, FileToRestore
@@ -300,6 +301,9 @@ class DeviceManager:
basic_plists_ownership: dict = {} basic_plists_ownership: dict = {}
files_data: dict = {} files_data: dict = {}
uses_domains: bool = False uses_domains: bool = False
# create the restore file list
files_to_restore: dict[FileToRestore] = [
]
# set the plist keys # set the plist keys
if not resetting: if not resetting:
@@ -320,6 +324,8 @@ class DeviceManager:
tweak.apply_tweak(files_data) tweak.apply_tweak(files_data)
if tweak.enabled and tweak.file_location.value.startswith("/var/mobile/"): if tweak.enabled and tweak.file_location.value.startswith("/var/mobile/"):
uses_domains = True uses_domains = True
elif isinstance(tweak, PosterboardTweak):
tweak.apply_tweak(files_to_restore=files_to_restore, lockdown=self.data_singleton.current_device.ld)
else: else:
if gestalt_plist != None: if gestalt_plist != None:
gestalt_plist = tweak.apply_tweak(gestalt_plist) gestalt_plist = tweak.apply_tweak(gestalt_plist)
@@ -340,9 +346,6 @@ class DeviceManager:
# Generate backup # Generate backup
update_label("Generating backup...") update_label("Generating backup...")
# create the restore file list
files_to_restore: dict[FileToRestore] = [
]
self.concat_file( self.concat_file(
contents=plistlib.dumps(flag_plist), contents=plistlib.dumps(flag_plist),
path="/var/preferences/FeatureFlags/Global.plist", path="/var/preferences/FeatureFlags/Global.plist",

View File

@@ -157,6 +157,10 @@ class MainWindow(QtWidgets.QMainWindow):
self.ui.spotlightChk.toggled.connect(self.on_spotlightChk_clicked) self.ui.spotlightChk.toggled.connect(self.on_spotlightChk_clicked)
self.ui.voiceControlChk.toggled.connect(self.on_voiceControlChk_clicked) self.ui.voiceControlChk.toggled.connect(self.on_voiceControlChk_clicked)
## POSTERBOARD PAGE ACTIONS
self.ui.modifyPosterboardsChk.toggled.connect(self.on_modifyPosterboardsChk_clicked)
self.ui.selectPosterboardBtn.clicked.connect(self.on_selectPosterboardBtn_clicked)
## RISKY OPTIONS PAGE ACTIONS ## RISKY OPTIONS PAGE ACTIONS
self.ui.disableOTAChk.toggled.connect(self.on_disableOTAChk_clicked) self.ui.disableOTAChk.toggled.connect(self.on_disableOTAChk_clicked)
self.ui.enableResolutionChk.toggled.connect(self.on_enableResolutionChk_clicked) self.ui.enableResolutionChk.toggled.connect(self.on_enableResolutionChk_clicked)
@@ -820,6 +824,20 @@ class MainWindow(QtWidgets.QMainWindow):
def on_voiceControlChk_clicked(self, checked: bool): def on_voiceControlChk_clicked(self, checked: bool):
tweaks["Daemons"].set_multiple_values(Daemon.VoiceControl.value, value=checked) tweaks["Daemons"].set_multiple_values(Daemon.VoiceControl.value, value=checked)
## PosterBoard Page
def on_modifyPosterboardsChk_clicked(self, checked: bool):
tweaks["PosterBoard"].set_enabled(checked)
self.ui.posterboardPageContent.setDisabled(not checked)
def on_selectPosterboardBtn_clicked(self):
selected_file, _ = QtWidgets.QFileDialog.getOpenFileName(self, "Select PosterBoard File", "", "Zip Files (*.zip)", options=QtWidgets.QFileDialog.ReadOnly)
if selected_file == "" or selected_file == None:
tweaks["PosterBoard"].zip_path = None
self.ui.currentPosterboardLbl.setText("None")
else:
# user selected zip, set it
tweaks["PosterBoard"].zip_path = selected_file
self.ui.currentPosterboardLbl.setText(selected_file)
## Risky Options Page ## Risky Options Page
def on_disableOTAChk_clicked(self, checked: bool): def on_disableOTAChk_clicked(self, checked: bool):
tweaks["DisableOTAFile"].set_enabled(checked) tweaks["DisableOTAFile"].set_enabled(checked)

6306
qt/mainwindow.ui.autosave Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -3,7 +3,7 @@
################################################################################ ################################################################################
## Form generated from reading UI file 'mainwindow.ui' ## Form generated from reading UI file 'mainwindow.ui'
## ##
## Created by: Qt User Interface Compiler version 6.6.3 ## Created by: Qt User Interface Compiler version 6.8.2
## ##
## WARNING! All changes made in this file will be lost when recompiling UI file! ## WARNING! All changes made in this file will be lost when recompiling UI file!
################################################################################ ################################################################################
@@ -191,7 +191,7 @@ class Ui_Nugget(object):
" border-bottom-right-radius: 0px;\n" " border-bottom-right-radius: 0px;\n"
"}") "}")
icon = QIcon() icon = QIcon()
icon.addFile(u":/icon/phone.svg", QSize(), QIcon.Normal, QIcon.Off) icon.addFile(u":/icon/phone.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.toolButton_6.setIcon(icon) self.toolButton_6.setIcon(icon)
self.horizontalLayout_15.addWidget(self.toolButton_6) self.horizontalLayout_15.addWidget(self.toolButton_6)
@@ -245,7 +245,7 @@ class Ui_Nugget(object):
" border-radius: 0px;\n" " border-radius: 0px;\n"
"}") "}")
icon1 = QIcon() icon1 = QIcon()
icon1.addFile(u":/icon/arrow-clockwise.svg", QSize(), QIcon.Normal, QIcon.Off) icon1.addFile(u":/icon/arrow-clockwise.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.refreshBtn.setIcon(icon1) self.refreshBtn.setIcon(icon1)
self.refreshBtn.setCheckable(False) self.refreshBtn.setCheckable(False)
self.refreshBtn.setToolButtonStyle(Qt.ToolButtonIconOnly) self.refreshBtn.setToolButtonStyle(Qt.ToolButtonIconOnly)
@@ -298,7 +298,7 @@ class Ui_Nugget(object):
sizePolicy2.setHeightForWidth(self.homePageBtn.sizePolicy().hasHeightForWidth()) sizePolicy2.setHeightForWidth(self.homePageBtn.sizePolicy().hasHeightForWidth())
self.homePageBtn.setSizePolicy(sizePolicy2) self.homePageBtn.setSizePolicy(sizePolicy2)
icon2 = QIcon() icon2 = QIcon()
icon2.addFile(u":/icon/house.svg", QSize(), QIcon.Normal, QIcon.Off) icon2.addFile(u":/icon/house.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.homePageBtn.setIcon(icon2) self.homePageBtn.setIcon(icon2)
self.homePageBtn.setCheckable(True) self.homePageBtn.setCheckable(True)
self.homePageBtn.setChecked(True) self.homePageBtn.setChecked(True)
@@ -313,7 +313,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.sidebarDiv1.setFrameShadow(QFrame.Plain) self.sidebarDiv1.setFrameShadow(QFrame.Plain)
self.sidebarDiv1.setFrameShape(QFrame.HLine) self.sidebarDiv1.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout.addWidget(self.sidebarDiv1) self.verticalLayout.addWidget(self.sidebarDiv1)
@@ -322,7 +322,7 @@ class Ui_Nugget(object):
sizePolicy2.setHeightForWidth(self.gestaltPageBtn.sizePolicy().hasHeightForWidth()) sizePolicy2.setHeightForWidth(self.gestaltPageBtn.sizePolicy().hasHeightForWidth())
self.gestaltPageBtn.setSizePolicy(sizePolicy2) self.gestaltPageBtn.setSizePolicy(sizePolicy2)
icon3 = QIcon() icon3 = QIcon()
icon3.addFile(u":/icon/iphone-island.svg", QSize(), QIcon.Normal, QIcon.Off) icon3.addFile(u":/icon/iphone-island.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.gestaltPageBtn.setIcon(icon3) self.gestaltPageBtn.setIcon(icon3)
self.gestaltPageBtn.setIconSize(QSize(24, 28)) self.gestaltPageBtn.setIconSize(QSize(24, 28))
self.gestaltPageBtn.setCheckable(True) self.gestaltPageBtn.setCheckable(True)
@@ -340,7 +340,7 @@ class Ui_Nugget(object):
font.setFamilies([u".AppleSystemUIFont"]) font.setFamilies([u".AppleSystemUIFont"])
self.featureFlagsPageBtn.setFont(font) self.featureFlagsPageBtn.setFont(font)
icon4 = QIcon() icon4 = QIcon()
icon4.addFile(u":/icon/flag.svg", QSize(), QIcon.Normal, QIcon.Off) icon4.addFile(u":/icon/flag.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.featureFlagsPageBtn.setIcon(icon4) self.featureFlagsPageBtn.setIcon(icon4)
self.featureFlagsPageBtn.setCheckable(True) self.featureFlagsPageBtn.setCheckable(True)
self.featureFlagsPageBtn.setAutoExclusive(True) self.featureFlagsPageBtn.setAutoExclusive(True)
@@ -353,7 +353,7 @@ class Ui_Nugget(object):
sizePolicy2.setHeightForWidth(self.euEnablerPageBtn.sizePolicy().hasHeightForWidth()) sizePolicy2.setHeightForWidth(self.euEnablerPageBtn.sizePolicy().hasHeightForWidth())
self.euEnablerPageBtn.setSizePolicy(sizePolicy2) self.euEnablerPageBtn.setSizePolicy(sizePolicy2)
icon5 = QIcon() icon5 = QIcon()
icon5.addFile(u":/icon/geo-alt.svg", QSize(), QIcon.Normal, QIcon.Off) icon5.addFile(u":/icon/geo-alt.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.euEnablerPageBtn.setIcon(icon5) self.euEnablerPageBtn.setIcon(icon5)
self.euEnablerPageBtn.setCheckable(True) self.euEnablerPageBtn.setCheckable(True)
self.euEnablerPageBtn.setAutoExclusive(True) self.euEnablerPageBtn.setAutoExclusive(True)
@@ -366,7 +366,7 @@ class Ui_Nugget(object):
sizePolicy2.setHeightForWidth(self.springboardOptionsPageBtn.sizePolicy().hasHeightForWidth()) sizePolicy2.setHeightForWidth(self.springboardOptionsPageBtn.sizePolicy().hasHeightForWidth())
self.springboardOptionsPageBtn.setSizePolicy(sizePolicy2) self.springboardOptionsPageBtn.setSizePolicy(sizePolicy2)
icon6 = QIcon() icon6 = QIcon()
icon6.addFile(u":/icon/app-indicator.svg", QSize(), QIcon.Normal, QIcon.Off) icon6.addFile(u":/icon/app-indicator.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.springboardOptionsPageBtn.setIcon(icon6) self.springboardOptionsPageBtn.setIcon(icon6)
self.springboardOptionsPageBtn.setCheckable(True) self.springboardOptionsPageBtn.setCheckable(True)
self.springboardOptionsPageBtn.setAutoExclusive(True) self.springboardOptionsPageBtn.setAutoExclusive(True)
@@ -379,7 +379,7 @@ class Ui_Nugget(object):
sizePolicy2.setHeightForWidth(self.internalOptionsPageBtn.sizePolicy().hasHeightForWidth()) sizePolicy2.setHeightForWidth(self.internalOptionsPageBtn.sizePolicy().hasHeightForWidth())
self.internalOptionsPageBtn.setSizePolicy(sizePolicy2) self.internalOptionsPageBtn.setSizePolicy(sizePolicy2)
icon7 = QIcon() icon7 = QIcon()
icon7.addFile(u":/icon/hdd.svg", QSize(), QIcon.Normal, QIcon.Off) icon7.addFile(u":/icon/hdd.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.internalOptionsPageBtn.setIcon(icon7) self.internalOptionsPageBtn.setIcon(icon7)
self.internalOptionsPageBtn.setCheckable(True) self.internalOptionsPageBtn.setCheckable(True)
self.internalOptionsPageBtn.setAutoExclusive(True) self.internalOptionsPageBtn.setAutoExclusive(True)
@@ -393,7 +393,7 @@ class Ui_Nugget(object):
sizePolicy2.setHeightForWidth(self.daemonsPageBtn.sizePolicy().hasHeightForWidth()) sizePolicy2.setHeightForWidth(self.daemonsPageBtn.sizePolicy().hasHeightForWidth())
self.daemonsPageBtn.setSizePolicy(sizePolicy2) self.daemonsPageBtn.setSizePolicy(sizePolicy2)
icon8 = QIcon() icon8 = QIcon()
icon8.addFile(u":/icon/toggles.svg", QSize(), QIcon.Normal, QIcon.Off) icon8.addFile(u":/icon/toggles.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.daemonsPageBtn.setIcon(icon8) self.daemonsPageBtn.setIcon(icon8)
self.daemonsPageBtn.setCheckable(True) self.daemonsPageBtn.setCheckable(True)
self.daemonsPageBtn.setAutoExclusive(True) self.daemonsPageBtn.setAutoExclusive(True)
@@ -401,13 +401,27 @@ class Ui_Nugget(object):
self.verticalLayout.addWidget(self.daemonsPageBtn) self.verticalLayout.addWidget(self.daemonsPageBtn)
self.posterboardPageBtn = QToolButton(self.sidebar)
self.posterboardPageBtn.setObjectName(u"posterboardPageBtn")
self.posterboardPageBtn.setEnabled(True)
sizePolicy2.setHeightForWidth(self.posterboardPageBtn.sizePolicy().hasHeightForWidth())
self.posterboardPageBtn.setSizePolicy(sizePolicy2)
icon9 = QIcon()
icon9.addFile(u":/icon/heart-fill.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.posterboardPageBtn.setIcon(icon9)
self.posterboardPageBtn.setCheckable(True)
self.posterboardPageBtn.setAutoExclusive(True)
self.posterboardPageBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
self.verticalLayout.addWidget(self.posterboardPageBtn)
self.advancedPageBtn = QToolButton(self.sidebar) self.advancedPageBtn = QToolButton(self.sidebar)
self.advancedPageBtn.setObjectName(u"advancedPageBtn") self.advancedPageBtn.setObjectName(u"advancedPageBtn")
sizePolicy2.setHeightForWidth(self.advancedPageBtn.sizePolicy().hasHeightForWidth()) sizePolicy2.setHeightForWidth(self.advancedPageBtn.sizePolicy().hasHeightForWidth())
self.advancedPageBtn.setSizePolicy(sizePolicy2) self.advancedPageBtn.setSizePolicy(sizePolicy2)
icon9 = QIcon() icon10 = QIcon()
icon9.addFile(u":/icon/star.svg", QSize(), QIcon.Normal, QIcon.Off) icon10.addFile(u":/icon/star.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.advancedPageBtn.setIcon(icon9) self.advancedPageBtn.setIcon(icon10)
self.advancedPageBtn.setCheckable(True) self.advancedPageBtn.setCheckable(True)
self.advancedPageBtn.setAutoExclusive(True) self.advancedPageBtn.setAutoExclusive(True)
self.advancedPageBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.advancedPageBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
@@ -420,7 +434,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.sidebarDiv2.setFrameShadow(QFrame.Plain) self.sidebarDiv2.setFrameShadow(QFrame.Plain)
self.sidebarDiv2.setFrameShape(QFrame.HLine) self.sidebarDiv2.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout.addWidget(self.sidebarDiv2) self.verticalLayout.addWidget(self.sidebarDiv2)
@@ -428,9 +442,9 @@ class Ui_Nugget(object):
self.applyPageBtn.setObjectName(u"applyPageBtn") self.applyPageBtn.setObjectName(u"applyPageBtn")
sizePolicy2.setHeightForWidth(self.applyPageBtn.sizePolicy().hasHeightForWidth()) sizePolicy2.setHeightForWidth(self.applyPageBtn.sizePolicy().hasHeightForWidth())
self.applyPageBtn.setSizePolicy(sizePolicy2) self.applyPageBtn.setSizePolicy(sizePolicy2)
icon10 = QIcon() icon11 = QIcon()
icon10.addFile(u":/icon/check-circle.svg", QSize(), QIcon.Normal, QIcon.Off) icon11.addFile(u":/icon/check-circle.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.applyPageBtn.setIcon(icon10) self.applyPageBtn.setIcon(icon11)
self.applyPageBtn.setCheckable(True) self.applyPageBtn.setCheckable(True)
self.applyPageBtn.setAutoExclusive(True) self.applyPageBtn.setAutoExclusive(True)
self.applyPageBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.applyPageBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
@@ -441,9 +455,9 @@ class Ui_Nugget(object):
self.settingsPageBtn.setObjectName(u"settingsPageBtn") self.settingsPageBtn.setObjectName(u"settingsPageBtn")
sizePolicy2.setHeightForWidth(self.settingsPageBtn.sizePolicy().hasHeightForWidth()) sizePolicy2.setHeightForWidth(self.settingsPageBtn.sizePolicy().hasHeightForWidth())
self.settingsPageBtn.setSizePolicy(sizePolicy2) self.settingsPageBtn.setSizePolicy(sizePolicy2)
icon11 = QIcon() icon12 = QIcon()
icon11.addFile(u":/icon/gear.svg", QSize(), QIcon.Normal, QIcon.Off) icon12.addFile(u":/icon/gear.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.settingsPageBtn.setIcon(icon11) self.settingsPageBtn.setIcon(icon12)
self.settingsPageBtn.setCheckable(True) self.settingsPageBtn.setCheckable(True)
self.settingsPageBtn.setAutoExclusive(True) self.settingsPageBtn.setAutoExclusive(True)
self.settingsPageBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.settingsPageBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
@@ -512,7 +526,7 @@ class Ui_Nugget(object):
self.phoneVersionLbl = QLabel(self.verticalWidget) self.phoneVersionLbl = QLabel(self.verticalWidget)
self.phoneVersionLbl.setObjectName(u"phoneVersionLbl") self.phoneVersionLbl.setObjectName(u"phoneVersionLbl")
self.phoneVersionLbl.setCursor(QCursor(Qt.PointingHandCursor)) self.phoneVersionLbl.setCursor(QCursor(Qt.CursorShape.PointingHandCursor))
self.phoneVersionLbl.setTextFormat(Qt.RichText) self.phoneVersionLbl.setTextFormat(Qt.RichText)
self.phoneVersionLbl.setOpenExternalLinks(False) self.phoneVersionLbl.setOpenExternalLinks(False)
@@ -534,7 +548,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_4.setFrameShadow(QFrame.Plain) self.line_4.setFrameShadow(QFrame.Plain)
self.line_4.setFrameShape(QFrame.HLine) self.line_4.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_2.addWidget(self.line_4) self.verticalLayout_2.addWidget(self.line_4)
@@ -554,9 +568,9 @@ class Ui_Nugget(object):
" background-color: transparent;\n" " background-color: transparent;\n"
" padding: 0px;\n" " padding: 0px;\n"
"}") "}")
icon12 = QIcon() icon13 = QIcon()
icon12.addFile(u":/credits/big_nugget.png", QSize(), QIcon.Normal, QIcon.Off) icon13.addFile(u":/credits/big_nugget.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.bigNuggetBtn.setIcon(icon12) self.bigNuggetBtn.setIcon(icon13)
self.bigNuggetBtn.setIconSize(QSize(150, 200)) self.bigNuggetBtn.setIconSize(QSize(150, 200))
self.horizontalLayout_27.addWidget(self.bigNuggetBtn) self.horizontalLayout_27.addWidget(self.bigNuggetBtn)
@@ -591,16 +605,16 @@ class Ui_Nugget(object):
self.horizontalLayout_8.setContentsMargins(-1, -1, 0, 0) self.horizontalLayout_8.setContentsMargins(-1, -1, 0, 0)
self.discordBtn = QToolButton(self.verticalWidget1) self.discordBtn = QToolButton(self.verticalWidget1)
self.discordBtn.setObjectName(u"discordBtn") self.discordBtn.setObjectName(u"discordBtn")
icon13 = QIcon() icon14 = QIcon()
icon13.addFile(u":/icon/discord.svg", QSize(), QIcon.Normal, QIcon.Off) icon14.addFile(u":/icon/discord.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.discordBtn.setIcon(icon13) self.discordBtn.setIcon(icon14)
self.discordBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.discordBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
self.horizontalLayout_8.addWidget(self.discordBtn) self.horizontalLayout_8.addWidget(self.discordBtn)
self.starOnGithubBtn = QToolButton(self.verticalWidget1) self.starOnGithubBtn = QToolButton(self.verticalWidget1)
self.starOnGithubBtn.setObjectName(u"starOnGithubBtn") self.starOnGithubBtn.setObjectName(u"starOnGithubBtn")
self.starOnGithubBtn.setIcon(icon9) self.starOnGithubBtn.setIcon(icon10)
self.starOnGithubBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.starOnGithubBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
self.horizontalLayout_8.addWidget(self.starOnGithubBtn) self.horizontalLayout_8.addWidget(self.starOnGithubBtn)
@@ -642,9 +656,9 @@ class Ui_Nugget(object):
self.leminBtn.setStyleSheet(u"QToolButton {\n" self.leminBtn.setStyleSheet(u"QToolButton {\n"
" background: none;\n" " background: none;\n"
"}") "}")
icon14 = QIcon() icon15 = QIcon()
icon14.addFile(u":/credits/LeminLimez.png", QSize(), QIcon.Normal, QIcon.Off) icon15.addFile(u":/credits/LeminLimez.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.leminBtn.setIcon(icon14) self.leminBtn.setIcon(icon15)
self.leminBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.leminBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
self.horizontalLayout_6.addWidget(self.leminBtn) self.horizontalLayout_6.addWidget(self.leminBtn)
@@ -662,9 +676,9 @@ class Ui_Nugget(object):
" background-color: #535353;\n" " background-color: #535353;\n"
" color: #FFFFFF;\n" " color: #FFFFFF;\n"
"}") "}")
icon15 = QIcon() icon16 = QIcon()
icon15.addFile(u":/icon/twitter.svg", QSize(), QIcon.Normal, QIcon.Off) icon16.addFile(u":/icon/twitter.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.leminTwitterBtn.setIcon(icon15) self.leminTwitterBtn.setIcon(icon16)
self.horizontalLayout_6.addWidget(self.leminTwitterBtn) self.horizontalLayout_6.addWidget(self.leminTwitterBtn)
@@ -681,9 +695,9 @@ class Ui_Nugget(object):
" background-color: #535353;\n" " background-color: #535353;\n"
" color: #FFFFFF;\n" " color: #FFFFFF;\n"
"}") "}")
icon16 = QIcon() icon17 = QIcon()
icon16.addFile(u":/icon/github.svg", QSize(), QIcon.Normal, QIcon.Off) icon17.addFile(u":/icon/github.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.leminGithubBtn.setIcon(icon16) self.leminGithubBtn.setIcon(icon17)
self.horizontalLayout_6.addWidget(self.leminGithubBtn) self.horizontalLayout_6.addWidget(self.leminGithubBtn)
@@ -701,9 +715,9 @@ class Ui_Nugget(object):
" background-color: #535353;\n" " background-color: #535353;\n"
" color: #FFFFFF;\n" " color: #FFFFFF;\n"
"}") "}")
icon17 = QIcon() icon18 = QIcon()
icon17.addFile(u":/icon/currency-dollar.svg", QSize(), QIcon.Normal, QIcon.Off) icon18.addFile(u":/icon/currency-dollar.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.leminKoFiBtn.setIcon(icon17) self.leminKoFiBtn.setIcon(icon18)
self.horizontalLayout_6.addWidget(self.leminKoFiBtn) self.horizontalLayout_6.addWidget(self.leminKoFiBtn)
@@ -935,7 +949,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_8.setFrameShadow(QFrame.Plain) self.line_8.setFrameShadow(QFrame.Plain)
self.line_8.setFrameShape(QFrame.HLine) self.line_8.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_4.addWidget(self.line_8) self.verticalLayout_4.addWidget(self.line_8)
@@ -1063,7 +1077,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_7.setFrameShadow(QFrame.Plain) self.line_7.setFrameShadow(QFrame.Plain)
self.line_7.setFrameShape(QFrame.HLine) self.line_7.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_8.addWidget(self.line_7) self.verticalLayout_8.addWidget(self.line_7)
@@ -1108,7 +1122,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_9.setFrameShadow(QFrame.Plain) self.line_9.setFrameShadow(QFrame.Plain)
self.line_9.setFrameShape(QFrame.HLine) self.line_9.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_8.addWidget(self.line_9) self.verticalLayout_8.addWidget(self.line_9)
@@ -1128,7 +1142,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_10.setFrameShadow(QFrame.Plain) self.line_10.setFrameShadow(QFrame.Plain)
self.line_10.setFrameShape(QFrame.HLine) self.line_10.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_8.addWidget(self.line_10) self.verticalLayout_8.addWidget(self.line_10)
@@ -1153,7 +1167,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_22.setFrameShadow(QFrame.Plain) self.line_22.setFrameShadow(QFrame.Plain)
self.line_22.setFrameShape(QFrame.HLine) self.line_22.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_8.addWidget(self.line_22) self.verticalLayout_8.addWidget(self.line_22)
@@ -1169,9 +1183,9 @@ class Ui_Nugget(object):
self.addGestaltKeyBtn = QToolButton(self.gestaltPageContent) self.addGestaltKeyBtn = QToolButton(self.gestaltPageContent)
self.addGestaltKeyBtn.setObjectName(u"addGestaltKeyBtn") self.addGestaltKeyBtn.setObjectName(u"addGestaltKeyBtn")
self.addGestaltKeyBtn.setEnabled(True) self.addGestaltKeyBtn.setEnabled(True)
icon18 = QIcon() icon19 = QIcon()
icon18.addFile(u":/icon/plus.svg", QSize(), QIcon.Normal, QIcon.Off) icon19.addFile(u":/icon/plus.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.addGestaltKeyBtn.setIcon(icon18) self.addGestaltKeyBtn.setIcon(icon19)
self.addGestaltKeyBtn.setCheckable(False) self.addGestaltKeyBtn.setCheckable(False)
self.addGestaltKeyBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.addGestaltKeyBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
@@ -1191,7 +1205,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_23.setFrameShadow(QFrame.Plain) self.line_23.setFrameShadow(QFrame.Plain)
self.line_23.setFrameShape(QFrame.HLine) self.line_23.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_8.addWidget(self.line_23) self.verticalLayout_8.addWidget(self.line_23)
@@ -1277,7 +1291,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_12.setFrameShadow(QFrame.Plain) self.line_12.setFrameShadow(QFrame.Plain)
self.line_12.setFrameShape(QFrame.HLine) self.line_12.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_14.addWidget(self.line_12) self.verticalLayout_14.addWidget(self.line_12)
@@ -1304,7 +1318,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.div.setFrameShadow(QFrame.Plain) self.div.setFrameShadow(QFrame.Plain)
self.div.setFrameShape(QFrame.HLine) self.div.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_13.addWidget(self.div) self.verticalLayout_13.addWidget(self.div)
@@ -1383,7 +1397,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_13.setFrameShadow(QFrame.Plain) self.line_13.setFrameShadow(QFrame.Plain)
self.line_13.setFrameShape(QFrame.HLine) self.line_13.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_17.addWidget(self.line_13) self.verticalLayout_17.addWidget(self.line_13)
@@ -1476,7 +1490,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_16.setFrameShadow(QFrame.Plain) self.line_16.setFrameShadow(QFrame.Plain)
self.line_16.setFrameShape(QFrame.HLine) self.line_16.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_36.addWidget(self.line_16) self.verticalLayout_36.addWidget(self.line_16)
@@ -1520,7 +1534,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_21.setFrameShadow(QFrame.Plain) self.line_21.setFrameShadow(QFrame.Plain)
self.line_21.setFrameShape(QFrame.HLine) self.line_21.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_34.addWidget(self.line_21) self.verticalLayout_34.addWidget(self.line_21)
@@ -1688,7 +1702,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_11.setFrameShadow(QFrame.Plain) self.line_11.setFrameShadow(QFrame.Plain)
self.line_11.setFrameShape(QFrame.HLine) self.line_11.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_10.addWidget(self.line_11) self.verticalLayout_10.addWidget(self.line_11)
@@ -1715,7 +1729,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_6.setFrameShadow(QFrame.Plain) self.line_6.setFrameShadow(QFrame.Plain)
self.line_6.setFrameShape(QFrame.HLine) self.line_6.setFrameShape(QFrame.Shape.HLine)
self._2.addWidget(self.line_6) self._2.addWidget(self.line_6)
@@ -1814,7 +1828,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_121.setFrameShadow(QFrame.Plain) self.line_121.setFrameShadow(QFrame.Plain)
self.line_121.setFrameShape(QFrame.HLine) self.line_121.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_141.addWidget(self.line_121) self.verticalLayout_141.addWidget(self.line_121)
@@ -1841,7 +1855,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.div1.setFrameShadow(QFrame.Plain) self.div1.setFrameShadow(QFrame.Plain)
self.div1.setFrameShape(QFrame.HLine) self.div1.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_131.addWidget(self.div1) self.verticalLayout_131.addWidget(self.div1)
@@ -1871,7 +1885,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_17.setFrameShadow(QFrame.Plain) self.line_17.setFrameShadow(QFrame.Plain)
self.line_17.setFrameShape(QFrame.HLine) self.line_17.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_131.addWidget(self.line_17) self.verticalLayout_131.addWidget(self.line_17)
@@ -1891,7 +1905,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_18.setFrameShadow(QFrame.Plain) self.line_18.setFrameShadow(QFrame.Plain)
self.line_18.setFrameShape(QFrame.HLine) self.line_18.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_131.addWidget(self.line_18) self.verticalLayout_131.addWidget(self.line_18)
@@ -1916,7 +1930,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_19.setFrameShadow(QFrame.Plain) self.line_19.setFrameShadow(QFrame.Plain)
self.line_19.setFrameShape(QFrame.HLine) self.line_19.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_131.addWidget(self.line_19) self.verticalLayout_131.addWidget(self.line_19)
@@ -1996,7 +2010,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_122.setFrameShadow(QFrame.Plain) self.line_122.setFrameShadow(QFrame.Plain)
self.line_122.setFrameShape(QFrame.HLine) self.line_122.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_142.addWidget(self.line_122) self.verticalLayout_142.addWidget(self.line_122)
@@ -2047,7 +2061,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_25.setFrameShadow(QFrame.Plain) self.line_25.setFrameShadow(QFrame.Plain)
self.line_25.setFrameShape(QFrame.HLine) self.line_25.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_132.addWidget(self.line_25) self.verticalLayout_132.addWidget(self.line_25)
@@ -2082,7 +2096,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_26.setFrameShadow(QFrame.Plain) self.line_26.setFrameShadow(QFrame.Plain)
self.line_26.setFrameShape(QFrame.HLine) self.line_26.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_132.addWidget(self.line_26) self.verticalLayout_132.addWidget(self.line_26)
@@ -2129,12 +2143,12 @@ class Ui_Nugget(object):
self.verticalLayout_142.addWidget(self.daemonsPageContent) self.verticalLayout_142.addWidget(self.daemonsPageContent)
self.pages.addWidget(self.daemonsPage) self.pages.addWidget(self.daemonsPage)
self.advancedOptionsPage = QWidget() self.posterboardPage = QWidget()
self.advancedOptionsPage.setObjectName(u"advancedOptionsPage") self.posterboardPage.setObjectName(u"posterboardPage")
self.verticalLayout_143 = QVBoxLayout(self.advancedOptionsPage) self.verticalLayout_143 = QVBoxLayout(self.posterboardPage)
self.verticalLayout_143.setObjectName(u"verticalLayout_143") self.verticalLayout_143.setObjectName(u"verticalLayout_143")
self.verticalLayout_143.setContentsMargins(0, 0, 0, 0) self.verticalLayout_143.setContentsMargins(0, 0, 0, 0)
self.horizontalWidget_53 = QWidget(self.advancedOptionsPage) self.horizontalWidget_53 = QWidget(self.posterboardPage)
self.horizontalWidget_53.setObjectName(u"horizontalWidget_53") self.horizontalWidget_53.setObjectName(u"horizontalWidget_53")
self.horizontalLayout_203 = QHBoxLayout(self.horizontalWidget_53) self.horizontalLayout_203 = QHBoxLayout(self.horizontalWidget_53)
self.horizontalLayout_203.setSpacing(10) self.horizontalLayout_203.setSpacing(10)
@@ -2142,7 +2156,7 @@ class Ui_Nugget(object):
self.horizontalLayout_203.setContentsMargins(0, 9, 0, 9) self.horizontalLayout_203.setContentsMargins(0, 9, 0, 9)
self.toolButton_103 = QToolButton(self.horizontalWidget_53) self.toolButton_103 = QToolButton(self.horizontalWidget_53)
self.toolButton_103.setObjectName(u"toolButton_103") self.toolButton_103.setObjectName(u"toolButton_103")
self.toolButton_103.setEnabled(False) self.toolButton_103.setEnabled(True)
self.toolButton_103.setStyleSheet(u"QToolButton {\n" self.toolButton_103.setStyleSheet(u"QToolButton {\n"
" icon-size: 24px;\n" " icon-size: 24px;\n"
" background-color: transparent;\n" " background-color: transparent;\n"
@@ -2160,15 +2174,16 @@ class Ui_Nugget(object):
self.verticalLayout_123.setSpacing(6) self.verticalLayout_123.setSpacing(6)
self.verticalLayout_123.setObjectName(u"verticalLayout_123") self.verticalLayout_123.setObjectName(u"verticalLayout_123")
self.verticalLayout_123.setContentsMargins(0, 0, 0, 0) self.verticalLayout_123.setContentsMargins(0, 0, 0, 0)
self.advancedOptionsLbl = QLabel(self.verticalWidget_43) self.posterboardLbl = QLabel(self.verticalWidget_43)
self.advancedOptionsLbl.setObjectName(u"advancedOptionsLbl") self.posterboardLbl.setObjectName(u"posterboardLbl")
self.advancedOptionsLbl.setFont(font1) self.posterboardLbl.setFont(font1)
self.verticalLayout_123.addWidget(self.advancedOptionsLbl) self.verticalLayout_123.addWidget(self.posterboardLbl)
self.verticalSpacer_181 = QSpacerItem(20, 16, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Fixed) self.modifyPosterboardsChk = QCheckBox(self.verticalWidget_43)
self.modifyPosterboardsChk.setObjectName(u"modifyPosterboardsChk")
self.verticalLayout_123.addItem(self.verticalSpacer_181) self.verticalLayout_123.addWidget(self.modifyPosterboardsChk)
self.horizontalLayout_203.addWidget(self.verticalWidget_43) self.horizontalLayout_203.addWidget(self.verticalWidget_43)
@@ -2180,26 +2195,122 @@ class Ui_Nugget(object):
self.verticalLayout_143.addWidget(self.horizontalWidget_53) self.verticalLayout_143.addWidget(self.horizontalWidget_53)
self.line_123 = QFrame(self.advancedOptionsPage) self.line_123 = QFrame(self.posterboardPage)
self.line_123.setObjectName(u"line_123") self.line_123.setObjectName(u"line_123")
self.line_123.setStyleSheet(u"QFrame {\n" self.line_123.setStyleSheet(u"QFrame {\n"
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_123.setFrameShadow(QFrame.Plain) self.line_123.setFrameShadow(QFrame.Plain)
self.line_123.setFrameShape(QFrame.HLine) self.line_123.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_143.addWidget(self.line_123) self.verticalLayout_143.addWidget(self.line_123)
self.posterboardPageContent = QWidget(self.posterboardPage)
self.posterboardPageContent.setObjectName(u"posterboardPageContent")
self.posterboardPageContent.setEnabled(False)
self.verticalLayout_133 = QVBoxLayout(self.posterboardPageContent)
self.verticalLayout_133.setObjectName(u"verticalLayout_133")
self.verticalLayout_133.setContentsMargins(0, 0, 0, 0)
self.regularDomainsLbl_2 = QLabel(self.posterboardPageContent)
self.regularDomainsLbl_2.setObjectName(u"regularDomainsLbl_2")
sizePolicy1.setHeightForWidth(self.regularDomainsLbl_2.sizePolicy().hasHeightForWidth())
self.regularDomainsLbl_2.setSizePolicy(sizePolicy1)
self.verticalLayout_133.addWidget(self.regularDomainsLbl_2)
self.currentPosterboardLbl = QLabel(self.posterboardPageContent)
self.currentPosterboardLbl.setObjectName(u"currentPosterboardLbl")
self.verticalLayout_133.addWidget(self.currentPosterboardLbl)
self.selectPosterboardBtn = QToolButton(self.posterboardPageContent)
self.selectPosterboardBtn.setObjectName(u"selectPosterboardBtn")
icon20 = QIcon()
icon20.addFile(u":/icon/file-earmark-zip.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.selectPosterboardBtn.setIcon(icon20)
self.selectPosterboardBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
self.verticalLayout_133.addWidget(self.selectPosterboardBtn)
self.verticalSpacer_22 = QSpacerItem(20, 40, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding)
self.verticalLayout_133.addItem(self.verticalSpacer_22)
self.verticalLayout_143.addWidget(self.posterboardPageContent)
self.pages.addWidget(self.posterboardPage)
self.advancedOptionsPage = QWidget()
self.advancedOptionsPage.setObjectName(u"advancedOptionsPage")
self.verticalLayout_144 = QVBoxLayout(self.advancedOptionsPage)
self.verticalLayout_144.setObjectName(u"verticalLayout_144")
self.verticalLayout_144.setContentsMargins(0, 0, 0, 0)
self.horizontalWidget_54 = QWidget(self.advancedOptionsPage)
self.horizontalWidget_54.setObjectName(u"horizontalWidget_54")
self.horizontalLayout_204 = QHBoxLayout(self.horizontalWidget_54)
self.horizontalLayout_204.setSpacing(10)
self.horizontalLayout_204.setObjectName(u"horizontalLayout_204")
self.horizontalLayout_204.setContentsMargins(0, 9, 0, 9)
self.toolButton_104 = QToolButton(self.horizontalWidget_54)
self.toolButton_104.setObjectName(u"toolButton_104")
self.toolButton_104.setEnabled(False)
self.toolButton_104.setStyleSheet(u"QToolButton {\n"
" icon-size: 24px;\n"
" background-color: transparent;\n"
" padding-left: 0px;\n"
" padding-right: 5px;\n"
" border-radius: 0px;\n"
"}")
self.toolButton_104.setIcon(icon10)
self.horizontalLayout_204.addWidget(self.toolButton_104)
self.verticalWidget_44 = QWidget(self.horizontalWidget_54)
self.verticalWidget_44.setObjectName(u"verticalWidget_44")
self.verticalLayout_124 = QVBoxLayout(self.verticalWidget_44)
self.verticalLayout_124.setSpacing(6)
self.verticalLayout_124.setObjectName(u"verticalLayout_124")
self.verticalLayout_124.setContentsMargins(0, 0, 0, 0)
self.advancedOptionsLbl = QLabel(self.verticalWidget_44)
self.advancedOptionsLbl.setObjectName(u"advancedOptionsLbl")
self.advancedOptionsLbl.setFont(font1)
self.verticalLayout_124.addWidget(self.advancedOptionsLbl)
self.verticalSpacer_181 = QSpacerItem(20, 16, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Fixed)
self.verticalLayout_124.addItem(self.verticalSpacer_181)
self.horizontalLayout_204.addWidget(self.verticalWidget_44)
self.horizontalSpacer_74 = QSpacerItem(40, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
self.horizontalLayout_204.addItem(self.horizontalSpacer_74)
self.verticalLayout_144.addWidget(self.horizontalWidget_54)
self.line_124 = QFrame(self.advancedOptionsPage)
self.line_124.setObjectName(u"line_124")
self.line_124.setStyleSheet(u"QFrame {\n"
" color: #414141;\n"
"}")
self.line_124.setFrameShadow(QFrame.Plain)
self.line_124.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_144.addWidget(self.line_124)
self.advancedOptionsPageContent = QWidget(self.advancedOptionsPage) self.advancedOptionsPageContent = QWidget(self.advancedOptionsPage)
self.advancedOptionsPageContent.setObjectName(u"advancedOptionsPageContent") self.advancedOptionsPageContent.setObjectName(u"advancedOptionsPageContent")
self.advancedOptionsPageContent.setEnabled(True) self.advancedOptionsPageContent.setEnabled(True)
self.verticalLayout_133 = QVBoxLayout(self.advancedOptionsPageContent) self.verticalLayout_134 = QVBoxLayout(self.advancedOptionsPageContent)
self.verticalLayout_133.setObjectName(u"verticalLayout_133") self.verticalLayout_134.setObjectName(u"verticalLayout_134")
self.verticalLayout_133.setContentsMargins(0, 0, 0, 0) self.verticalLayout_134.setContentsMargins(0, 0, 0, 0)
self.label_17 = QLabel(self.advancedOptionsPageContent) self.label_17 = QLabel(self.advancedOptionsPageContent)
self.label_17.setObjectName(u"label_17") self.label_17.setObjectName(u"label_17")
self.verticalLayout_133.addWidget(self.label_17) self.verticalLayout_134.addWidget(self.label_17)
self.line_191 = QFrame(self.advancedOptionsPageContent) self.line_191 = QFrame(self.advancedOptionsPageContent)
self.line_191.setObjectName(u"line_191") self.line_191.setObjectName(u"line_191")
@@ -2207,19 +2318,19 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_191.setFrameShadow(QFrame.Plain) self.line_191.setFrameShadow(QFrame.Plain)
self.line_191.setFrameShape(QFrame.HLine) self.line_191.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_133.addWidget(self.line_191) self.verticalLayout_134.addWidget(self.line_191)
self.disableOTAChk = QCheckBox(self.advancedOptionsPageContent) self.disableOTAChk = QCheckBox(self.advancedOptionsPageContent)
self.disableOTAChk.setObjectName(u"disableOTAChk") self.disableOTAChk.setObjectName(u"disableOTAChk")
self.verticalLayout_133.addWidget(self.disableOTAChk) self.verticalLayout_134.addWidget(self.disableOTAChk)
self.thermalmonitordChk = QCheckBox(self.advancedOptionsPageContent) self.thermalmonitordChk = QCheckBox(self.advancedOptionsPageContent)
self.thermalmonitordChk.setObjectName(u"thermalmonitordChk") self.thermalmonitordChk.setObjectName(u"thermalmonitordChk")
self.verticalLayout_133.addWidget(self.thermalmonitordChk) self.verticalLayout_134.addWidget(self.thermalmonitordChk)
self.line_181 = QFrame(self.advancedOptionsPageContent) self.line_181 = QFrame(self.advancedOptionsPageContent)
self.line_181.setObjectName(u"line_181") self.line_181.setObjectName(u"line_181")
@@ -2227,14 +2338,14 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_181.setFrameShadow(QFrame.Plain) self.line_181.setFrameShadow(QFrame.Plain)
self.line_181.setFrameShape(QFrame.HLine) self.line_181.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_133.addWidget(self.line_181) self.verticalLayout_134.addWidget(self.line_181)
self.enableResolutionChk = QCheckBox(self.advancedOptionsPageContent) self.enableResolutionChk = QCheckBox(self.advancedOptionsPageContent)
self.enableResolutionChk.setObjectName(u"enableResolutionChk") self.enableResolutionChk.setObjectName(u"enableResolutionChk")
self.verticalLayout_133.addWidget(self.enableResolutionChk) self.verticalLayout_134.addWidget(self.enableResolutionChk)
self.resChangerContent = QWidget(self.advancedOptionsPageContent) self.resChangerContent = QWidget(self.advancedOptionsPageContent)
self.resChangerContent.setObjectName(u"resChangerContent") self.resChangerContent.setObjectName(u"resChangerContent")
@@ -2310,14 +2421,14 @@ class Ui_Nugget(object):
self.verticalLayout_35.addLayout(self.resolutionContent) self.verticalLayout_35.addLayout(self.resolutionContent)
self.verticalLayout_133.addWidget(self.resChangerContent) self.verticalLayout_134.addWidget(self.resChangerContent)
self.verticalSpacer_63 = QSpacerItem(20, 40, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding) self.verticalSpacer_63 = QSpacerItem(20, 40, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding)
self.verticalLayout_133.addItem(self.verticalSpacer_63) self.verticalLayout_134.addItem(self.verticalSpacer_63)
self.verticalLayout_143.addWidget(self.advancedOptionsPageContent) self.verticalLayout_144.addWidget(self.advancedOptionsPageContent)
self.pages.addWidget(self.advancedOptionsPage) self.pages.addWidget(self.advancedOptionsPage)
self.applyPage = QWidget() self.applyPage = QWidget()
@@ -2346,7 +2457,7 @@ class Ui_Nugget(object):
" padding-right: 5px;\n" " padding-right: 5px;\n"
" border-radius: 0px;\n" " border-radius: 0px;\n"
"}") "}")
self.toolButton_18.setIcon(icon10) self.toolButton_18.setIcon(icon11)
self.horizontalLayout_33.addWidget(self.toolButton_18) self.horizontalLayout_33.addWidget(self.toolButton_18)
@@ -2383,7 +2494,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_5.setFrameShadow(QFrame.Plain) self.line_5.setFrameShadow(QFrame.Plain)
self.line_5.setFrameShape(QFrame.HLine) self.line_5.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_24.addWidget(self.line_5) self.verticalLayout_24.addWidget(self.line_5)
@@ -2408,9 +2519,9 @@ class Ui_Nugget(object):
self.horizontalLayout_7.setContentsMargins(-1, 10, -1, 0) self.horizontalLayout_7.setContentsMargins(-1, 10, -1, 0)
self.chooseGestaltBtn = QToolButton(self.verticalWidget2) self.chooseGestaltBtn = QToolButton(self.verticalWidget2)
self.chooseGestaltBtn.setObjectName(u"chooseGestaltBtn") self.chooseGestaltBtn.setObjectName(u"chooseGestaltBtn")
icon19 = QIcon() icon21 = QIcon()
icon19.addFile(u":/icon/folder.svg", QSize(), QIcon.Normal, QIcon.Off) icon21.addFile(u":/icon/folder.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.chooseGestaltBtn.setIcon(icon19) self.chooseGestaltBtn.setIcon(icon21)
self.chooseGestaltBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.chooseGestaltBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
self.horizontalLayout_7.addWidget(self.chooseGestaltBtn) self.horizontalLayout_7.addWidget(self.chooseGestaltBtn)
@@ -2425,7 +2536,7 @@ class Ui_Nugget(object):
self.horizontalLayout_17.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_17.setContentsMargins(0, 0, 0, 0)
self.applyTweaksBtn = QToolButton(self.horizontalWidget4) self.applyTweaksBtn = QToolButton(self.horizontalWidget4)
self.applyTweaksBtn.setObjectName(u"applyTweaksBtn") self.applyTweaksBtn.setObjectName(u"applyTweaksBtn")
self.applyTweaksBtn.setIcon(icon10) self.applyTweaksBtn.setIcon(icon11)
self.applyTweaksBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.applyTweaksBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
self.horizontalLayout_17.addWidget(self.applyTweaksBtn) self.horizontalLayout_17.addWidget(self.applyTweaksBtn)
@@ -2511,7 +2622,7 @@ class Ui_Nugget(object):
" padding-right: 5px;\n" " padding-right: 5px;\n"
" border-radius: 0px;\n" " border-radius: 0px;\n"
"}") "}")
self.toolButton_71.setIcon(icon11) self.toolButton_71.setIcon(icon12)
self.horizontalLayout_131.addWidget(self.toolButton_71) self.horizontalLayout_131.addWidget(self.toolButton_71)
@@ -2547,7 +2658,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_111.setFrameShadow(QFrame.Plain) self.line_111.setFrameShadow(QFrame.Plain)
self.line_111.setFrameShape(QFrame.HLine) self.line_111.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_101.addWidget(self.line_111) self.verticalLayout_101.addWidget(self.line_111)
@@ -2586,7 +2697,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_24.setFrameShadow(QFrame.Plain) self.line_24.setFrameShadow(QFrame.Plain)
self.line_24.setFrameShape(QFrame.HLine) self.line_24.setFrameShape(QFrame.Shape.HLine)
self._21.addWidget(self.line_24) self._21.addWidget(self.line_24)
@@ -2601,7 +2712,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.revertRdarLine.setFrameShadow(QFrame.Plain) self.revertRdarLine.setFrameShadow(QFrame.Plain)
self.revertRdarLine.setFrameShape(QFrame.HLine) self.revertRdarLine.setFrameShape(QFrame.Shape.HLine)
self._21.addWidget(self.revertRdarLine) self._21.addWidget(self.revertRdarLine)
@@ -2638,7 +2749,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_20.setFrameShadow(QFrame.Plain) self.line_20.setFrameShadow(QFrame.Plain)
self.line_20.setFrameShape(QFrame.HLine) self.line_20.setFrameShape(QFrame.Shape.HLine)
self._21.addWidget(self.line_20) self._21.addWidget(self.line_20)
@@ -2724,7 +2835,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_2.setFrameShadow(QFrame.Plain) self.line_2.setFrameShadow(QFrame.Plain)
self.line_2.setFrameShape(QFrame.HLine) self.line_2.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_28.addWidget(self.line_2) self.verticalLayout_28.addWidget(self.line_2)
@@ -2824,9 +2935,9 @@ class Ui_Nugget(object):
" padding-right: 5px;\n" " padding-right: 5px;\n"
" border-radius: 0px;\n" " border-radius: 0px;\n"
"}") "}")
icon20 = QIcon() icon22 = QIcon()
icon20.addFile(u":/icon/pencil.svg", QSize(), QIcon.Normal, QIcon.Off) icon22.addFile(u":/icon/pencil.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.toolButton_12.setIcon(icon20) self.toolButton_12.setIcon(icon22)
self.toolButton_12.setIconSize(QSize(25, 25)) self.toolButton_12.setIconSize(QSize(25, 25))
self.horizontalLayout_22.addWidget(self.toolButton_12) self.horizontalLayout_22.addWidget(self.toolButton_12)
@@ -2864,7 +2975,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_14.setFrameShadow(QFrame.Plain) self.line_14.setFrameShadow(QFrame.Plain)
self.line_14.setFrameShape(QFrame.HLine) self.line_14.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_20.addWidget(self.line_14) self.verticalLayout_20.addWidget(self.line_14)
@@ -2887,9 +2998,9 @@ class Ui_Nugget(object):
self.importOperationBtn = QToolButton(self.customOperationsPageContent) self.importOperationBtn = QToolButton(self.customOperationsPageContent)
self.importOperationBtn.setObjectName(u"importOperationBtn") self.importOperationBtn.setObjectName(u"importOperationBtn")
self.importOperationBtn.setEnabled(True) self.importOperationBtn.setEnabled(True)
icon21 = QIcon() icon23 = QIcon()
icon21.addFile(u":/icon/import.svg", QSize(), QIcon.Normal, QIcon.Off) icon23.addFile(u":/icon/import.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.importOperationBtn.setIcon(icon21) self.importOperationBtn.setIcon(icon23)
self.importOperationBtn.setIconSize(QSize(20, 20)) self.importOperationBtn.setIconSize(QSize(20, 20))
self.importOperationBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) self.importOperationBtn.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
@@ -2901,7 +3012,7 @@ class Ui_Nugget(object):
sizePolicy2.setHeightForWidth(self.newOperationBtn.sizePolicy().hasHeightForWidth()) sizePolicy2.setHeightForWidth(self.newOperationBtn.sizePolicy().hasHeightForWidth())
self.newOperationBtn.setSizePolicy(sizePolicy2) self.newOperationBtn.setSizePolicy(sizePolicy2)
self.newOperationBtn.setMinimumSize(QSize(0, 35)) self.newOperationBtn.setMinimumSize(QSize(0, 35))
self.newOperationBtn.setIcon(icon18) self.newOperationBtn.setIcon(icon19)
self.newOperationBtn.setIconSize(QSize(16, 16)) self.newOperationBtn.setIconSize(QSize(16, 16))
self.newOperationBtn.setCheckable(False) self.newOperationBtn.setCheckable(False)
self.newOperationBtn.setAutoExclusive(True) self.newOperationBtn.setAutoExclusive(True)
@@ -2948,9 +3059,9 @@ class Ui_Nugget(object):
" padding-right: 5px;\n" " padding-right: 5px;\n"
" border-radius: 0px;\n" " border-radius: 0px;\n"
"}") "}")
icon22 = QIcon() icon24 = QIcon()
icon22.addFile(u":/icon/compass.svg", QSize(), QIcon.Normal, QIcon.Off) icon24.addFile(u":/icon/compass.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
self.toolButton_16.setIcon(icon22) self.toolButton_16.setIcon(icon24)
self.horizontalLayout_31.addWidget(self.toolButton_16) self.horizontalLayout_31.addWidget(self.toolButton_16)
@@ -2987,7 +3098,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_3.setFrameShadow(QFrame.Plain) self.line_3.setFrameShadow(QFrame.Plain)
self.line_3.setFrameShape(QFrame.HLine) self.line_3.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_31.addWidget(self.line_3) self.verticalLayout_31.addWidget(self.line_3)
@@ -3060,15 +3171,13 @@ class Ui_Nugget(object):
self.importThemeFolderBtn = QToolButton(self.horizontalWidget7) self.importThemeFolderBtn = QToolButton(self.horizontalWidget7)
self.importThemeFolderBtn.setObjectName(u"importThemeFolderBtn") self.importThemeFolderBtn.setObjectName(u"importThemeFolderBtn")
self.importThemeFolderBtn.setIcon(icon19) self.importThemeFolderBtn.setIcon(icon21)
self.horizontalLayout_26.addWidget(self.importThemeFolderBtn) self.horizontalLayout_26.addWidget(self.importThemeFolderBtn)
self.importThemeZipBtn = QToolButton(self.horizontalWidget7) self.importThemeZipBtn = QToolButton(self.horizontalWidget7)
self.importThemeZipBtn.setObjectName(u"importThemeZipBtn") self.importThemeZipBtn.setObjectName(u"importThemeZipBtn")
icon23 = QIcon() self.importThemeZipBtn.setIcon(icon20)
icon23.addFile(u":/icon/file-earmark-zip.svg", QSize(), QIcon.Normal, QIcon.Off)
self.importThemeZipBtn.setIcon(icon23)
self.horizontalLayout_26.addWidget(self.importThemeZipBtn) self.horizontalLayout_26.addWidget(self.importThemeZipBtn)
@@ -3084,7 +3193,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line_15.setFrameShadow(QFrame.Plain) self.line_15.setFrameShadow(QFrame.Plain)
self.line_15.setFrameShape(QFrame.HLine) self.line_15.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_23.addWidget(self.line_15) self.verticalLayout_23.addWidget(self.line_15)
@@ -3105,7 +3214,7 @@ class Ui_Nugget(object):
" color: #414141;\n" " color: #414141;\n"
"}") "}")
self.line.setFrameShadow(QFrame.Plain) self.line.setFrameShadow(QFrame.Plain)
self.line.setFrameShape(QFrame.HLine) self.line.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_22.addWidget(self.line) self.verticalLayout_22.addWidget(self.line)
@@ -3180,30 +3289,32 @@ class Ui_Nugget(object):
def retranslateUi(self, Nugget): def retranslateUi(self, Nugget):
Nugget.setWindowTitle(QCoreApplication.translate("Nugget", u"Nugget", None)) Nugget.setWindowTitle(QCoreApplication.translate("Nugget", u"Nugget", None))
self.centralwidget.setProperty("cls", QCoreApplication.translate("Nugget", u"central", None)) self.centralwidget.setProperty(u"cls", QCoreApplication.translate("Nugget", u"central", None))
self.devicePicker.setPlaceholderText(QCoreApplication.translate("Nugget", u"None", None)) self.devicePicker.setPlaceholderText(QCoreApplication.translate("Nugget", u"None", None))
self.refreshBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"btn", None)) self.refreshBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"btn", None))
self.titleBar.setText(QCoreApplication.translate("Nugget", u"Nugget", None)) self.titleBar.setText(QCoreApplication.translate("Nugget", u"Nugget", None))
self.homePageBtn.setText(QCoreApplication.translate("Nugget", u" Home", None)) self.homePageBtn.setText(QCoreApplication.translate("Nugget", u" Home", None))
self.homePageBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None)) self.homePageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.gestaltPageBtn.setText(QCoreApplication.translate("Nugget", u" Mobile Gestalt", None)) self.gestaltPageBtn.setText(QCoreApplication.translate("Nugget", u" Mobile Gestalt", None))
self.gestaltPageBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None)) self.gestaltPageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.featureFlagsPageBtn.setText(QCoreApplication.translate("Nugget", u" Feature Flags", None)) self.featureFlagsPageBtn.setText(QCoreApplication.translate("Nugget", u" Feature Flags", None))
self.featureFlagsPageBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None)) self.featureFlagsPageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.euEnablerPageBtn.setText(QCoreApplication.translate("Nugget", u" Eligibility", None)) self.euEnablerPageBtn.setText(QCoreApplication.translate("Nugget", u" Eligibility", None))
self.euEnablerPageBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None)) self.euEnablerPageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.springboardOptionsPageBtn.setText(QCoreApplication.translate("Nugget", u" Springboard Options", None)) self.springboardOptionsPageBtn.setText(QCoreApplication.translate("Nugget", u" Springboard Options", None))
self.springboardOptionsPageBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None)) self.springboardOptionsPageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.internalOptionsPageBtn.setText(QCoreApplication.translate("Nugget", u" Internal Options", None)) self.internalOptionsPageBtn.setText(QCoreApplication.translate("Nugget", u" Internal Options", None))
self.internalOptionsPageBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None)) self.internalOptionsPageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.daemonsPageBtn.setText(QCoreApplication.translate("Nugget", u" Daemons", None)) self.daemonsPageBtn.setText(QCoreApplication.translate("Nugget", u" Daemons", None))
self.daemonsPageBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None)) self.daemonsPageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.posterboardPageBtn.setText(QCoreApplication.translate("Nugget", u" Posterboard", None))
self.posterboardPageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.advancedPageBtn.setText(QCoreApplication.translate("Nugget", u" Risky Options", None)) self.advancedPageBtn.setText(QCoreApplication.translate("Nugget", u" Risky Options", None))
self.advancedPageBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None)) self.advancedPageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.applyPageBtn.setText(QCoreApplication.translate("Nugget", u" Apply", None)) self.applyPageBtn.setText(QCoreApplication.translate("Nugget", u" Apply", None))
self.applyPageBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None)) self.applyPageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.settingsPageBtn.setText(QCoreApplication.translate("Nugget", u" Settings", None)) self.settingsPageBtn.setText(QCoreApplication.translate("Nugget", u" Settings", None))
self.settingsPageBtn.setProperty("cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None)) self.settingsPageBtn.setProperty(u"cls", QCoreApplication.translate("Nugget", u"sidebarBtn", None))
self.phoneNameLbl.setText(QCoreApplication.translate("Nugget", u"Phone", None)) self.phoneNameLbl.setText(QCoreApplication.translate("Nugget", u"Phone", None))
self.phoneVersionLbl.setText(QCoreApplication.translate("Nugget", u"<a style=\"text-decoration:none; color: white\" href=\"#\">Version</a>", None)) self.phoneVersionLbl.setText(QCoreApplication.translate("Nugget", u"<a style=\"text-decoration:none; color: white\" href=\"#\">Version</a>", None))
self.bigNuggetBtn.setText(QCoreApplication.translate("Nugget", u"...", None)) self.bigNuggetBtn.setText(QCoreApplication.translate("Nugget", u"...", None))
@@ -3475,6 +3586,11 @@ class Ui_Nugget(object):
self.passbookChk.setText(QCoreApplication.translate("Nugget", u"Disable Passbook", None)) self.passbookChk.setText(QCoreApplication.translate("Nugget", u"Disable Passbook", None))
self.spotlightChk.setText(QCoreApplication.translate("Nugget", u"Disable Spotlight", None)) self.spotlightChk.setText(QCoreApplication.translate("Nugget", u"Disable Spotlight", None))
self.voiceControlChk.setText(QCoreApplication.translate("Nugget", u"Disable Voice Control", None)) self.voiceControlChk.setText(QCoreApplication.translate("Nugget", u"Disable Voice Control", None))
self.posterboardLbl.setText(QCoreApplication.translate("Nugget", u"Posterboard", None))
self.modifyPosterboardsChk.setText(QCoreApplication.translate("Nugget", u"Modify", None))
self.regularDomainsLbl_2.setText(QCoreApplication.translate("Nugget", u"Current File:", None))
self.currentPosterboardLbl.setText(QCoreApplication.translate("Nugget", u"None", None))
self.selectPosterboardBtn.setText(QCoreApplication.translate("Nugget", u" Select File", None))
self.advancedOptionsLbl.setText(QCoreApplication.translate("Nugget", u"Risky Options", None)) self.advancedOptionsLbl.setText(QCoreApplication.translate("Nugget", u"Risky Options", None))
self.label_17.setText(QCoreApplication.translate("Nugget", u"Disclaimer:\n" self.label_17.setText(QCoreApplication.translate("Nugget", u"Disclaimer:\n"
"\n" "\n"

View File

@@ -0,0 +1,60 @@
from .tweak_classes import Tweak
from Sparserestore.restore import FileToRestore, AppBundleToRestore
import os
import zipfile
from tempfile import TemporaryDirectory
from pymobiledevice3.services.installation_proxy import InstallationProxyService
from pymobiledevice3.lockdown_service_provider import LockdownServiceProvider
class PosterboardTweak(Tweak):
def __init__(self):
super().__init__(key=None)
self.zip_path = None
self.bundle_id = "com.apple.PosterBoard"
def recursive_add(self, files_to_restore: list[FileToRestore], curr_path: str, restore_path: str = "", isAdding: bool = False):
for folder in sorted(os.listdir(curr_path)):
if folder.startswith('.'):
continue
if isAdding:
# if file then add it, otherwise recursively call again
if os.path.isfile(os.path.join(curr_path, folder)):
try:
with open(os.path.join(curr_path, folder), "rb") as in_file:
contents = in_file.read()
files_to_restore.append(FileToRestore(
contents=contents,
restore_path=f"{restore_path}/{folder}",
domain=f"AppDomain-{self.bundle_id}"
))
except IOError:
print(f"Failed to open file: {folder}") # TODO: Add QDebug equivalent
else:
self.recursive_add(files_to_restore, os.path.join(curr_path, folder), f"{restore_path}/{folder}", isAdding)
else:
# look for contents folder
if folder == "Container":
self.recursive_add(files_to_restore, os.path.join(curr_path, folder), restore_path="/", isAdding=True)
return
else:
self.recursive_add(files_to_restore, os.path.join(curr_path, folder), isAdding=False)
def apply_tweak(self, files_to_restore: list[FileToRestore], lockdown: LockdownServiceProvider):
# get the app container and bundle version
pbapp = InstallationProxyService(lockdown=lockdown).get_apps(application_type="System", calculate_sizes=False)["com.apple.PosterBoard"]
# unzip the file
if self.zip_path == None or not self.enabled:
return
with TemporaryDirectory() as output_dir:
with zipfile.ZipFile(self.zip_path, 'r') as zip_ref:
zip_ref.extractall(output_dir)
# first, add the files
self.recursive_add(files_to_restore, curr_path=output_dir)
# next, add the app bundle
# For UUID: pymobiledevice3 apps list -t System > apps.xml
files_to_restore.append(AppBundleToRestore(
bundle_id="com.apple.PosterBoard",
bundle_version=pbapp["CFBundleInfoDictionaryVersion"],
bundle_path=pbapp["Container"],
container_content_class="Data/Application"
))

View File

@@ -1,6 +1,7 @@
from devicemanagement.constants import Version from devicemanagement.constants import Version
from .tweak_classes import MobileGestaltTweak, MobileGestaltMultiTweak, MobileGestaltPickerTweak, FeatureFlagTweak, BasicPlistTweak, AdvancedPlistTweak, RdarFixTweak, NullifyFileTweak from .tweak_classes import MobileGestaltTweak, MobileGestaltMultiTweak, MobileGestaltPickerTweak, FeatureFlagTweak, BasicPlistTweak, AdvancedPlistTweak, RdarFixTweak, NullifyFileTweak
from .eligibility_tweak import EligibilityTweak, AITweak from .eligibility_tweak import EligibilityTweak, AITweak
from .posterboard_tweak import PosterboardTweak
from .basic_plist_locations import FileLocation from .basic_plist_locations import FileLocation
tweaks = { tweaks = {
@@ -259,6 +260,9 @@ tweaks = {
), ),
"ClearScreenTimeAgentPlist": NullifyFileTweak(FileLocation.screentime), "ClearScreenTimeAgentPlist": NullifyFileTweak(FileLocation.screentime),
## PosterBoard
"PosterBoard": PosterboardTweak(),
## Risky Options ## Risky Options
"DisableOTAFile": AdvancedPlistTweak( "DisableOTAFile": AdvancedPlistTweak(
FileLocation.ota, FileLocation.ota,