Live data from Hacker News

Virtualize OS X on Linux

grodola.blogspot.com

41–50 of 143 posts

Re: Virtualize OS X on Linux

#41
post #37
post #34

Earlier quoted context omitted.

That's the point. I don't want to have to ssh into it. However, since I can't legally virtualize MacOS on my laptop I'm forced to in order to make sure that my software works fine on MacOS. That's why I'm resentful toward Apple. They make it really difficult for people to develop cross platform applications that work on MacOS and the only response I tend to get is a smug, "Eh, just buy a Mac Book."

I'm just guessing here, but I don't think that Apple is all that interested in making it easier to develop cross-platform applications. From their point of view, the best applications are OS-specific ones. So if you want a Mac application, you're best coding on a Mac, with Mac tools, and within that hardware eco-system. From this point of view, the same argument applies with Windows, Linux, etc... (albeit with the ca…

Not only Apple, that was the culture in the 80 and 90's home computers, as you mention.

Which again is hardly different from UNIX culture, which doesn't matter what the hardware is capable of, as long as, it runs UNIX and given that the UNIX culture never cared for the desktop experience (Xlib and Motif really?!) that gives a clash of cultures.

Re: Virtualize OS X on Linux

#42
post #36

Earlier quoted context omitted.

You get all the Unix goodness you would get from Linux combined with the commercial polish you're used to from Windows (even more so).

Paradoxically, I find it easier to port applications to Windows than MacOS. Due to the efforts from the Cygwin and MSYS groups, just about every build script ports naturally to Windows. As long as I use MinGW, the resulting application is native and can be distributed. On MacOS, there's a bunch of quirks that make it harder to port. Environment variables are different enough to require duplication in scripts (DYLD_LI…

On MacOS, there's a bunch of quirks that make it harder to port. Environment variables are different enough to require duplication in scripts (DYLD_LIBRARY_PATH instead of LD_LIBRARY_PATH, unless we need DYLD_FALLBACK_LIBRARY_PATH.)

I use CMake and it's a walk in the park. I just install the dependencies using Homebrew. CMake adds all the necessary include/library flags and builds the application bundle. It's even much easier than Linux, where building a package on the next Ubuntu LTS is always a bit of a drag (updated dependencies, changed library paths, etc.).

Windows, in contrast, has been hell. Some of the dependencies of one particular project only compile with Visual Studio on Windows, not Cygwin/MingW. So, the only reasonable way to compile the application is to get VC++-compiled versions of zlib, libxml, etc. Since everything does not have canonical UNIX paths, you end up a lot of paths manually in CMake.

And then you have to deal with things such as VC's standard library not having getopt, etc.

For me, macOS is the most comfortable development environment by far. Except that they should put out a Mac Pro with replaceable GPUs again. I use CUDA a lot, so the only practical option is Linux.

Re: Virtualize OS X on Linux

#43
post #34
post #30

Earlier quoted context omitted.

Mac OS X is mainly a desktop OS and those of us that know Apple since the Mac Classic days don't have any issue with their desktop culture, which wasn't any different from the Atari and Amiga ones. I never sshed into them.

That's the point. I don't want to have to ssh into it. However, since I can't legally virtualize MacOS on my laptop I'm forced to in order to make sure that my software works fine on MacOS. That's why I'm resentful toward Apple. They make it really difficult for people to develop cross platform applications that work on MacOS and the only response I tend to get is a smug, "Eh, just buy a Mac Book."

> only response I tend to get is a smug, "Eh, just buy a Mac Book."

Of course.

Back in the day we had to buy Commodore 64, Spectrum, Spectrum +, Spectrum +2A, Spectrum +3, Atari ST, Atari Falcon, Amiga 500, Amiga 1200, PC, .... and Mac.

So those of us that enjoy a packaged experience of OS + Software + Dev Tools are more than used to it.

The culture of the hardware doesn't matter, just give me a CLI and a 2D frame buffer isn't the culture of the desktop computers.

Re: Virtualize OS X on Linux

#45

