Hacker News new | ask | show | jobs
by ShakataGaNai 2237 days ago
You cannot run macOS virtualized on anything but Apple hardware. It's against the Apple Terms of Service. Is it technically possible to do? Yes. However most companies will not do so because that's ground for getting sued, or having your developer licenses revoked.

For the same reason as macOS games must be build on Apple machines, iPhone and iPad applications must also be build on Apple hardware. There is an entire market of companies that rent out "server farms" of MacMini's in datacenters for this exact reason. It massively raises the cost and complexity of a modern development/integration system to have "special snowflakes".

As it comes to hardware, the problem is you can't get something "reasonable". You can build a $500 Windows compatible PC that's not half bad. You can stick a low in Nvidia RTX card in that (for a few hundred more) and get some really reasonable gaming performance out of it. However to get an RTX level gaming performance out of a mac... you're out however much it cost to buy the new MacPro... so let's call that $10k. Most normal people are not going to pay that.

1 comments

Sure, you're right about running macOS on non apple hardware but I know a lot of windows user do that and if you're a serious developer why not just buy an apple computer. I really doubt the cost of the apple computer to then compile isn't going to be paid off from macOS users if the game is any good.

Renting out a mac mini isn't raising the cost or complexity to something unreasonable either. It's like people are forcing their ideology upon a company that decided whats best for itself.

The hardware comment your wrote in regard to mine is cherry picking out the part where apple users know they're overpaying for the hardware they get.

There are quite a number of costs here relating to the "why not buy an apple computer" point. I know because I paid them in both previous jobs and as a sole developer.

Firstly, the hardware cost. It's expensive and slow, but for a business it's a justifiable expense. The real cost is in the ongoing hosting and maintenance. Keeping Mac minis or whatever in a datacentre is a costly waste of space. There's zero remote management, and any failure means a trip to visit the system along with a monitor to hook it up to. Then there's the ongoing system administration cost, keeping it updated, keeping the development tools and build dependencies current. This is an ongoing expense.

Typically, if you need to keep clean environments you need to virtualise, and this means using VMware Fusion or similar. It makes a slow Mac mini system even slower. But if you need to support multiple MacOS versions, or multiple environments, what other choice do you have? It's not like there's a containerisation system for MacOS.

Every other platform can be run virtualised on big metal, like VMware and OpenStack clusters. Linux, BSD, Windows, everything we need to care about. MacOS is a special snowflake exception. This nonconformity adds costs.

As for renting. It's bloody expensive for very little in return. That entire market segment exists solely due to how terrible the hardware and software licensing options are. And the hardware and software procurement and management pain is reflected in the uncompetitive pricing. If Apple offered a developers-only generic VM licence for MacOS this market would vanish overnight.

As a single developer, that's an incremental cost that would be hard to justify for a small potential market.

As a company, adding an additional different testing infrastructure (rent a macmini farm) with the additional pipeline costs (setup, build pipeline etc) as well as the additional opex, again, for a small potential market, is not economical.