* iPad Jailbreaking/Downgrading ** iPad2,3 or iPad3,2 *** We want to be on an untethered jailbreak, which seems to mean iOS 8.4.1. Some sources claim it is also noticably faster *** steps: 1. JB with Phoenix (via https://jailbreaks.app/legacy.html or 3uTools) 2. Follow instructions here to downgrade to 8.4.1: [[http://www.3u.com/news/articles/5841/untethered-downgrade-iphone-5-ipad234-ipad-mini-to-ios841-without-shsh][Untethered Downgrade iPhone 5/iPad 2,3,4/iPad mini to iOS 8.4.1 without SHSH]] - Use 3uTools v2.55, or it will hang! (as per https://twitter.com/3utools/status/1455107861172797449) - specifically, 2.58 was bugged at time of testing - can be downloaded from http://www.3u.com/update-log - for iPad3,2: Use [[https://github.com/LukeZGD/iOS-OTA-Downgrader/][iOS-OTA-Downgrader]] to enter kDFU instead of kDFUApp - Ideally this would work for the whole downgrade, but it was a bit buggy :( 3. install jailbreak (preferably daibutsu): - https://github.com/LukeZGD/iOS-OTA-Downgrader/wiki/Jailbreaking - used Sideloadly on MacOS - daibutsu did not support iPad2,3 so EtasonJB was used 4. ansible setup: 1. install "openssh" and "apt 0.7 strict" via cydia 2. =su= to root and =apt-get install sudo python vim= 3. edit =/etc/sudoers= to allow =wheel= 4. edit =/etc/group= to add mobile to =wheel= 5. install [[https://cydia.akemi.ai/?page/net.angelxwind.mikoto][mikoto]] to disable OTA update notifications (and some other things) * iPad lock/unlock via activator #+begin_src bash activator send libactivator.system.sleepbutton # lock activator send libactivator.lockscreen.dismiss # unlock activator send com.rpetrich.monocle # hide status bar #+end_src * Editing preferences: can use plutil from http://repo.bingner.com/ to convert from/to binary plist to restart the preferences daemon after editing a plist: #+begin_src bash launchctl kickstart -k system/com.apple.cfprefsd.xpc.daemon #+end_src * making a webclip: ** ~/Library/WebClips/whatever.webclip can place an Info.plist and icon then respring and it kind of just works - Can launch with =activator send com.apple.webapp= maybe? - only seems to work when it is already running (ie to switch to it, not launch it)