Jay Freeman (saurik) Profile picture
I developed Cydia for jailbroken iOS devices and am now (theoretically) in charge of technology for @OrchidProtocol; I am also a local politician in California.
4 subscribers
Aug 2, 2021 5 tweets 2 min read
@mjg59 I feel this; I don't know if I would use the term "indictment", though... I think the playing field has shifted enough that it is actually *more difficult* to explain how Free Software helps to someone who didn't live through the 80s and 90s... even if it is *more* important now. @mjg59 The world we live in now is one where even most *open source* software is being made by large companies with the resources to simply avoid or replace GPL code (like clang/gcc) to run on locked down platforms (which GPL3 came too late to save, if that was even ever a possibility).
Aug 16, 2020 23 tweets 9 min read
A few days ago, Epic Games filed a lawsuit against Apple, challenging the idea that the Apple App Store--with its high fees and limitation on promotion of anything that isn't an Apple product or payment mechanism--is the only way to distribute apps on iOS. cdn2.unrealengine.com/apple-complain… To anyone who responds "Apple isn't a monopoly": the actual test of "monopolization" is merely having a "significant and durable market power", not a 100% share; anti-competitive behaviors--such as "tying" and "refusal to deal"--can clearly apply to Apple. ftc.gov/tips-advice/co…
Nov 19, 2019 12 tweets 3 min read
About two weeks ago, Apple made a change to their provisioning service to require a different authentication scheme for "free" Apple accounts (they return an error that mentions upgrading to "Xcode 7.3"); this broke Cydia Impactor for users without a paid Apple Developer account. When Apple did this, I'd just arrived in Florida for a wedding (one of a dear friend and where I was a groomsman); even so, I stayed up ludicrously late the night before the ceremony rehearsal to understand the issue and try to triage how much it would hurt to fix Cydia Impactor.
Sep 24, 2019 4 tweets 2 min read
I just spent an hour using an iPhone to take videos of iPhones taking video of an iPhone (with a fifth iPhone to take a video of the rest) to verify this: the iPhone 11 Pro Max on iOS 13 has an additional 50-66ms of latency in its camera preview vs. the iPhone XS Max on iOS 12.4. I also ran isolated trials of each phone in the same sensor position of the test phone to mitigate any rolling shutter effects, tested with both the 1x and 2x lenses, used exposure locking to isolate auto focus, and turned the screens off and on to break up frame synchronization.
Apr 19, 2019 5 tweets 1 min read
FWIW, it is entirely possible that someone, using techniques I find "sloppy"--the kind of stuff that led to the iOS 11 stability issues (lots of kernel data patches to do stuff like mark processes as being actively debugged) can make A12 work easily--_I_ have no interest in that. This community operates under a broken concept of software that "anyone can update anything": no, if you are able to update something like Substrate, you can also rewrite it from scratch: jailbreaks and code injection tools are the result of hard research, not engineering effort.
Apr 19, 2019 6 tweets 2 min read
So far, I've only had a few days to work on A12 Substrate (something I couldn't even start doing until a few weeks ago, when I was given the first jailbreak build useful for testing with). I do not understand why anyone thinks I am able to spend all of my time on this anymore :(. For A12, it (surprisingly to me) turned out Pointer Authentication Codes were not a problem; however, Apple built a new layer of codesign--"physical map codesign" (pmap_cs_*, largely missing from the XNU codebase)--as part of their "Page Protection Layer". newosxbook.com/articles/CasaD…
Apr 19, 2019 4 tweets 1 min read
Anyone claiming "substrated handles kernel patches" has no clue what they are talking about: the reason I disagreed with jailbreakd was because it entrenched specific and _pervasive_ kernel data patches to do something as basic as code injection; Substrate doesn't do any of that. When substrated starts, it gives itself TF_PLATFORM; after that, everything it does is "mach virtual memory sleight of hand". The exact same architecture is used by new versions of Substrate on old versions of iOS: the daemon is largely required to act as a vnode cache for hooks.
Apr 19, 2019 5 tweets 1 min read
It maybe should be made more clear that, while I was actively killing myself--stealing time and racking up stress--to build a stable iOS 11 jailbreak for two or three months at the end of 2017 and beginning of 2018, I finally quit entirely in early 2018 due to developer toxicity. It was in this moment that I realized "there is no benefit to any of this--only pain--and it requires me to constantly have to interact with people who are frankly _horrible_"; I was particularly proud of myself for blowing off all of the toxic jailbreak people at DEFCON 2018 :|.
Apr 19, 2019 4 tweets 1 min read
Due to a largely-unrelated conversation I had last week, I actually looked at my Twitter notifications. What I saw: a large number of spectators arguing, in language foul enough that the Twitter app has to give me "may contain offensive content" warnings, about what I'm doing :/. It really sucks that I can't give a talk at a hackathon without the organizers getting harassed, or be on a panel for an unrelated topic (as I was today) without the moderator getting dogpiled with "jailbreak ETA?", or even comment on a forum without the thread being hijacked :(.