Skip to content

Instantly share code, notes, and snippets.

@BenjyWiener
Last active March 21, 2019 16:00
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save BenjyWiener/d9883042b95a818e6429 to your computer and use it in GitHub Desktop.
Save BenjyWiener/d9883042b95a818e6429 to your computer and use it in GitHub Desktop.
Pydia Installer + Add Pydia Button
# coding: utf-8
from UIKit import *
def main():
rootVC = UIApplication.sharedApplication().keyWindow().rootViewController()
tabVC = rootVC.detailViewController()
methods = [pydiaButtonPressed]
PydiaItemController = create_objc_class('PydiaItemController', NSObject, methods = methods)
pydiaItemController = PydiaItemController.new()
try:
PydiaBarButtonItem = ObjCClass('PydiaBarButtonItem')
except ValueError:
PydiaBarButtonItem = create_objc_class('PydiaBarButtonItem', UIBarButtonItem)
pydiaItem = PydiaBarButtonItem.alloc().initWithImage_style_target_action_(ns(ui.Image.named('iob:ios7_cart_outline_32')), 0, pydiaItemController, sel('pydiaButtonPressed'))
leftBarButtonItems = list(tabVC.persistentLeftBarButtonItems())
leftBarButtonItems.append(pydiaItem)
tabVC.persistentLeftBarButtonItems = ns(leftBarButtonItems)
tabVC.reloadBarButtonItemsForSelectedTab()
def pydiaButtonPressed(_self, _cmd):
from PydiaKit import launch
launch()
if __name__ == '__main__':
main()
# coding: utf-8
def main():
import requests
import os
PydiaKit_content = requests.request('GET', 'https://dl.dropboxusercontent.com/s/ja5fqva5jkgz6l0/PydiaKit.py?dl=0').content
PydiaPackage_content = requests.request('GET', 'https://dl.dropboxusercontent.com/s/l0zaw0p865hsqrt/Pydia_Package.py?dl=0').content
PydiaSources_content = requests.request('GET', 'https://dl.dropboxusercontent.com/s/6umbih2wep3puzv/Pydia_Sources.py?dl=0').content
Pydia_UI_Main_content = requests.request('GET', 'https://dl.dropboxusercontent.com/s/uvgotwa7717nm9v/Pydia_UI.py?dl=0').content
site_packages = os.path.expanduser('~/Documents/site-packages/')
open(site_packages + 'PydiaKit.py', 'w').write(PydiaKit_content)
for folder in ['Package Support', 'Pydia Sources', 'Pydia Supporting Files', 'Pydia Supporting Files/Pydia UI', 'Pydia User Info']:
dir = site_packages + 'Pydia/' + folder
if not os.path.exists(dir):
os.makedirs(dir)
open(site_packages + 'Pydia/Pydia Supporting Files/Pydia_Package.py', 'w').write(PydiaPackage_content)
open(site_packages + 'Pydia/Pydia Supporting Files/Pydia_Sources.py', 'w').write(PydiaSources_content)
open(site_packages + 'Pydia/Pydia Supporting Files/Pydia UI/Pydia_UI.py', 'w').write(Pydia_UI_Main_content)
if not os.path.exists(site_packages + 'Pydia/Pydia User Info/Sources.json'):
open(site_packages + 'Pydia/Pydia User Info/Sources.json', 'w').write('{"com.Pydia.Source": "https://bit.ly/Pydia"}')
if not os.path.exists(site_packages + 'Pydia/Pydia User Info/Installed Packages.json'):
open(site_packages + 'Pydia/Pydia User Info/Installed Packages.json', 'w').write('{}')
if __name__ == '__main__':
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment