What I want to do is not have to have a unified build system for multiple platforms and ABIs without any problem, but for some reason, to target anything apple, I have to use a physical apple machine.
It's absolutely abusing market position, because it ends up being that in my profession, you end up purchasing mac computers for the whole office, because then you can target all platforms without any fuss. Not because the hardware or software has any merits, but because they artificially restrict these use cases so that's the only option to target a significant market.
> Is nobody interested in implementing the OSX APIs on Linux?
The reason for wine is that windows has a dominating market position and hence you often have to use some software that is windows-only. For OSX you might want to, but there is no such dire need.
It's a very fast moving target. Apple keeps rewriting and deprecating stuff faster than they can write the documentation. As a newcomer to native macOS development, I'm sometimes struggling to even find working examples.
I am convinced this is by design. Apple has leaned heavily into service based revenue. This means recurring revenue. So in their App Store, they heavily incentivise subscriptions over one-time purchases. One of their tools is frequent and rapid API deprecation. This breaks older apps which aren't maintained. Developers must therefore spend much more effort on maintaining software on iOS and macOS (I can still run software on Windows from 20 years ago). This makes the value proposition of selling one-time purchase software poorer. It also means that older software has a much shorter lifespan, so users are forced to purchase software more frequently. I think this is one of the reasons revenue on iOS is so much higher than Android.
Which IMHO has made the AppStore a cesspool of awfulness.
Buying a one time app for a few quid used to be a normal and a good deal all round (I say this as a customer and iOS developer)
But now EVERYTHING is a monthly subscription. Even for apps that really shouldn’t need any updates - but like you say, they do need constant updates just to remain functions.
It’s created a broken AppStore and I just never pay for anything anymore.
This does suck when you find an "old" app that works well, but there is an upside-- the 99% of other garbage apps from 15+ years ago don't pollute ongoing search results forever. Eventually, old apps that aren't maintained get popped from the stack.
The other upside is that new developers don't have to compete with ghost apps from the past continuing to leech new interest because they're ranked higher due to cumulative downloads over time. Nobody can compete with Time.
As an example of an app store that doesn't do this-- I don't know if ticalc.org is still around or still works this way, but their catalog grew endlessly with every generation of bored students uploading new redundant renditions of Drugwars (et al.). If you want to play Drugwars, which of the 500 versions of it are the best? Maybe the 1998 version is the best, or maybe the 2020 version is-- who can tell?
It made it very difficult to figure out what to bother with unless you were using a brand new TI-83+++ Extended APU Platinum Edition with bespoke hardware specs that forced a new backwards-incompatible platform category that instantly excluded all the old cruft.
I really like how impartial and matter-of-factly your comment is in contrast with dystopian picture it paints. Or maybe there are positive aspects of this process that I don't see?
Not that it's any relief, but this is also the case with Windows too. MS often introduces breaking changes in the Windows API and rarely adds/updates examples.
Unfortunately, it's the norm in most massive closed source ecosystems like these.
On the one hand, it makes being a developer on these platforms pretty painful at times, and on the other hand, it also increases the value in having expertise with them.
"MS often introduces breaking changes in the Windows API"
Can you give an example? I have also plenty of Windows development experience, but can't think of anything. More like, Microsoft seems to be pretty careful making sure APIs don't break.
NTAPI doesn't count, because it's undocumented in the first place and you're not supposed to use it in the userland at all. Yeah, we all do, but...
(Many APIs are pretty bad in the first place, but that's another matter.)
That may be true in Swift, which is a relatively new language that was evolving rapidly in the early years. For objective-C the rate of change has been much slower.
I cannot express how frustrating and unprofessional Apple comes across, that you have to sit and watch YouTube videos, to try and find some documentation for iOS development.
> WWDC videos can be immensely useful to get inside information about how things actually work
Imagine if we could have proper text based documentation on how things actually work? I don't know why this isn't the case. I'm sure they can afford it. Maybe it's just lack of respect for developers? "They seem to figure it out anyways"?
Jobs made it clear in the 1997 WWDC speech[1] that Apple's priority is never the developers, but solely the customer experience and the final product, and if programing languages, frameworks or developers will be casualties along the way, then so be it. His words, not mine.
I'm not sure those two are incongruent. Surely, the customer experience and final product includes software written for the platform? And, if developers make apple development an afterthought, or more poorly tested because CI/CD is tedious and cumbersome... how does Apple benefit? Of course, this is a comment on the what seems to be lack of insight on the comment made by Jobs, and not your comment. Thanks for sharing that. It does give some insight into the state where developers seem to be treated as second class citizens, even though they rely on their work.
In any case, Apple sure has convinced the masses, and can rarely do no wrong. So, I suppose I'll just keep yelling at the clouds.
This makes sense in a company with limited. Apple can obviously both care about customer UX and have a good development documentation, have a good public bug tracker, pay out bug bounties, etc.
If they hire 20 people for this and give them a few offices in their precious mothership, it won't affect customer UX in the slightest. They may continue to give it the top-most priority, which is the right choice to make.
That's why it's unclear to me. Apple's valuation is a poor argument. It could have been even higher, since there are areas where Apple is failing precisely thanks to poor developer relations. E.g. serious gaming on Macs/Apple TV, even though the hardware is amazing.
Why are you asking me? Why not ask Apple directly?
Their valuation and product success is poof that they're on the right track as a company. The fact that you think their track should be different just to make you happy is irrelevant to them and is exactly what Jobs answered in 1997 to that irate developer: The consumer product matters more than pleasing devs which are niche and picky group of people that are hard to please anyway and not really relevant as their consumer target.
I'm gonna have to stop the conversation here since we're going around in circles at this point.
Overall financial results are no proof that making a bad documentation was the right decision. I don't even believe it's an intentional decision, probably just carelessness.
>Why are you asking me? Why not ask Apple directly?
Not sure what's this supposed to mean, you are the one who decided to reply.
>The consumer product matters more than pleasing devs
This is obviously a false dilemma which I already pointed out. I never ever said that pleasing the devs should be prioritized over the consumers.
Is there really that much software out there which runs on macOS but neither Windows nor Linux and has no good alternatives for either Windows or Linux?
There's a truly absurd amount of software out there which runs on Windows but not Linux, it doesn't surprise me in the slightest that way more effort is invested into running Windows software than running macOS software.
> Please ensure you have read and understood the Xcode license terms before continuing.
According to the EULA you may only use the SDK on Apple-branded computers. But you can use Linux to cross compile to Apple.
Do the Visual Studio build tools have more permissive license terms? AFAIK you can have clang-cl on Linux, but you do need a lot of the SDK for it to be useful. No experience there.
For Windows, MinGW has an independent implementation of the complete build environment so you don't need any VS tools, import libraries or headers. For macOS there is no such complete build root but the actual tools are available - e.g. clang is always a cross-compiler able of targetting all supported architectures and for the linker Apple's own ld64 is open source and we also have lld now although I am not certain the macOS target status.
> AFAIK you can have clang-cl on Linux
clang-cl is a frontent for MSVC command-line compatibility - you don't even need that for cross-compiling, just -target and then whatever -fms-* extensions you need for your non-portable code. But yes, Clang doesn't come with its own SDK so you will need headers and import libraries and possibly other tooling (although the LLVM procect covers a lot).
It's unfortunately not legal. Makes it also not commercially viable. Cross-compiling is nice, but if the build toolchain requires xcode, then it doesn't help all that much, since the last and most important step has to be done on apple hardware.
At least you can build on docker runners instead of fragile shell runners on MacOS. But any benefits are probably not worth the cost of complexity of cross compilation.
You can run unmodified macOS underneath VMWare hosts. Apple even ships a VMXNET3 driver on every Mac (since they don't really have an external driver paradigm).
What's wrong with running hackintosh in a VM if you really want to build for Apple platforms without buying a Mac? Sure the days of hackintosh are numbered because of the ARM transition, but this would work for as long as macOS runs on x86.
In my case with Flutter framework, I buy cheap MS Windows or Linux box and the build children are Minis even an Apple mini. I have not priced it out yet, but I expect it to be cheaper in the long-run than buying time on cloud testing lab set ups.
We also use flutter, and have extensive native code that needs to be compiled for each platform/abi. What you describe is similar to the setup we used. However, more and more developers have opted to get a MacBook in order to avoid the hassle. It might make sense to just have a dedicated mac computer running a gitlab worker that builds the iOS stuff for us.
I wish all developers could just up and agree not to bother with the headache and leave Apple and its walled garden to rot. Too bad we don't answer to ourselves.
Thanks for the tip. We have considered it. Its likely the place to go once we iron out development/product. Its just unfortunate that the basics of such a CI setup is trivial to set up "in-house", for everything except software targeting apple hardware.
They only way to reach a significant market share is to put up with it, wouldn't that count as abusing their position? They don't have to care, because they know that developers have no choice, and in the process they increase their hardware sales? Imagine if google wanted to produce end-user hardware. Then they limit their SDK/NDK to only work on that new hardware. And, this isn't any magic or special hardware. Just an added EULA that restricts legal use, and lack of developer support. This is pretty much apple has done. Of course, doing something like that on an already established market would be suicide. But, developers would have also to a much larger extent chosen not to target Apple hardware, if it wasn't for the market share. That's why it is abusive and a case of anti-trust. They get away with it because of their market share.
Can someone remind me why Apple is so anti-VM in seemingly every instance?
It just seems so arbitrary and unhelpful, and I have a hard time imagining that the amount of hardware purchased it forces outweigh the benefits from making macOS/iOS better platforms for development and computation.
Considering a couple years ago, "Apple Hardware" was an intel CPU with an nvidia GPU I've always wondered why you couldn't just throw a million dollars at them so they could stick apple stickers on your rack and let you run MacOS VMs. The company I used to work for had to do crazy gymnastics just to test software and scan for malware on their OS.
There’s more to a mac than the sticker. It’s specific hardware that is tested and supported by the software. That’s worth a premium. Verifying your rack is a cost Apple doesn’t want to take on. iCloud doesn’t run on MacOS. It runs on Linux. Just buy the right hardware for the job.
Does Apple dogfood their OS X/iOS CI pipelines, i.e. are they running them on some off-the-shelf Macs like they expect everyone else to do? I remember reading that at least in the past they were running virtualized OS X on regular servers for those (actually found following: https://news.ycombinator.com/item?id=18117885).
And it's not like Apple would need to verify anything. They can grant the license, but say that the only supported configuration is Mac, it's up to VMWare and such to provide the support if they want to say that you can run OS X on their platform.
Azure doesn't run on Windows. Why would iCloud run on MacOS? There's exactly one organization in the world that needs to run iCloud, why would MacOS target that use case? I doubt Apple eats their own dogfood.
Azure does run on Windows. It's HyperV server below the rest of the hardware. It's a custom Windows install that you can't purchase, but it's Windows none the less.
That's interesting. Do you have a public source for this handy?
I remember seeing an article [1] proclaiming that more than 50% of Azure's workloads are on Linux, so I'm guessing their hypervisors are running an optimised Linux kernel somewhat.
1: Linux is Most Used OS in Microsoft Azure – over 50 percent of VM cores
that 50% is the guests, not the hosts... I think they even have Hyper-V, along with the Windows Server Kernel, running on ARM, since they now have ARM VMs... Only a matter of time before thats released in the wild... [1][https://azure.microsoft.com/en-us/blog/azure-virtual-machine...]
Azure Devops Services is an updated version of their old Team Foundation Server stuff. You can't create projects, teams, or workitem areas/iteration paths that are any of the microsoft magic names ( con, nul, ...etc... ), presumably because they store the data on a windows drive and it would implode. git repos, too, but that's just good planning for any git service since allowing microsoft reserved names would make the repo unclonable to microsoft systems.
My Mid 2014, 15" Macbook Pro has both Intel and Nvidia.
Chipset Model: Intel Iris Pro
Chipset Model: NVIDIA GeForce GT 750M
This Macbook pro was a free upgrade from Apple after I'd had 3 mainboard replacements because they'd had faulty GPU's on my 2011 MBP ( see https://web.archive.org/web/20170119031155/https://people.ca... for background) - Basically after I found out what was going on I took my 'repaired' machine home and stress tested it until it failed. After the very quick repeated failures Apple decided to replace my machine completely.
I asked cos the person I replied to stated that it was a couple of years ago. I thought maybe there’s some other apple product other than macs that have Nvidia in them. But seems like there isn’t.
Back in 2007-2009 Nividia shipped defective GPUs to everyone, including Apple.
Every MacBook Pro from that era was affected. Nvidia and Apple couldn't come to an agreement to who should pay for the bad GPUs. It cost Apple a lot of money and Nvidia din't seem to care.
After that, Apple slowly started removing Nvidia GPUs from their products. AMD also shipped bad GPU's around ~2011 and Apple went back to Nvidia for a generation or two until AMD sorted their issues out. From Then on it was AMD GPUs only until the M1.
I only found one article about this from back in 2008. It was definitely a thing back then, I just can't find it....
But indeed likely second fiddle to the gpu issues around the same time, I totally forgot about that.
Apple almost went out of business allowing macOS to run on non-Apple hardware. I think there are still people there who have an irrational fear from that time.
From a current financial/business standpoint, Apple considers itself a hardware company that includes their custom OS with their hardware. From that angle it makes no sense to allow it to run on non-Apple hardware. Sort of like Sony being ok with the PS OS running on Xbox.
But it also makes no sense to forbid it. If Apple were a hardware company, letting people use their software on other devices wouldn't cut their baseline. After all, people buy Apple because of the hardware, right?
Apparently not, and because they subsidise the software using hardware sales, they don't want to decouple the two.
The Sony/PS situation is exactly the opposite: Sony subsidizes hardware using software (games) sales. Which is why they don't allow you to use different software on a PS.
Now that Apple leans into services revenue it might make sense to license the OS for clones, if they could still sell you an Apple Music subscription on your Samsung iOS device. But as matwood said above in the 90s they traded high-end hardware sales for much less lucrative license fees and lost badly. It was one of the very first things Jobs tried to fix when he returned, and he ended the program because he couldn't get terms he liked from the licensees. (Which in retrospect is weird because it put them entirely out of business, but shrug.)
Exactly. At an old job, we had basically a glorified closet full of Mac minis for running our Mac CI builds on; the Linux builds just used EC2 instances.
Sure, but for getting shit done, you can always use nested VMs or SSH into a real linux machine if need be. Regardless, the fact that you can run an unspecified amount of Linux VMs yet macOS VMs are limited to 2 is even more egregious. It's far cheaper to get Linux VMs anywhere than macOS VMs.
They want to sell hardware. I'm reminded of this every day when I can't use Apple Reminders and Calendar properly on non-Apple devices. I have an Apple phone but use a non-Apple computer. You used to be able to have a web interface to Reminders, but they changed it and now you can't add tasks in the web interface. No worries then, let's use Caldav. Hmmm, can't add a Caldav server to iCloud anymore. Ahh, we can add a Caldav account to iOS! Nope, it doesn't obey the sync schedule. You can set the schedule to anything but it just syncs when it wants to, maybe every couple of hours if you're lucky. I might be cynical but I wouldn't be surprised if it's a ploy to get more people into buying more of their devices.
This shit is why I use Google products on my iphone: gmail, calendar (with reminders), contacts, etc. (Paid version at that: I pay for google workspace, even for personal use)
I'm not locked in to the Apple ecosystem: I can use it on my Linux desktop, or switch to an Android phone at any time.
It's solving problems in my life. I have a calendar, it's synced across all my devices, I have no fear of lock-in, and I have full control over my data without fearing about my account getting locked (as I pay for Workspace). Same for email, same for contacts.
Google is a company providing me a service I pay for, with a contract I signed.
Do you think my data would be safer if I used UnknownCalMailCompany Inc, a company with zero track record in terms of privacy, safety, or long-term viability?
Even those whose risk assessment leads to them not wanting to give Google their personal data should be able to acknowledge that Google's pretty good at not leaking user data onto the Internet.
To the extent that they make their money from user data, their advantage is in keeping the underlying data for themselves, not in giving it to other people.
(I use a fair amount of Google tech, including paying for hardware and services, but I won't use their search engine or browser)
I’m sorry but yeah, if you want a concrete solution that is on par with what google offers in terms of privacy and security, you can’t go with a random company and everything I said before stands. And in this scenario, fastmail IS a random company no matter how long you’ve used them.
None of my data is used to sell adverts. You seem to completely miss that I’m using google workspace. I have a contract with google, I’m not using free shit.
What's wrong with a flip calendar or a moleskin diary? Color me old-school but why does every single thing, especially your most private things need to be online?
And this is why I don't want to buy any Apple device. It seems that it's all or nothing for them. If you have a mix of apple and non-apple devices then you'll have all sorts of compatibility problems.
iCloud web UI. Sorry, I just tried again and you can add tasks, but you can't set a due date or time, which I rely on heavily. You used to be able to do this until they went to the "new" Reminders. They gave us a prompt to upgrade to the new reminders, but you don't realize that you lose these features, and as far as I can tell, you can't go back after you "upgrade".
I just set a due date and time on a reminded with the web UI. Add the item, click "details", click "on a day", set a date and time. It's not easy, or a nice UI, but it's functional for this visual user. I didn't check the accessibility.
The walled garden is absolutely essential to Apple's business idea. If you want to use an Apple product, then they want you to commit to their ecosystem completely.
It makes perfect sense that they'd be against anything that circumvents their walled garden, and a VM does just that by allowing users/developers to use their OS without buying their hardware.
I personally hate it, and it's why I'll never touch any Apple product.
They have a very good price-to-value ratio, especially when you account for their high resale value, so that's not really a good reason to avoid apple.
It is simply unbeatable on the laptop market currently, imo.
I was more thinking to the iphone (I don't have laptop). You can't find a cheap new iphone, and even the cheapest iphone is more than I would put in a phone myself.
It's true that now high end android phones are as expensive than high end iphones, so on this point of view it's not a criteria
I purchased two brand new iPhone SE's for $100 each around black Friday from Straight Talk. Required one month of prepaid service and then they were unlocked, I used them down in South America.
The iPhone SE is better than any comparable Android phone and will receive updates for another 5 years.
So "You can't find a cheap new iPhone" is not true. If you're willing to take 1 extra step and get a month of prepaid service you can get a cheap iPhone.
We get dazzled by "benchmark number higher" and ignore other factors. The lock-in means I'd need to have a gun to my head to use an Apple product. I can't game on it or use Linux. My laptop and desktop are both ~10 years old- how long are Apple computers supported? These factors don't show up in benchmarks but they are just as important.
Your laptop and desktop are 10 years old, and that’s it. They are not supported by anyone, they just didn’t die on you yet. Apple actually supports their devices for that long easily, that’s one category they really outshine their competitors in.
Also, the macs are not at all locked down if we are talking about that. OSX is pretty much a general linux with a generally supported graphical environment on top.
One guess: if macOS could be virtualized, it would be even easier to run things like Messages, FaceTime, and Photos on non-Apple hardware, which reduces some of the lock-in effect that keeps people from leaving the ecosystem (i.e. Green Bubble Effect)
Not necessarily. iMessage & FaceTime AFAIK are cryptographically locked onto Apple HW. I could be wrong, but my understanding is that each piece of Apple HW ships with a burned in unique private key that Apple records the public key of in it's internal database. That private key would be missing in a VM context.
It's possible my data is out of date though because iMessage spam is real & I'm not sure how that's done if it needs a valid private key that Apple can ban.
I haven’t looked at this in detail in a while either, but I don’t think the claims here are correct.
It is true that Apple employs some efforts to prevent/discourage you from using those services illegitimately, but using iMessage and FaceTime from a Hackintosh has been possible for years, largely without jumping through any hoops.
As far as I am aware, you need at least one Apple Device to get it started on a Hackintosh. So you might still need one iPhone and then also receive iMessages on a Android by using a VM in the background. And this sounds so complicated, that I would doubt that more then a handful of people world wide would do it.
1: This will likely lead to a small (and I do mean small) hit to their sales from people taking advantage of a VM who would have previously had to buy a device…
Doesn't seem to make all that much sense though. The value of their OS is how perfect it works with their hardware. Sure some people want to run MacOS on a standard desktop, but that doesn't seem to be a significant group of people.
Apple is mostly a hardware company. Aside from aesthetics, people are attracted to their products because of the UI for the OS. If you get that for little to nothing, why would anyone buy their overpriced hardware?
This reminds me of when Apple tried to make it so that you can't own an iPhone, only lease it. The effort might be still ongoing, I'm not up to date. A few different turns in history and your sentence would have been "THEIR machine" and "THEIR software".
The way that works is you pay apple an annual fee so that they will sign your applications using their key. Their devices still check that the application is signed by apple. I think you could reasonably say you have no control over that device you paid for if this is what you have to do to run your software on it.
> what you were not allowed to do with THEIR software
And now cars, door locks, TVs and toilers all have software. So every comoany will be telling you what to do.
This is your daily reminder that, unlike ownership of physical objects, IP os a privilidge granted for advancing sciences and arts. Not for making things worse
I can't buy iOS, but I must use iOS to use the phone they sold me. This is legal, but just because something is legal doesn't necessarily mean that it's ethical or is good for all parties involved. The iOS emulator in Xcode is nothing short of dog shit, and it's not really an emulator as much as it's a halfway house reimplementation of iOS's userland for macOS. I don't believe there's any need to defend Apple's decision to deter people from running iOS anywhere and everywhere.
Their software is no longer their software the moment it touches my machine. My bytes, my stuff. You can delude yourself into thinking "but licenses and EULAs say you can't", but the best Apple can do is beg that I don't, and make my life hard for me to do so.
Which is extremely telling of how little consideration they have for their users.
Before anyone jumps to conclusions, all this ruling means is that this example of an iOS virtual machine (for the purpose of security research) counts as fair use.
It doesn't exactly open the doors for everyone to run iOS in virtual machines.
> As to count one, we agree that Corellium is shielded by the fair use doctrine. First, Corellium’s virtualization software is transformative—it furthers scientific progress by allowing security research into important operating systems. Second, iOS is functional operating software that falls outside copyright’s core. Third, Corellium didn’t overhelp itself to Apple’s software. And fourth, Corellium’s product does not substantially harm the market for iOS or iOS derivatives—so Apple’s own incentive to innovate remains strong.
The important part here is that it proves Apple does not have the defacto right to claim infringement on iOS. If your emulator is transformative, offers functionality beyond default iOS, doesn't abuse their services and doesn't threaten the iOS market (eg. iPhones) it should be considered lawful. The interpretation is still open on the infringement of their wallpapers, icon and "contributory infringement", but this spells in pretty plain text that emulating iOS is fair game. Put another way, even a company that sells iOS emulators to hackers was found to not be in direct violation of Apple's iOS copyright.
All you are quoting is a description of how Corellium’s use qualifies as fair use, which is what the person responding to you said.
> The important part here is that it proves Apple does not have the defacto right to claim infringement on iOS. If your emulator is transformative, offers functionality beyond default iOS, doesn't abuse their services and doesn't threaten the iOS market (eg. iPhones) it should be considered lawful.
You are describing fair use. This isn’t establishing the precedent you think it is. Corellium said “hey, what we are doing is fair use” and the court agreed, describing why it was fair use. That’s all. The description of how it counts as fair use is not opening anything new up, that’s just the four factors of fair use that have been there all along.
How did they determine that it didn't affect the iPhone market? As I understand it, companies definitely buy tons of iphones set up on docks next to workstations to ensure everyone in the office can work on ios apps on real hardware, since the ios simulators aren't always foolproof and don't consider handheld ux.
It looks like that's why they make the other two points - Corellium progresses common interests by advancing security research, and extends iOS with features Apple does not offer themselves.
This contention seems to rely on their third response, where they claim that Corellium hasn't "overhelped" themselves to copywritten material. This sorta makes sense - their reliance on Apple basically ends once they have the commercial iOS disk image. If they've proven that everything else was lawfully developed and reverse-engineered, it sounds like Corellium had a strong case on their hands.
There has been at least one massive exploit that involved malware cloning Android phones to run a banking app in virtual machines on a server. Perhaps Apple just wants to prevent something similar happening with iOS.
(I edited this post, because I don't want to give any criminals reading this too many details.)
Now I'd like to be able to legally run MacOS on a virtual machine or on AWS or Azure or Google Cloud or something. I know you can rent a bare metal Apple Mini or something, but Apple's terms of service make this all basically illegal to use like any other VM.
That means if I want to develop an app for iOS (beyond just what you can do in Swift Playgrounds), I can't just boot up a VM or AWS instance, I have to either buy an actual Mac Mini (cheapest option) or rent one.
They cost a shit ton though because they have to run on mac mini AFAIK. It would most likely be way cheaper if there were to run on commodity hardware.
Yes for renting an instance from AWS. Minimum lease time is 24H iirc. But that's not the case for Github Actions (and so I assume Azure Pipelines). You pay per minute, it's just 10x the cost of an Ubuntu instance.
In what way is it a breach of contract? It is using someone else's intellectual property without a license. Morally it is no different to using a cracked version of Photoshop, or playing a cracked version of Grand Theft Auto. Quite simply it's breach of copyright.
To be clear, I'm not here to be a scold or a narc. Copyright is overly abused by large corporations. My ability to shed a tear for breaching the copyright of billion dollar corporations is limited. If you want to run macOS inside KVM on your own personal rig, all power to you. I'll cheer you on from the sidelines.
But if you're using this software as part of regular business operations, I'm not going to sit here and pretend that it's morally justifiable. And it's ridiculous to pretend that anyone should have the legal right to Apple's intellectual property without a license — save, apparently, for security researchers.
Everything I find says that to be illegal, something must be against the law, and that a contract is not law, so the word "illegal" doesn't apply to breach of contract because it's private.
There is a difference between illegality and criminality however -- e.g. breaking the speed limit is illegal but it doesn't reach criminal, as one source uses as an example.
That depends on the country... speeding in the UK, for example, absolutely is a criminal offence.
In fact, in the UK, apart from a tiny number of civil matters used in criminal law, breaking the law (ie doing something illegal) is always a criminal offence.
dragonwriter and others here are both right. In terms of language, the terms are the same, in that you are a criminal if you violate the law. However, in many countries and regions "criminal" can be a way to discern that certain crimes come with specific punishments, like jail time or personal fines.
For example, in the US there's criminal and civil cases. You can't be incarcerated for losing a civil suit, unless you don't pay whatever judgement the court discerns (which is considered criminal contempt of court).
In the US the difference also comes into play in terms of who can bring certain charges against you. If you were to sue someone, you can't sue them for assault and battery or homicide, because these are considered criminal charges and only the District Attorney / the government can bring these charges against someone. In this case, there are typically parallel civil remedies you can sue for, such as "wrongful death" and "emotional distress" which is strictly to recuperate financial loss.
Those remedies are against the parties breaching the contract. It’s a small hair to split, but relevant given the point being made.
contract law is the body of precedent and collective set of laws related to the legality, construction, execution and all around use of contracts, and while I’m sure there are some specific extra laws that make breach of certain types of contracts a misdemeanour or felony. Generally speaking in most jurisdictions around the world in fact, breach of contract is a civil law matter between the parties of the contract, and settlement of the civil law side of the “is this actually a breach of contract” is usually necessary first before any potential criminal liability can be applied.
An example: An contract can be invalidated for lack of sufficient consideration offered (peppercorn isn’t always enough to make it valid)… this makes the contract void, not illegal. This is a simple example but it illustrates the basic point well, and I’m not trying to write a legal theory essay while on the way to work.
> Those remedies are against the parties breaching the contract.
Yes, remedies in the law are invariably against the party breaking the law, not the people complying with the law. What would be the point of sanctions for not breaking the law?
> while I’m sure there are some specific extra laws that make breach of certain types of contracts a misdemeanour or felony. Generally speaking in most jurisdictions around the world in fact, breach of contract is a civil law matter between the parties of the contract
So, what I just said that breach of contract is a violation of the law for which there are sanctions available, but not in and of itself criminal. That was a…very argumentative agreement.
Well so it is… I misunderstood your viewpoint since it was put so succinctly. With the added context of your reply, I see what you meant and yeah… I was quite argumentative in my agreement, fortunately it was an argument for the same view and you decided to kindly reply and point it out. :-)
"contracts" is civil law. to be illegal it would have to be criminal law. defamation is legal. it's a tort, you can get sued for it and lose. in civil court.
there is contract law, but breaking contract law is not illegal. a tort for example, is a tort, not a crime.
I am sorry to have to say this, as it detracts from discussion. you really need to read the full text of things to which you are replying, before replying. you are wrong, and your exact point was already explained. yes - criminal law is the only source of illegality. that is literally the definition of the word.
I give up. Enjoy doubling down Pooty, and take your own advice. Look up what a crime is (this is illegal) and look up what a tort is. There is a reason we have civil and criminal courts.
Torts are just as illegal as crimes. (And of course, in most usage, torts are just a particular subtype of crimes.) If torts weren't illegal, there'd be no justification for fining you after you committed a tort.
> all the discussion I can find online say breaking a contract doesn't fall under the definition of "illegal"
I don't think this is the standard. I think the standard is, can you find definitions of illegal under which breaking a contract or a tort don't fall? And in the dictionaries I've looked in, there are many usage senses of the word illegal that do cover things that are not criminal.
Contract law and the law of torts are laws under which the state will enforce judgements. Even though the judgements are civil matters, they are enforced by the legal system. Till I see a definition of legal/illegal that clearly covers only criminal acts, I'm going with breaking contracts to be within the penumbra of that which is illegal.
just a few more points to round out my thinking
I think what we're seeing is that there is a clear distinction between criminal and civil law. And lawyers, wanting to be clear and unambiguous, shy away from blurring that distinction by applying the term illegal to civil matters; but lawyers being hyper-specific and unambiguous doesn't necessarily govern the definitions of words.
And I once took an introductory/survey course in the law (taught by an attorney/law professor), and the first day of the course we talked about the history of the law, and what were the sources of our laws, for example religious law (thou shalt not kill), feudal law, common law, (for the US) federal law, state law, town ordinances, and then contracts were mentioned as binding just like law.
> And in the dictionaries I've looked in, there are many usage senses of the word illegal that do cover things that are not criminal.
That wasn't the question under discussion -- my comment already had an example of that, of driving over the speed limit.
The question is whether breaking a contract falls under the term "illegal". And again, you're using logic to argue this, when it's simply a question of definition. It's not whether it should fall under the term "illegal", it's whether lawyers and lawmakers and other educated folks define the term that way.
And it doesn't seem like they do. It seems that someone is not acting "illegally" when they break a contract. They can be sued, the contract can be binding, but the word we use for the behavior is "breaching" or "violating", not "illegal".
>And all the discussion I can find online say breaking a contract doesn't fall under the definition of "illegal".
IIUC, breaking a contract is a civil tort[0]:
A tort is an act or omission that gives rise to injury or harm to another and
amounts to a civil wrong for which courts impose liability. In the context of
torts, "injury" describes the invasion of any legal right, whereas "harm"
describes a loss or detriment in fact that an individual suffers.1
And torts (again, IIUC) are not the breaking of a legal code, and as such cannot be illegal, as they break no laws.
Something illegal is dealt with in a criminal court (yes, there are administrative courts in various places that handle minor infractions, but those are governed under the relevant legal code and are adjudicated as such.
Civil torts are not contained within any legal code, and as such cannot be illegal. That said, there are some harms that may also rise to the level of criminality (e.g., fraud), which may also have a civil tort associated with them.
But breach of contract by itself is just breaking the rules[1] agreed upon by the parties to a contract.
> And torts (again, IIUC) are not the breaking of a legal code
Torts are (in the US, other jurisdictions may differ) either statutory torts, which break a particular, legislatively adopted code, or breaches of the common law and, as such, illegal just as crimes under the common law are in those jurisdictions which (unlike the federal system) continue to recognize common law crimes.
Both are illegal.
Though this is also somewhat tangential since as well as being wrong about the nature of torts such that your “torts are not illegal” argument is founded on faulty assumptions, you are also wrong in that, while contracts are, like torts, civil, breach of contract is not a tort.
> Something illegal is dealt with in a criminal court
No, something criminal is dealt with in criminal court. Illegal is a superset of criminal.
> Civil torts are not contained within any legal code
The United States Code has 54 “titles”. Crimes and criminal procedure are Title 18. What do you think most violations of the other 53 titles are? Largely (but not entirely) statutory torts.
Similarly, what do you think most violations of the 28 California Codes that aren’t the Penal Code are? Especially the Civil Code? Again largely, but not entirely, torts (the Commercial Code, relevant to this conversation, also significantly deals with contracts.)
> But breach of contract by itself is just breaking the rules agreed upon by the parties to a contract.
Breach of contract — the thing actionable in court — is breaking the rules in law as to when compliance with rules agreed to between parties are compulsory. That’s what makes it actionable.
Actually no, because contracts are enforceable as long as they don't go against the law, there's a limitation for a contract and contracts cannot be penally prosecuted
Are traffic infractions criminal? Violating some traffic laws can be a misdemeanor or felony while most are infractions. I don’t know if infraction is considered “criminal”.
This is often actually an area where toubwill find conflicting info; public info provided by the California state courts says yes, they are, in California [0], while you will find other sources, including law offices, saying they aren’t. [1]
The issue is largely that they are structured as crimes in state law, but the manner of punishment available does not make them “crimes” within the purview of federal Constitutional protections, or federal statutory consequences for conviction of state crimes (e.g., in the immigration system.)
Since you're too busy to do basic research to answer your own curiosity, of course I'll let you know that speeding is a misdemeanor in Alabama, Arkansas, Delaware, Georgia, Iowa, Louisiana, Maryland, Mississippi, Montana, Nevada, Ohio, Oklahoma, South Carolina, Tennessee, Texas, West Virginia, Wyoming. I'm sure I'm missing a few.
Apple's M2 even supports nested hardware virtualization!
If Apple is worried about cannibalizing MacBook sales, they could market-segment virtualization to the high priced iPad Pro 1TB model with 16GB RAM, which is also scheduled to receive an exclusive OLED screen alongside M3 in 2024.
The saddest event this generation is Epic vs Apple going in favor of Apple. It's tough to imagine Apple weren't a monolopy enforcing monopolistic policies.
Whether or not you believe Apple is a monopoly, whether or not Apple is benefiting from their current status as one of two dominant smartphone ecosystems, it is obviously false to describe Apple's restrictions around app sales and payment methods as being "monopolistic policies". The policies Apple has been criticised for were not gained as a result of monopoly power.
This is obviously true because the policies in question were substantially in place by 2009, long before anyone could have said "monopoly" in Apple's direction without being drowned in laughter.
"Monopoly power" is not a monopoly and in the UK, public schools are actually private schools, so maybe we shouldn't compare terminology across countries.
"Courts do not require a literal monopoly before applying rules for single firm conduct; that term is used as shorthand for a firm with significant and durable market power"
That’s because competition/antitrust law, be it UK, EU or US, doesn’t care about whether an entity is a “monopoly” or not. It cares about whether a company is engaging in anticompetitive practices or not. The market share is a red herring.
The difference being of course, on Apple's stranglehold on its customers. 30% either way, app developers know that Apple users are always willing to pay more and Apple knows this, too. That's why many apps only target iOS.
Besides the income from services within Apple's apps: they could take 30% of an app's purchase price (which is still not justified tbh, the app store can't be _that_ expensive to run), but how do they justify trying to take a percentage of a subscription (like Spotify, Netflix etc) when they have nothing to do with it?
That would be like Apple being able to take a portion of banking fees from me because I have my bank's app installed on my phone (and the bank takes fees), which Apple doesn't do of course because as big as they are, you do not fuck with banks.
15%. Almost everybody pays 15%, not 30%. The only organisations who pay 30% earn over a million dollars a year from things other than long-term subscriptions. That’s a tiny minority.
Nope, 12% in that case. The 27% figure assumes a reduction from the 30% rate virtually nobody pays. If you read Apple’s documentation, you’ll see that they say they will reduce their commission by 3%:
> Apple will reduce its commission by 3% on the price paid by the user, net of value-added taxes. This is a reduced rate that excludes value related to payment processing and related activities.
100% of the top 100 paid apps on the App Store pay the full tax. It's a progressive model, and the figure itself is arbitrary anyways. People want a more Mac-like distribution model, and Apple is reluctant to provide it because services are the only thing with wider margin than slave labor cellphones.
I can see wanting Apple to lose, but I can't imagine wanting Epic to win. That was such an ugly parasitic business model: let others take the risks to build platforms, let others operate the platforms, get the courts to mandate equal treatment for Epic to swoop in after the risks pay off.
I'd have to sympathy for the phone platforms, but it would have destroyed the console market overnight. No way consoles work if every penny of customer lifetime value has to be in the up-front sale price.
It's been working out fine for the Steam Deck. Sure, you can install Windows and/or any other storefront, but you won't have the console-like experience that Valve's own software provides.
It's trivially easy to install pirated games on the Deck, without any cracking or modification of the system. You never have to make a single Steam purchase after buying the Deck, but Valve's betting that you will. And they're right, that's enough. Most people don't go redoing or even tweaking the software stack on their hardware, they just stick with what comes out of the box.
I mean... working fine, in that the only people who buy them are pretty techy.
It's not so easy to get Win 10 working right, it requires a fair bit of effort, and the experience sucks.
I'm not so sure Steam would be super happy if Epic started distributing a new frontend and store through their marketplace. I'm quite sure they wouldn't let them.
Steam sells games which require third-party launchers to work. For example: Red Dead Redemption 2 requires the Rockstar Launcher to work (many a negative steam review regarding this), and this launcher allows you to buy other Rockstar games (The GTA franchise, LA Noire and more).
So yeah, Steam definitely allows distribution of storefronts.
They distribute games from both EA and Ubisoft that force you to use both companies launchers, that also just so happen to come with there own stores attached.
The steam deck is a way different value proposition compared to consoles though, console manufacturers take a loss for initial consoles sold until they can bring costs.
Whereas the steam deck has likely been sold as a profit from day one.
You’ve made a fair point and that’s a reasonable opinion, but do you think it should be outright illegal for console makers to use a business model of consoles at cost, profits made on a share of game sales?
They can make them at-cost and then charge whatever they want on their store. They just also have to allow me to choose different stores, or install another OS on my console if the OEM goes against my wishes. If you don't think I deserve that right as the lawful proprietor of said hardware, then we may be at an impasse. It seems like perfectly fair game to me.
> Whose job would it be to maintain all of the compatibility layers for the custom hardware that consoles generally contain?.
The community's? I don't think anyone expects the vendor to officially support anything other than the OS it ships with. We just want the option to use our own software on the hardware we purchased.
> Who pays for all the work to allow you to do whatever you want on your device?.
Surely it's more work to go the extra mile to restrict access?
The Steam Deck probably doesn't have much wider margins than a Switch or a Playstation. It might be sold at a profit, but the base $400 model is a pretty ridiculous deal already. Gabe Newell was upfront about the pricing process being painful for the hardware. He he also said that piracy is a services problem though, and the Steam Deck proves that in spades - if the default experience is superior, why bother with the competitors? You don't need to lock out the user to make that point.
If anything, the iPhone is the odd one out for having hardware margins that don't suck.
Apple has made billions (upwards of $300m in pure profit) from Fortnite. If you care about Epic's shitty qualities in that aspect (the case you're linking), surely you also care about Apple profiting off that exploitation as well?
Have you read the details of the judgment? Most of the dark patterns Epic used aren't possible on iOS. In fact, the reason they hate Apple's walled garden so much is because they add too much friction to the dark patterns they want to use, notably authentication for subsequent in-app purchases, so I don't know what exploitation profiting you're referring to. Apple protects consumers from shitty companies like Epic abusing consumers (in this case, children) and for that I thank them.
You can offer safe payment authorization APIs that protect families without also forcing developers to pay you 27% on every microtransaction. One might even call that good OS design, rather than a subtly hostile pattern of funneling users through a contractually-obligated money siphon they have no control over.
Doesn't hurt consumers, doesn't matter to government. Simple as. Apple is allowed to make money off the platform they built. Developers knew the terms before they started developing for it - the terms haven't changed since their inception and match other similar platforms - but each one knows they get more value out of Apple than vice versa. I have no sympathy for them anymore after I have been deleting more and more apps because of dark patterns. Nearly all of my phone use is on either stock apps or apps that are completely unaffected by App Store commissions like Uber, DoorDash, etc so I know who provides me the greater value and it's not companies like Epic.
I already send much more than 25% of my annual expenses for the privilege of using the US's platform. I don't even use most of the features but I can't seem to opt out of paying this commission. What gives?
Opting out would mean you would be barred from making use of any public roads. Or having 24/7 access to emergency services. I don't see how either being subject to that or the enforcement of it would be feasible in any measure.
Are you making my app searchable and downloadable on 1B devices? Because hell yeah I’ll take that deal. I paid Apple 30% on about $1M of revenue that would have been less than $10k without them. You think I feel abused?
End of the day you're still at the mercy of apple's algorithms and policies. If one day apple decides your app isn't worth it and the purchases and downloads slow to a crawl, you'll be taking note that the tax you're paying isn't worth it anymore. You'll search around but realize all the platforms do the same thing and regret it.
Competition for small business like yours is a good thing and you should be earning more compared to the big platforms because you bring in the customers, end of story.
And without Rockefeller Steel, who knows what would have happened in World War I? It doesn't mean we should tolerate their monopoly though. When people do bad things, we punish them. It doesn't matter how much goodness they've done, that's the rule of law. Apple is abusing market position.
If you're fine with Apple using you, that's okay. You can still pay them 30% going forward, but Apple will eventually have to give up total control of payment processing. It's up to you to decide if it's worth the trouble then.
Serfs felt that life was great under their lord, they were protected from barbarians. They were given access to a whole city, and could sell their grain here! Their lord was mighty generous, giving them access to such an impressive market. And he built it all on his own!
Well, until the lord decided to come down, take their harvest and claim their lands. Also the lord built the house on the blood and tears of actual, working people. At least serfs could rebel and take down the lord were their lives threatened, but Apple can just ban your account and you'd have HN commenters claiming "iT's ThEiR pLaYgRouNd tHeY bUilT iT".
Having a userbase is not work. Apple deserves to be paid for their hardware, for their software. But for having users and giving you the privilege of letting you show them things ? That is, quite frankly, pathetic.
> Apple protects consumers from shitty companies like Epic abusing consumers (in this case, children) and for that I thank them.
Last time I checked the App Store was filled to the brink with worthless pay to win and gambling (sorry I meant surprise mechanics) garbage. Doesn't seem very protective of the children to me. And an opt-in authentification system for microtransactions doesn't make it okay either.
It’s not opt-in, it’s the default. What people do with their money is none of your business. The reason Epic got fined was because people whose credit cards were saved and charged didn’t consent to the purchases and Epic refused to refund even when their virtual currency wasn’t used, or they locked out the accounts entirely when the transactions were charged back.
I meant Screen Time which lets you disable in-app purchases for children, not authentification which just requires you to enter your password for validation against accidental purchases. That was a mistake from my part.
> What people do with their money is none of your business.
Sure it isn't but what exactly is it that makes the App Store especially protective of users then in comparison to the competition? Play Store also gives the same controls and the same premise of guarding users from malware - which does still slip through, don't get me wrong, but so does it on the App Store - without having to block sideloading. Apple is fine with psychological mechanics designed to get particularly children to dump money into a game over and over as long as the developers paid their cut to them - which as you mentioned is fine in the context of individual responsibility, but it really does not scream "protective" to me. At that point why not give me freedom to install apps from wherever I'd like?
> The reason Epic got fined was because people whose credit cards were saved and charged didn’t consent to the purchases and Epic refused to refund even when their virtual currency wasn’t used, or they locked out the accounts entirely when the transactions were charged back.
Yes and never have I defended that. I am very glad they got zapped for that. I am simply against the idea that any corporation is a trustworthy guardian angel which only has the customers' best interests in mind. Any of the tech giants are more than happy to employ anti-competitive and customer-unfriendly tactics in the name of profit and siding with either one because of favoritism or holding a grudge against the one instead of on a rational case-by-case basis is just silly.
"Most" is doing exceptional heavy lifting here, since the verdict (about lootboxes) were absolutely possible on iOS. In fact, there are still plenty of games on iOS that support such lootboxes. This is literally why they created Apple Arcade, by the way.
So cut the BS, admit you're a hardcore fan of Apple it's really that simple. You don't care about privacy or exploitation. When Apple exploits kids it's fine in your eyes.
No, they're not, and I just showed you why. Epic is a scummy company that employs dark patterns to extract as much money as possible from easily manipulated consumers and Apple kneecaps those strategies on iOS by having control. If Epic got their way, this is what you would have to deal with on iOS too.
Apple allows many bad billing practices as long as they get a 30% cut. Not as many, but many.
If Apple wanted to, they could block bad practices and either allow external processors or charge a pure payment processing fee. Their current actions seem to be more concerned about the fees than the customers.
Again, it doesn't matter if Epic is scummy. In the issue they were litigating for, I want them to win, because I want app stores to not be a monopoly on platforms. That's it. I don't care what else Epic does, I'm not going to say "oh if an evil person agrees with me, that means I must change my opinion".
You still don’t get it. There are thousands like Epic. They’ve shown (the FTC’s opinion, not just mine) that they will stoop low to make an extra buck and the only thing stopping them on iOS are Apple’s rules. You wanting app stores to not be monopolies means billions of people will be directly subject to unethical companies like Epic. As a consumer, I say fuck that.
A three year old article was discussed yesterday (from the Washington Post, 2020 - referenced in this article) - there were even comments in thread about the article being dated (perhaps OP used the wrong URL). This is the result of 11th circuit appeal of that 2020 judgement (which upholds it), opened in 2021 and closed.. yesterday.
You're correct. Apparently this was actually an attempt to revive it. The Bloomberg article that the TechRadar articles is based on makes that clearer:
> Apple Fails to Fully Reboot iOS Simulator Copyright Case (1)
> Apple Inc. failed to fully revive a long-running copyright lawsuit against cybersecurity firm Corellium Inc. over its software that simulates the iPhone’s iOS operating systems, letting security researchers identify flaws in the software.
> The US Court of Appeals for the Eleventh Circuit on Monday ruled that Corellium’s CORSEC simulator is protected by copyright law’s fair use doctrine, which allows the duplication of copyrighted work under certain circumstances.
> CORSEC “furthers scientific progress by allowing security research into important operating systems,” a three-judge panel for the appeals court said, adding that iOS “is functional operating software that falls outside copyright’s core.”
Geat news! What about iOS-hosted virtual machines? I managed to install DosBox on one device in our family just before they blocked it but I want it, also a Linux VM and a real Firefox everywhere.
I don't see how Apple doesn't have a few hardware and software combo card to play here that make it impossible more effort than it is worth to try to emulate.
You can run Chrome, which has a virtual machine in it. Maybe not the same kind of virtual machine that you're talking about, but this is the kind of virtual machine that Apple has banned: any kind of code that isn't statically compiled, that isn't immediately readable. This is why Chrome (actual, not the thin cosmetic shell over Safari WebView available now) can't run on iOS: Chrome has to download & run JS code, and that's impossible because it doesn't know ahead of time what code to run. Apple has society in the pinchers.
Conversely, I have no respect at all for the m-f a-h at Google who have, in MV3, pulled an Apple and banned anything but statically compiled code in WebExtensions. Google is doing the worst thing Apple did, but to the web. And I absolutely hate it. Hate it hate it hate it hate it. Abominable way to hurt the web. https://github.com/w3c/webextensions/issues/139
I'm not quite so pointed. I am quite willing to believe 98% of the really bad shit the Chrome Store extensions team has seen, the really henious anti-user malware shit, has been dynamically delivered payloads. I think there's real cases to be made.
But I also don't think those security woes justify the horror Google is besetting upon users. I don't think it justifies stripping away agency in such broad course. I think it's hypocritical & shameful in extreme they'd do what the worst most fascist competitor does on their app store. I think the team isn't honest, hasn't presented viable evidence, hasn't made the case, hasn't presented real evidence for their actions in nudering web extensions. I have many many qualms.
But I think I can still see legit cause for what would make them so very very cowardly, to do such a henious & unbespeakable act as they've doing with WebExtensions MV3.
Alas it's just misaligned incentives here. Ideally users would actually see what pages & the extensions do. We could be our own network, our own reviwers, we could warn each other of malware. But Google, like all app-store providers, is the only intermediary of trust, has made themselves solely responsible. Rather than tackle this as a mature problem of great powers that must be watched and regulated, they've taken an extremely convenient & easy route out that makes their job as authoritarian regulators infinitely easier, at the expense of enormous power, at the expense of becoming extreme & perposterous hypocrites at the foot of the Apple tribulations they've undergone, but in a much worse manner.
You're mixing up executing JavaScript generally vs JavaScript with a JIT. Apple has specifically banned Just-in-Time (JIT) compilation, where JavaScript (or anything) is translated into machine code, marked for execution, and ran directly on the processor. There are real security reasons for forbidding this[0]. All modern browsers use JIT compilation for JS since this is crucial for good performance. But a JIT isn't a requirement for running JS, it just makes things faster.
You can run JavaScript without a JIT no problem, but there is a separate Apple ban on alternative browser engines. Ostensibly browsers are banned because without a JIT they'd very slow and lead to a bad user experience, though I'm doubtful this is the only reason. (You can try Safari with the JIT disabled by turning on Lockdown Mode)
But there's nothing forbidden about interpreting code, as long as you don't generate machine code and try to mark pages of memory for execution. Practically this means scripting languages and nothing that's compiled or interpreted with a JIT. For example: with iSH, available on the app store, you can get a full virtual Linux environment and write all the JavaScript (via Node) or Python code you want: https://apps.apple.com/us/app/ish-shell/id1436902243
Long post. What you're saying may have some good to know particulars that I didn't get right. But the net is: the only performant way to run JS or any other non-pre-compiled (jit) language is banned. And there's separate bans altogether on browser engines even if running like dogs it were tempting. Because Apple sucks & is mean & a shit.
These are both horseshit fuckery excuses. Cast these wads into the pit. It's all fuckery, & there's so many other security defense layers. These prohibitions are bad spirited jerks being bad and jerks.
Hah sorry for the wall of text. Totally agree the real reason Apple bans browsers is not motivated by security, and them pointing at the JIT/performance is just the one plausible excuse.
But besides alternative browsers, IMHO this ban does have valid security/privacy/anti-scam reasoning. If apps could mark pages of memory as executable, they could introduce arbitrary new behavior whenever they want. Though it sounds like iOS security is good enough that even than an app can't break out of its sandbox.
But even with the sandbox, there's no point in the App Store review process if apps can completely change their code/behavior whenever. This dovetails into an App Store debate, but I think there is value in the idea of a review process. I'm sure there'd be way more predatory and malicious scam apps out there taking advantage of the tech-illiterate without app reviews. (Though I'm not saying Apple always does reviews right, or that they shouldn't allow app side-loading with less stringent requirements). Whoops wrote another wall of text.
Interesting! I had assumed that if you could mark pages of memory as executable (for a JIT), that an app could use that to call all sorts of security/privacy sensitive private APIs they're usually forbidden from using. But maybe not? Or is iOS sandboxing just good enough it doesn't matter? (but at the minimum, it does still seem to nullify the app store review process if apps can introduce arbitrary new behavior/code after review)
You can do that anyways (i.e. by obfuscating the call so that review doesn’t find it). The sandbox (+entitlements) is supposed the be the actual security boundary here. A JIT makes bypassing review easy which is why they don’t like it but bypassing review is pretty easy already just by writing your code in JavaScript and downloading it from the internet so there’s not much technical merit to the policy.
While not directly applicable to this case, it's worth noting that you cannot run Chrome on iOS, explicitly because it's a VM (in the sense that it executes user-defined code). That's why iOS Chrome uses WebKit, and not V8, as its rendering and JS engine.
I'm not sure what logic or system you're applying, but it seems categorically wrong. Java is a VM. JS has a VM. .NET has a VM. These are all virtual machines. They're their own execution engines running compiled user code.
I think your gatekeeping here is very technically incorrect. This isn't tone. This is what the industry actually has used for multiple decades now as terminology. Is the code being run natively compiled? No? Is it running in a machine which is virtual? It's a virtual machine. This has incredibly long precdence of terminology. It's been what Apple has gate-kept with for a long time now. I disagree with your tone policing, on a number of grounds.
Currently, you're limited to QEMU with software emulation or a Linux proot/chroot. KVM support isn't in a stable version of Android yet but it's coming soon. With an unlocked bootloader and potentially a few kernel tweaks you probably could (as well as Windows and any other compatible OS).
I don't think the experience will be very usable, though. iPhones contain dedicated hardware that Android devices don't have (and vice versa) and decent GPU acceleration may be a long time off with the standard driver quality Android vendors deliver.
Legally you 'can', but does apple have to support it? do they have to expose those apis to the public? are they forced to implement them and spend the time to do validation testing for it?
Hypervisor support on Windows is extremely expensive for Microsoft to maintain. Would Microsoft have a judgement against them if they removed it from e.g. Windows 12?
Before hyper-v there was Virtualbox, which is a "you can build it if you spend your time building it". I'm asking if the situation is that Apple must build their hyper-v equivalent, or if they just need to allow third parties to build and publish software-based emulation engines.
The judge ruled it was "fair use" because the VM's are used for security testing. The company behind this also requires you to register before they allow you to use the VM.
It's absolutely abusing market position, because it ends up being that in my profession, you end up purchasing mac computers for the whole office, because then you can target all platforms without any fuss. Not because the hardware or software has any merits, but because they artificially restrict these use cases so that's the only option to target a significant market.