It's really sad that the only way to get macOS running in a virtual machine is with hacks and tweaks. I'm working on a cross platform desktop app written in Qt and while it should theoretically work on macOS I haven't had a chance to actually try it, because I don't own any Apple computers. Apple is shooting themselves in the foot.

It's how they enforce their monopoly. To the point of driving their market share down below mainstream.

Re: Virtualize OS X on Linux

#46

It's really sad that the only way to get macOS running in a virtual machine is with hacks and tweaks. I'm working on a cross platform desktop app written in Qt and while it should theoretically work on macOS I haven't had a chance to actually try it, because I don't own any Apple computers. Apple is shooting themselves in the foot.

> Apple is shooting themselves in the foot. How is that exactly? A huge majority of developers in your situation go out and buy a Mac; another hardware purchase in their pocket. This is part of their business strategy: developers are forced to participate, and by and large they do just that. It hurts you far more than it does Apple by refusing to participate. If you believe you're "hurting Apple" by not developing fo…

Everything you said is very true.

I think the only way it hurts Apple is that no one runs OSX Server anywhere. I'm willing to bet Apple doesn't have data centres filled with MacPros, but instead has proprietary internal hardware for servers running OSX.

OSX is terrible to run your services on compared to any other Linux/BSD variant out there with build-in package management. Apple is not tapping into that particular market, but considering how much they make off their consumer hardware I doubt it matters.

Re: Virtualize OS X on Linux

#47
post #30
post #27

Earlier quoted context omitted.

So I'm one of those developers that got forced into buying a Mac Mini in order to test my software on MacOS. On one hand, you're correct that Apple "won" because I was pushed into spending $500 on their hardware. On the other hand, the parent is very much correct. Candidly, I'm still angry at Apple for making their ecosystem a pain in the ass to work with. Hell, I would have paid good money to buy a MacOS virtualizat…

Mac OS X is mainly a desktop OS and those of us that know Apple since the Mac Classic days don't have any issue with their desktop culture, which wasn't any different from the Atari and Amiga ones. I never sshed into them.

And there are people talking about the "numbered" days of macOS. It's pretty crazy.

Re: Virtualize OS X on Linux

#48

Don't Apple EULAs forbid emulating OSX on non-Apple hardware? I might be mistaken, of course, but I think I recall something like that.

IIRC, it's even worse than that, the EULA forbids running OSX as a guest OS under a host OS that is not OSX.

I don't think this is correct - the Mac OS X server license said as long as it was running on Xserve hardware you were okay - we run and support macOS VMs on ESXi: https://kb.vmware.com/selfservice/microsites/search.do?langu...

Re: Virtualize OS X on Linux

#49
post #37
post #34

Earlier quoted context omitted.

That's the point. I don't want to have to ssh into it. However, since I can't legally virtualize MacOS on my laptop I'm forced to in order to make sure that my software works fine on MacOS. That's why I'm resentful toward Apple. They make it really difficult for people to develop cross platform applications that work on MacOS and the only response I tend to get is a smug, "Eh, just buy a Mac Book."

I'm just guessing here, but I don't think that Apple is all that interested in making it easier to develop cross-platform applications. From their point of view, the best applications are OS-specific ones. So if you want a Mac application, you're best coding on a Mac, with Mac tools, and within that hardware eco-system. From this point of view, the same argument applies with Windows, Linux, etc... (albeit with the ca…

Apples interest in making cross platform applications easier waxes and wanes with their market share. If I remember correctly, they were quite keen on java and making it work well at one point.

Re: Virtualize OS X on Linux

#50

Earlier quoted context omitted.

Why so?

You get all the Unix goodness you would get from Linux combined with the commercial polish you're used to from Windows (even more so).

For me "all the Unix goodness" is a proper package manager, an environment I can modify as much as I want and nowadays too an environment that doesn't have yearly big updates, but a rolling release.

My desktop has stayed exactly the same[0] for almost seven years already. My configs follow me from job to job and from computer to computer. I don't want or need changes, just an editor and a proper *nix kind of operating system and no changes ever how things look or work.

[0] http://i.imgur.com/aMHU8vu.png

Post reply on HN