Cheetah: A Lightweight Virtual Machine Manager for macOS
macspot.net
macspot.net
not sure we need yet another one. a comprehensive comparison of all of them would be nice.
Before UTM came out I was using xhyve with a little custom scripting. Not a solution for the masses but good enough for me.
Also, plenty of people have hobbies. That’s why we have OSS.
That being said it's more likely you would look at $500.
> The other thing missing from your calculus to consider is that it’s a learning opportunity which offsets the actual time for creating it.
You are also learning while you are being paid for doing it.
> Also, plenty of people have hobbies. That’s why we have OSS.
OSS is being popularised by big corporations because it saves them money on R&D in the long run. Otherwise they would have to pay for a lot of development of projects that would not necessarily be a success within the company. Instead they can pick and choose from projects already "preselected" for them by the community and written by gullible developers who are unlikely going to get even a tiny fraction of money made on their software.
Don't get me wrong OSS is great, but it should be illegal for businesses to use it without paying royalties, otherwise it's just a pure exploitation.
For some reason there is this notion "if it is a someone's hobby then they shouldn't charge money for it". In my country you have to at least pay someone a minimum wage.
I mostly run open source at this point because I'm also tire of everything commercial having telemetry built in.
This crap has to stop. I’ve stopped paying for subscriptions. Hopefully I’m not the only one and revenues will be impacted enough for developers to react.
I’m sure I’ll draw substantial ire from developers here who depend on the subscription model but I don’t really care. You have monthly expenses for your AWS services? Mom & pop pay for rent. Unlike them you can probably re-architect your app to rely on on-device processing. I’m through with this crap.
As an average Joe, if I see a one-off fee of $60, it seems like a lot of money upfront and makes the decision hard and may be if I stall a but, I will forget about the whole thing by next weekend.
Compare that to $5/month, doesn’t look so bad, I spend that amount for a good coffee and donut daily… let me enter my credit-card there… eventually I forget about this in one week but am continued being charged and there are too many little charges for me to go over and figure out where my money is going.
This subscription model is a psychology hack to reduce the resistance of general people and not targeted at us, who try to be extra cautious about the value proposition over long term.
P.S. I attended some marketing fluff seminar from big honcho sales people as part of business trip, thought I’d share it about where this sudden rise of subscription model came from.
If it's set correctly, and the software is actually valuable enough to be worth something, there's a more balanced tradeoff between the risk of overpaying and underpaying and the benefit of the subscription acting like an inexpensive trial that will likely convert to a one-time purchase if the buyer is budget-minded.
(That said, it's certainly true that you can approach the same pricing strategies fairly or greedily; I've overheard both.)
Yes, Cheetah is just another GUI wrapper of the Virtualization.framework. It was mainly created for my personal needs. The original version was modified from Apple’s sample code with the Objective-C version in 2022. I want it to be able to run in the background, managed from the Menu Bar, and easily configurate the settings, not only for the number of compute units or memory size, but more importantly, the hard disk size. Cheetah is an updated version that I developed this summer, starting around Aug 10th with SwiftUI. As a developer, I always strive to learn new stuff every year. So basically speaking, when compared to other existing solutions based on Virtualization.framework, there isn't much difference, unless the feature could make my life easier (e.g., detecting the assigned IP address, keeping the instance running in the background after closing the GUI window).
I spent around two or three hours after work every day in the past two weeks to make it available for download from the Mac App Store. I know there are just a few people still making Mac Apps since people are more likely to pay for and install apps on their phones. I do not expect this app to make me rich, but I need to pay the Apple Developer account bills every year. So, the subscription price is $4.99 per year (not monthly) if you want to run more than two instances (please note that due to Apple’s license, you can only run two macOS virtual instances at the same time; subscribing to Cheetah does not enable you to bypass this restriction). That means $500 is enough for you to use it for 100 years.
As I said, it is not something to make big money, and I haven’t spent too much time on it so far. The product description is generated by ChatGPT since I am not a native English Speaker, and the Logo is generated by stable diffusion. I would appreciate it if anyone could help with the docs or app Logo. All the remaining icons are from SF Symbols. I would like to keep it as small as possible (as you know Apple’s storage is expensive) to expose macOS’s Virtualization feature to everyone in a simple way as a gift (for free within two instances).
Currently, Cheetah has about 6000 lines of code, with 55% written in Swift and 45% in Objective-C. I’ll continue to keep it small and simple, as light as possible. I won’t add new features for running other guest OS unless Virtualization supports it, as there are already many other tools like UTM that already support it. I might invest some time in the future to make it work for Apple silicon to run FreeBSD if I have the time.
Please feel free to comment, provide suggestions, or ask questions.
We gave up and bought a few mac minis. Does anyone know if those issues have been solved by cheetah, or some of the other virtual machine managers mentioned by @dinkblam?
Edit: in UTM my serial number is completely different from the host.
you can see how they build tart here, including signing and entitlements and so on: https://github.com/cirruslabs/tart/blob/main/.cirrus.yml
I haven’t found any solution I like all that much…
the lack of screenshots, lack of detailed explanations about how it works makes me really think this is just a trojan horse or honeypot type of application that has ulterior motives.
The mention of x86 on that page is about running x86-64 compiled Linux binaries inside an Linux ARM virtual machine.
Here’s Apple’s documentation on the mechanism: https://developer.apple.com/documentation/virtualization/run...
This is no different to WSL 2, which doesn't require dual booting, migrating or moving OSes. It seems fast enough and the integration gets out of the way.
I'd rather have full support for VMs on macOS today with all the apps, than fully migrate to Asahi and wait for them to fix their issues on top of the Linux desktop issues getting in the way.
If I ever want an arm server for a homelab, I'll rather wait for something made specifically to run Linux with full upstream support (meaning SBBR/UEFI). A NUC-like thing would surely be a way to go.
My main point was that Apple has few inherent advantages over third-party VMMs like QEMU; it just happens to be better than the current off-the-shelf alternatives. (Apple's restrictions around Rosetta and private ISA extensions are an exception, making it significantly less appealing to use anything else in practice.)
If not for Rosetta I would've most likely written (or at least made plans to write) a custom VMM forked from an OSS one for OrbStack. My early experiments have shown that quite a few improvements are possible.