Apps would be consistently installed to a sandbox identified by their bundle identifier (which is typically domain-based).
This is effectively what already happens on iOS.
App certification/verification would be done using exactly the same certs we use for domains (possibly co-signed by the store as part of their curation/verification/drm process) to ensure the store can only install what the developer provides, and what the store curators permit to be distributed through their store.
I don't think changing 30% to some other arbitrary figure solves anything. For me the biggest problem is Apple deciding what/whose apps ios (and macos, given the recent code signing requirements coming with mac silicon...) users are permitted to use.
Thats FUD. The release notes even address it "This new behavior doesn’t change the long-established policy that our users and developers can run arbitrary code on their Macs, and is designed to simplify the execution policies on Apple silicon Mac computers and enable the system to better detect code modifications."
You CANNOT run an unsigned binary on silicon, but I totally understand your confusion given their statement.
Edit: To clarify further, you cant run an ARM binary - x86 apps going through rosetta (currently) work as they used to (right click and you can open).
I am a proponent for code-signing, I just don't see why I cant use my own cert (such as that issued for a domain name) instead of an apple issued one - if it is solely about preventing code tampering, as they state...
The actual reason behind a central issuance of certs is DRM. If apps NEED to run through this gatekeeper, then the gatekeeper can phone home to get a license for you to run the app (or not). This will enable the revocation of a cert for distribution of malware, but will also enable revocation for other reasons - like a dev breaching the terms of their agreement with apple (whatever those may be).
That is what the issue is. There is literally no benefit in this unless apple can revoke certs, because there is nothing to stop a dev signing a malicious app!
I don’t see what this has to do with elf binaries. I mentioned arm binaries because that is what all upcoming apple “computers” will be.
> New in macOS 11 on Apple silicon Mac computers, and starting in the next macOS Big Sur 11 beta, the operating system will enforce that any executable must be signed with a valid signature before it’s allowed to run. There isn’t a specific identity requirement for this signature: a simple ad-hoc signature issued locally is sufficient, which includes signatures which are now generated automatically by the linker.
An "ad-hoc signature" is Apple jargon for a code signature without a certificate (so really just a set of hashes, no actual public-key signature); I called it self-signed since it's a more familiar term. By "there isn't a specific identity requirement" they mean it's not required to be Apple-signed.
Of course, macOS on Apple silicon will still require an Apple signature by default like it does on Intel, but you'll be able to disable that like you can on Intel.
You can’t distribute ad-hoc signed binaries. You can’t disable/bypass the gatekeeper on silicon.
If you have access to a transition kit you can see this for yourself.
`codesign -s - my_binary`, though that would rarely be necessary unless you patched it in a hex editor or something, since otherwise it would have been automatically ad-hoc signed when it was linked.
> You can’t distribute ad-hoc signed binaries.
They have the same distribution restrictions on Apple silicon as on Intel. You can, but it requires the person running the binary to either (a) run it in a terminal, (b) right-click Open, or (c) use spctl --master-disable to disable Gatekeeper entirely.
You CANNOT bypass gatekeeper on silicon - that is the whole point - otherwise there is no difference to the current behaviour.
Yes, you can. The only difference between Intel and Apple silicon in this regard is that binaries that literally have no code signature (as opposed to a self-signed one) will not run. It's a technical cleanup measure that removes a special case (executable with no associated signature blob), not a lockdown measure. It's not intended to make a difference from the user's point of view.
I see why you mentioned ELF, now.
Ill descend from my soapbox on that matter, then. Thank you for correcting me. :D
https://developer.apple.com/app-store/review/guidelines/
If they're not UGC then they're violating rule 1.1 -
> Apps should not include content that is offensive, insensitive, upsetting, intended to disgust, in exceptionally poor taste, or just plain creepy.
HBO certainly are not UGC, yet the HBO app was allowed nudity as a prelude to people having sex many times in Game of Thrones. Rule 1.1.4 -
> Overtly sexual or pornographic material, defined by Webster’s Dictionary as "explicit descriptions or displays of sexual organs or activities intended to stimulate erotic rather than aesthetic or emotional feelings
I suppose the key here lies in the last part (emph.), which is why most reader-apps are allowed, including GoT.
Feels like this is (should be?) as much about USER freedom and choice as it is about DEVELOPERS. While cost precipitated the current set of issues, it's really about the role Apple plays in arbitrarily mediating between customer and service.
So basically, you would strike: log-in, payment, content, etc, but keep the other stuff. Doesn't solve all problems but would be incrementally better.
Each "app store" would have it's own ability to set those policies for apps it carries - but (crucially) users would have the OPTION.
For users that don't care - stick with Apple.
> For users that don't care - stick with Apple.
As an Apple user, to me this is the opposite of having "options".
As an individual, I cannot fight any remotely large company let alone FB or Google. If they hold my messaging or email hostage, I would be forced to use their secondary iOS app stores with their custom rules, etc.
As a group, all Apple users, we have a unified choice. It puts the power dynamic back into users hands. Users that don't like the choices of Apple should buy other phones, and if enough people buy other phones the Apple ecosystem will change with the market.
Users that do want to be part of the collective bargaining power of the Apple ecosystem, like me, should have that choice!
One very important question to ask is, why do users spend more money on iOS apps than on Android apps[1]? For 6 years, while I owned an Android I never made a single purchase. My last 4 years on iOS, I buy apps, I start subscriptions, I use Apple Pay, etc. I can tell you it is entirely because of my trust in Apple as a company. A large part of that trust is earned through the regulations they put on developers and their emphasis on my privacy.
I can guarantee you, as soon as Apple is no longer able to earn that trust, the entire ecosystem will be significantly less lucrative for developers and this whole exercise will have been in vain, hurting everyone (users and developers).
But I dont follow... install only their app from that store. Same sandbox, etc applies. Let them require same security.
As to revenue... that might have to so with customer set? If it were only Apple, a lot less people would own smartphones....
If FB has access to execute code on my phone, without any guardrails, what stops them from requiring location or microphone services be on at all times?
As an informed user I can push back, even boycott, until my friend hosts an event and I need to see the invite.
What I really want is a collective bargaining power agency (i.e. kinda like a customers' union) that imposes rules that are in my best interest onto service providers. Frankly, this need exists because the government isn't doing a good enough job of it. I am happy to pay extra to this agency for this increased bargaining power.
It just so happens that Apple has positioned itself in my life as that collective bargaining power agency. Does it make life harder for service providers? Yes. If I was a service provider would I fight this friction? Yes. However, unlike anti-competitive monopoly behavior that hurts customers, the collective bargaining power is used in the benefit of the customer (i.e. me).
HN fetishises root access as if it's some kind of magic panacea, but in reality most users don't care about root access at all - they want apps that work, they have zero interest in tinkering with software for its own sake, and root access will not make apps more reliable or more secure.
The main problems with the App Store are the cost (30% is egregious), the distance between Apple's claims about privacy and simple exploits (see also Zoom and TikTok), the fact that search is user hostile, and the fact that Apple forces its payment system on app developers for no good reason.
Fix all of those and cut the tax to 10% and Apple can continue to have its semi-monopoly.