fix: plist changing operations (#3)

lol, this is so fucking stupid, i was trying to fix #3 but also found that `Plist.change()` was being used incorrectly EVERYWHERE in cyan, LMAO

slight oversight since i forgot i had even changed its usage, but at least it's fixed now
This commit is contained in:
zx
2024-09-15 15:16:43 -04:00
parent e315454544
commit 8fe0fc2984
2 changed files with 7 additions and 7 deletions

View File

@@ -86,6 +86,6 @@ def main(parser: ArgumentParser) -> None:
if os.path.isdir(args.o): if os.path.isdir(args.o):
shutil.rmtree(args.o) shutil.rmtree(args.o)
shutil.move(app_path, args.o) shutil.move(app.path, args.o)
print(f"[*] generated app at {args.o}") print(f"[*] generated app at {args.o}")

View File

@@ -44,6 +44,7 @@ class Plist:
try: try:
if all(self[key] == val for key in keys): if all(self[key] == val for key in keys):
return False return False
raise KeyError # lets pretend this was always here..
except KeyError: except KeyError:
for key in keys: for key in keys:
self[key] = val self[key] = val
@@ -67,15 +68,14 @@ class Plist:
print("[?] documents support was already enabled") print("[?] documents support was already enabled")
def change_name(self, name: str) -> None: def change_name(self, name: str) -> None:
if self.change("CFBundleName", "CFBundleDisplayName", name): if self.change(name, "CFBundleName", "CFBundleDisplayName"):
print(f"[*] changed name to \"{name}\"") print(f"[*] changed name to \"{name}\"")
changed = 0 changed = 0
for lproj in glob(f"{self.app_path}/*.lproj"): for lproj in glob(f"{self.app_path}/*.lproj"):
try: try:
pl = Plist(f"{lproj}/InfoPlist.strings", None, False) pl = Plist(f"{lproj}/InfoPlist.strings", None, False)
pl["CFBundleDisplayName"] = name pl.change(name, "CFBundleName", "CFBundleDisplayName")
pl["CFBundleName"] = name
pl.save() pl.save()
changed += 1 changed += 1
except Exception: except Exception:
@@ -87,7 +87,7 @@ class Plist:
print(f"[?] name was already \"{name}\"") print(f"[?] name was already \"{name}\"")
def change_version(self, version: str) -> None: def change_version(self, version: str) -> None:
if self.change("CFBundleVersion", "CFBundleShortVersionString", version): if self.change(version, "CFBundleVersion", "CFBundleShortVersionString"):
print(f"[*] changed version to \"{version}\"") print(f"[*] changed version to \"{version}\"")
else: else:
print(f"[?] version was already \"{version}\"") print(f"[?] version was already \"{version}\"")
@@ -95,7 +95,7 @@ class Plist:
def change_bundle_id(self, bundle_id: str) -> None: def change_bundle_id(self, bundle_id: str) -> None:
orig = self["CFBundleIdentifier"] orig = self["CFBundleIdentifier"]
if self.change("CFBundleIdentifier", bundle_id): if self.change(bundle_id, "CFBundleIdentifier"):
print(f"[*] changed bundle id to \"{bundle_id}\"") print(f"[*] changed bundle id to \"{bundle_id}\"")
changed = 0 changed = 0
@@ -116,7 +116,7 @@ class Plist:
print(f"[?] bundle id was already \"{bundle_id}\"") print(f"[?] bundle id was already \"{bundle_id}\"")
def change_minimum_version(self, minimum: str) -> None: def change_minimum_version(self, minimum: str) -> None:
if self.change("MinimumOSVersion", minimum): if self.change(minimum, "MinimumOSVersion"):
print(f"[*] changed minimum version to \"{minimum}\"") print(f"[*] changed minimum version to \"{minimum}\"")
else: else:
print(f"[?] minimum version was already \"{minimum}\"") print(f"[?] minimum version was already \"{minimum}\"")