-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How does lume differ from lima? #10
Comments
right off the bat i see this is swift and lima is golang. Not sure of any real pro/con, but a swift project could be quite attractive if it better ties into the native api’s. Starred. |
@gvkhna VirtualBuddy is 97% Swift |
I took interest in |
@gromgit Good point, lima is targeting Linux from its name, so maybe macos vms are not in their interest. But VirtualBuddy and UTM both support macOS VM. My counterpoint may sound aggressive and skeptical, but it's pure curiosity about people redeveloping tools that already exist. |
I actually couldn’t get UTM to work last time i tried it, had to switch to qemu directly. This seems like an attempt at a more native lima/colima setup. I’m all for it, colima works fine but it’s still clearly very early. |
The main differences between Lume and Lima are that:
|
I appreciate @changhoon-sung @gvkhna @gromgit for starting this thread. What @sandrostar mentioned is spot on, and I’d like to add some more context around the reasoning behind this project: We created lume to meet our own bar for developing new OSS tools on Apple Silicon, which we’ll be announcing in the next few weeks. These tools will build on top of lume and pylume. While working on the north-star experience, we saw an opportunity to package the core solution as a CLI and local API server, and open-source it. We took that step, and the unexpected success of posting it on HN was a pleasant surprise. To clarify where we see lume today - and the direction we believe the support from the open-source community can take it moving forward:
UI Automation and Sandboxing are two key areas we’re focused on next. With the recent wave of general AI agents, there’s an increasing need for isolated environments to run experiments, or even for AI agents to interact with computer interfaces. Interestingly, we’ve already seen some comments on HN pointing out use cases around this, and we’re thrilled to share more soon. I’m happy to keep the issue open to discuss lume’s direction from here. |
@sandrostar @f-trycua Thank you for providing more context. I also believe that the local API server offered by lume is a key differentiator from other projects. Additionally, understanding this project as a foundation for future products rather than a standalone product makes more senses. I’m looking forward to the upcoming releases—wishing you all the best. I have a question and following sub questions: What are the use cases for leveraging macOS VMs?
|
Great work! That would require an intermediary VM, but are there any plans to support running x86_64 Linux VMs via Rosetta? Doing this with Lima is possible, but painful. A tool to do that with a simple command would be awesome. |
Sorry for the delay; GitHub was down in my region for most of the day yesterday! Let me address them one by one.
Yes. Some potential use cases requiring an isolated Darwin environment for application-level services (as suggested by HN users in the comments on our post):
For typical workloads, particularly CPU-related tasks, using lume with Apple’s
Yes, to an extent, plus Darwin application compatibility.
I guess it's a trade-off based on different needs.
Not that I can think of, but I haven’t fully wrapped my mind around it yet. It would be interesting to hear your thoughts. |
Hi @jedisct1 - although not (yet) documented, it should be supported with lume today: https://github.com/trycua/lume/blob/main/src/Virtualization/VMVirtualizationService.swift#L292 We haven't published any x86_64 images in the ghcr registry yet, so you would need to follow this guide to create a custom VM: https://github.com/trycua/lume/blob/main/docs/FAQ.md#how-do-i-install-a-custom-linux-image. Once prepared, you can clone it with I'm curious - what x86_64 distro would you like to see as part of our prebuilt images? |
Awesome!
Ubuntu-LTS (same as the current aarch64 image) and Alpine. |
I largely agree with your perspective. The majority of VM-based use cases fall under application isolation, as you mentioned, and the lack of an official container technology on macOS remains a limitation at this point. I also agree that VM usage can help address certain OS-dependent tasks, such as GUI and device testing, which require specific macOS versions. While I don’t personally have Darwin-dependent workloads, I acknowledge the challenges in this gap. I hope that Lume and the upcoming solutions can bridge this transitional period (I believe and hope this is a transitional period for macOS) and become valuable projects in this domain. |
We can see that there are quite a few macOS vz wrappers available. Some, like UTM, orbstack.dev, and VirtualBuddy, offer both CLI and GUI interfaces, while Lima stands out as a CLI tool with a strong community.
What advantages does
lume
have over these existing solutions? Explaining these differences would make your project more compelling.The text was updated successfully, but these errors were encountered: