What settings are you using to get 3d acceleration working with full panel resolution? I've tried dozens of settings/image combinations trying to get this to "work great" and have failed.
I’ve been using it to run Kali Linux ARM edition for the Pen-200 course. And it works really well, everything just feels snappy. My only grape is the scaling and hi-res screens is less refined than for example vm-guest tools from VMware. But these can be fixed from the guest vm itself.
Why?
I haven't ever used the iOS store, but having a git repo should befar better as an option so you can verify that it is made properly, and not infected with a little extra tracking and such whenever it's added to the iOS store.
a git repo isn't that useful if you have to buy a $1000 device to build it. There's plenty of people with iOS devices, but only linux laptop and desktop computers.
My understanding is that JIT support for faster emulation requires a developer debugging-related entitlement which is not available in distributed apps.
Great to hear! Quick question for you actually: what's the value prop of having VMs and containers in one? I've been having a hard time with that from a marketing perspective.
I think you'll find something you like in there :) To name a few: Performance, CPU usage/power efficiency, automatic domain names for containers, access to volumes and image files from macOS, native app, and more.
1) Runs containers / VMs ("linux machines"). Here you get a linux instance with access to your complete filesystem (everything is mounted), similar to I guess WSL
2) Full docker compatible + docker-compose
3) As of this week kubernetes support
Everything is blazing fast to start (think 100-200ms). Aside that, there's one thing that's awesome: networking.
Every container gets a unique IP. No more portmapping.
Every containers also gets a unique hostname (+ip) -> testapp.orb.local
Every every docker-compose gets a unique subdomain -> web.testcompose.orb.local
Hey, I just switched from Linux to MacOS and I wondered how to best set up a work environment on MacOS.
I don't really want to use brew as the sandboxing on MacOS seems to be much worse than I expected it to be e.g. as far as I see you can only prevent the access of $HOME/Desktop, $HOME/Documents and $HOME/Downloads.
I found out that using Canonical Multipass allows you to easily set up ubuntu VMs and this I think it is a good way to create a working environment for development and of course by using it one can improve the sandboxing as everything is executed inside a vm.
-------
Now to come to the point your OrbStack seems to be really similar to Canonical Multipass,
so I wondered how they do they compare to each other?
Why should I prefer to use OrbStack over Canonical Multipass (besides the possibility of being able to run other distributions than ubuntu)?
Personally I disagree with the "Major version upgrades". To me that what I want, you release a product, I buy it knowing what it contains and what it does. My expectations are that I get security fixes for some period of time, but other than that the "no new features" is a feature all on its own.
I might be in the minority, but I'd pay $150 up front, rather than a $8 per month, knowing full well that I might need to pay another $100 the next time macOS is updated. It's not the money as much as it is the mental overhead of yet another subscription.
Customers need to be able to keep track of their subscriptions and after four or five that's it, you lose track and the money just disappear out of your account every month. Say that: Well the App Store lists all your subscriptions... is missing the point, because not all of my subscriptions are going to be centrally managed by Apple, Google or some one else. Again, it might just be me, but I believe that companies are losing out on sales because they're not offering straight up purchases. There's just no way to track sales lost because of it, so it's not on anyone's radar.
Edit: I checked the pricing on VMWare Fusion, it was release in 2020, it might have been cheaper on release, but let's assume it's not, that's $199 up front, I'd still be able to us it and I'm saving money. I can then upgrade it for $99, but I don't have to, unless I also upgrade my laptop to an M-series. So it's cheaper for me to buy an objectively better product. I might even get a discount if I buy bulk licenses or I'm already a VMWare customer. I get why subscriptions are attractive to the developers, but they provide no value to the customer.
Appreciate the transparency. Fwiw, I don't understand from the FAQ what's your opposition to jetbrains model, which has been universally praised for its friendly compromise of user vs developer needs. As the other commenter mentioned, a) subscriptions get too many and b) subscription model means I have to keep paying forever. It makes it crystal clear I am not buying and I am not owning my tool.
(that being said, I always appreciate and recognize the freedom of producer to charge whatever model they choose to, there's no moral qualms here:)
And maybe it is! We'll have to see how this all works out. I could very well be wrong about that.
In my opinion, JetBrains' perpetual fallback model is more of a psychological thing than something you'd actually utilize — at least I'd never consider staying on an old version myself, but maybe that's just me.
I've also talked to other devs, who mentioned that users staying on ancient versions because they don't want to pay again can be a major support burden.
One thing worth considering is that I plan to offer (optional) cloud services integrated into the app.
OrbStack is also relatively high-maintenance due to all the components it bundles.
It's not that, it's like others have said up the thread – the mental overhead of subscriptions is super annoying. (Sure, not if it was the only subscription you have, but it isn't.)
I let Jetbrains lapse a lot. But certainly not when I am actively using it. If I start using it regularly again (which I do, intermittently over the years) then I subscribe again.
But the thing is, that also solves the elephant in the room that devs don't want to talk about: a huge portion of subscription revenues comes from providing absolutely no value at all to customers. It's people paying for a subscription, being too busy to notice the charges -- or worse, too busy to figure out how to cancel them even thought they do notice, and mean to.
And devs can claim this is ethical, because they disclosed the subscription recurrence, and the responsibility lies with the customer to track all their subscriptions diligently, across all their platforms and billing methods, and cancel them whenever they stop using them.
And some people do that. But most do not.
So the other way to look at it is that subscription software models are just a scam. A way to exploit people who lack the organization, or have two jobs and kids, or whatever — and get money out of them without providing any value at all. For months, or even years in many cases. Of course it is great for your bottom line. But is it ethical? Even if you think it is, is it a cool thing to do?
I think both arguments make sense. It is debatable.
But personally, I would only want to do subscription billing if I had some means (perhaps via opt-in telemetry) to automatically detect when the product hasn't been used at all during the billing period, and not charge anything in those cases.
> but I've explained why in the "Why a subscription?" box here
No you haven't, you've just regurgitated the usual argument made by people peddling subscriptions.
Its always the same old story, and charities do the same thing when seeking donation subscriptions...
The person selling the subscription says "oh, but its only $8 a month that's only half a Starbucks coffee"
Meanwhile, the REALITY for the person on the receiving end of the salesdroid is always the same ...."your sub is not the only thing going on with my life bud".
And its very true in IT, sub to this for $x, sub to that for $y, sub to that for $z, and soon enough you are "talking real money" as the old saying goes. And then if you are expecting the company to pay for an employee then that adds up exponentially in-line with the number of employees.
So, yeah, subscriptions suck ... for a real and valid reason.
Crazy for what seems to be an alternative GUI for Docker. It's almost as much as we pay for Parallels licenses so we can use Vagrant on Apple Silicon. There's nothing "slow and clunky" about these VMs either.
Of course, you're free to build your own with a VM and at least a couple months of full-time work to get the same feature set, just like with Dropbox :) Not saying it's for everyone.
Hasn't been that common of a request, and honestly I've never used Vagrant so not familiar with its benefits. People are already using OrbStack machines and its "orb" command to build dev envs with setup scripts, and cloud-init support will also be added: https://github.com/orbstack/orbstack/issues/38
I think cloud-init will be more useful since it's already widely used for setting up servers, whereas Vagrant is only for dev envs, but correct me if I'm wrong.
Plenty of companies use Vagrant. OrbStack's pricing is almost as much as an annual Parallels license for each of our devs. Most places using Vagrant will be using VirtualBox on Intel, or Parallels on Apple Silicon. So you haven't seen many requests because Vagrant users already have a solution and OrbStack wouldn't save enough money to ever switch to it.
As much as I think you should support Vagrant in your tool, that isn't the point I was making - whether it's worth supporting is something you need to decide for yourself.
The point I was making is this:
Your claim is
> No matter the use case, OrbStack has you covered with features
But you don't support a common, cross-platform tool that's been around for ages and is used for managing developer environments - including running containers.
Can you give an example? OrbStack currently sets up an IPv4+6 interface linked to a "unified bridge" with both the macOS host and other Linux machines on it, plus NAT to the outside world: https://docs.orbstack.dev/machines/network
You're also free to create your own interfaces on the Linux side, of course.
I realize that "for iOS" comes from the github project blurb., but I think that it's pretty misleading. The iOS installation options are basically a jailbreak (impossible on recent CPU/iOS versions) or semi-tethering and re-loading/signing the app every few days.
Just think about that. Apple has successfully made hardware that they can distribute to 1 billion+ people, many of whom have something to gain by jailbreaking, yet not a single person has managed it.
This isn't because the software is secure, it's because nation-state actors outbid both Apple and the rest of the community for exclusive access to software vulnerabilities. New vulns often don't hit the jailbreak community for months or even years after the NSA has already used them to rifle through your shit.
Furthermore, to achieve what the jailbreak community would consider a usable jailbreak, you need to string together several different vulnerabilities or bypasses into a single exploit chain. Nation-state actors will settle for just attacking iMessage directly, which gives them all your text messages, but is entirely useless for loading unsigned code or injecting tweaks into apps.
To make matters worse, the UK is mulling a bill that would give them veto rights on security updates, specifically so that their old exploits would continue to work until they've bought new vulns.
I keep pcap files of all my network traffic to protect myself against this. If anyone has been targeted by the NSA and can send me example traffic, then please do.
I so far haven't caught anyone doing anything nefarious, but with terabytes of traffic logged it's a bit of a needle in the haystack task. I keep the logs, because even if now their traffic is well hidden, I'm sure future analysis techniques will reveal them if they're there.
> I keep pcap files of all my network traffic to protect myself against this.
How does this work if you receive the payload via HTTPS? Do you MITM all your apps? (advanced version: can the payload be encrypted using an application-level Diffie-Hellman? e.g. if a JavaScript does a DH exchange and decrypts the payload with it)
Sorry, you store terrabytes of traffic, and then _also_ store all memory read/writes for all your browsing using a VM?
What tooling do you use to record the VM? I'm unable to, with simple googling, find any tooling for VMs to do this, with all my results either being point-in-time snapshotting or video recording related.
How much data does that generate in a month?
No offense, but this claim just sounds fantastical to me.
There's an app called reprosion that I've used in the past that can do the signing on your iOS device and even automate it. (I used it to load a semi-tethered jailbreak) The limit is 7 days.
The app itself doesn't have to be reinstalled, just the signing cert.
I am very excited for sideloading to get implemented in the EEA, since that'll make this much easier.
I used this a couple of weeks ago to install Windows 11 ARM on macOS (Ventura on a new M2), looking to replace Fusion. It was disappointing:
* Integration tools like copy/paste between VM and host, or file sharing, didn't work
* Graphics constantly glitched, often going to a grey screen. There seemed no way to recover, and I had to force restart the VM
The drivers / assistant tools have a 2012 date on them.
I'm aware it's a free product and I have no right to expect anything (and I don't; I went back to Fusion.) And perhaps the situation would improve if I or others financially supported the project, which seems a better response to issues :) Nevertheless I went in hoping I could replace the commercial VM solutions, which on Mac have required yearly updates that deliver almost no new value, with something open source -- and I can't yet.
I think the VM has to be switched off, not just suspended for the arguments to be editable. There are also some flags that UTM insists on and won't let you remove, which actually seems kind of reasonable - QEMU is really low-level and it's possible to run it in modes where UTM won't be able to connect to it.
I'm using the Fusion 13 Tech Preview, which has all of those bar file sharing, so I'm just using git to transfer :)
It has one glitch where the screen goes black sometimes when changing apps (maybe a new DirectX context or something), but that's easy to resolve by just resizing the window a few pixels to change the VM resolution. I usually use my VMs fullscreen so this is a slight adjustment to normal, but it's workable until they release Fusion 13's official version.
I think what would be amazing would be if one day it is possible to run macOS on an Apple Silicon iPad. This seems like it would be something that many people would want, so I guess there are technical issues preventing this. In another thread, the absence of JIT support has been mentioned for example.
Memory is another issue. There isn’t much extra TAM on the iPad. I ran UTM in my iPad Pro once and crashed it when trying to use a VM with too much RAM.
It works great for my needs. I mostly develop infrastructure automation and configuration tooling and I run all my VMs in terminal mode. The wide availability of arm64 distros and OSes makes this easy.
I also use it to run a tiny pi hole instance when I'm traveling.
May I recommend a Dell Wyse thin client from eBay as a replacement for the rPi? They can be had for around $30, and they come with an 8GB onboard eMMC storage as well.
What's the advantage of spinning up an entire VM to run a local Pi Hole instance instead of just setting up a firewall or using a browser blocker like uBlock Origin? I was under the impression that spinning up a Pi Hole instance is really only necesary if you own devices which don't allow for such things, like smart TVs and other internet-connected appliances.
UTM is great, and once snapshot capability is added [1] it will become my default recommendation for sure. Until then sticking with Parallels. NOTE: An unofficial snapshot manager exists [2].
Hah, I was going to say that I've successfully faked a limited form of snapshots using clonefile, and then turns out that's what the implementation-in-progress is doing.
As someone who would always practice the habit of doing development within VMs as opposed to my actual system for a number of reasons, I tried UTM and played with it for a long time to host ARM64 Linux VMs on my M1 Macbook Pro, however the file sharing issues plagued me - with the most common problem being, having my shared folders disappear suddenly from the guest VMs, and having to do workarounds to get them back, quite often. Next, I tried VMWare Fusion, but it has the same problem. After that I tried Parallels, which seemed too expensive, so I jumped to Lima.
I am glad to have found Lima - it also is based on QEMU and made bringing up linux VMs very easy and provided network sharing out of the box. Now all my development lies within these Lima VMs and I am happy to report I never had a problem. I know I could do display forwarding if needed but I am good with these headless instances for now (thanks to VSCode).
this seems like a perfect use case for NFS. zero network problems to mess with anything (because it's a virtual network between host and VM), it's very easy to set up, and it should be quite fast indeed. 9p would be another option, I suppose, though I don't know of any 9p servers for MacOS.
UTM has been a solid hypervisor for me for the past 2 years, and it's received several great functionality and feature improvements over that time too.
But perhaps my favourite aspect of UTM is that it stands for Universal Turing Machine (arguably the best name ever for a virtualization product).
If you're on apple silicon and the VM is x86, I agree the performance is abysmal. I'm pretty sure this is just a QEMU issue and not really the fault of UTM. If your VM is aarch64, the VM performance is amazingly great and I can't recommend UTM enough.
It only lacks support to spin up/down multiple VMs via a simple configuration file (like Vagrant, for instance). If I want to spin up a small lab with N VMs with specific private IPs and the like, UTM is not the most dev-friendly tool. I think there's place for some tool in between UTM and QEMU.
It’s impressive for what it is. But after noodling around with UTM and Fusion, I subscribed to Parallels, and it’s on a whole different level. I used it years and years ago to emulate x86 on PowerPC Macs, and it’s the gold standard. Night and day.
Work issued me an M1 MacBook Pro, but all my development is under Linux. Linux has been my preferred environment since the late 90s. While I find the MacBook Pro hardware to be nice, I find macos clumsy and frustrating, and my productivity severely drops.
So, I run Fedora (aarch64) under UTM full screen. It works acceptably well, and I often forget I'm on a mac.
I just wish macos would get out of the way, and not sometimes knock you out of full screen mode.
M1+ is quite fast hardware. If not for lack of hardware compatibility with projects based on x86/x64, it'd be the best option.
I think Parallells give you more, but I do a big window in UTM over 2 displays which works quite well and doesn't break rest of the OS X flow. Mic doesn't work, you occasionally have correct audio output, but OS X audio daemons sucks so it's a crapshoot if you get audio and where/how it's output. You don't get 3d accelleration I think, but haven't tried. It's not for games or Teams (neither is OS X).
But it works reasonably well for software that runs on arm64, which on Linux may limit you a bit. But you get to make things work either on OS X or Linux arm64, and the rest works well. You may not notice much overhead compared to OS X on M1+.
As with everything, you can make it work for you, but it's not for gaming, CAD, some proprietary or limited projects, etc. Should be fine for development and sysadmin stuff.
If something works on Linux arm64 on M1, it's quite well supported you might say. So you get to weed out some fluff, but also some nice things.
Given the multiple perf/$ boost of ARM on cloud hosts (e.g. AWS Graviton), that hardware compatibility can be put to work for recurring monthly profitability at the expense of helping OSS ecosystem learn that ARM exists.
I've found Rosetta works really well with VMs using Apple's Virtualisation framework, to the point that I've not had any issues building niche proprietary x86-only C++ libraries like network card drivers. The only annoyance was spoofing uname -m and/or setting architecture build flags everywhere since build systems will try to target arm64, but actually getting things to build was far less painful than I thought it would be. I'm thoroughly impressed.
The Linux -> macOS experience tbh is really either about putting up with macOS' issues and adjusting to them, or patching things up with third-party solutions to make it tolerable. Or a bit of both. I've learned to adapt to it since it's a shame to miss out on the reliable battery life.
Maybe there's a solution out there somewhere that would let you stay in full screen mode.
Maybe around once a week, sometimes twice? It's not so often, but on occasions when I have to, it's nice to have long, reliable battery life since they're usually the times when there's also a notable lack of power outlets, or it's inconvenient to set up to plug and charge.
But yeah, I can imagine myself in the same situations with UTM running nonstop and it'd still have enough battery life.
What specifically makes your productivity drop? I find having a terminal running bash on my mac is more or less same/same as being in linux. Occasionally the utils will not support a cli argument I am used to, but that's more of a versioning issue than a mac/linux issue, and one I have seen many times in my career sometimes just moving between boxes within a company.
The biggest headaches, though they aren't that big, is really about ARM vs x86, sometimes you will come across a package that just isn't supported on ARM, though that is increasingly rare.
Any time the file dialog opens in macos my productivity drops to 0 for a few minutes while I try to do basic things like go up a directory or open my home directory.
I wouldn't call it dramatic, I feel like windows and linux (Caja, specifically for me) are mostly intuitive and natural but Finder is bizarrely alien and unproductive. There's not a native version of Caja to install so finder kind of makes lost in general.
Also Samba shares seem to mount perfectly on windows/Caja but on Finder there is some weird issue where after it working a few days suddenly you can't connect unless you use the terminal.
Cmd+shift+g brings up a dialog where you can type arbitrary paths to jump to. Cmd+(up arrow) goes up a directory. Took me way to long to figure these out, seems small but they definitely are productivity boosters :)
I’d suggest that you lookup and learn keyboard shortcuts. Going up a directory is Cmd + Up Arrow, going to Desktop is Cmd + Shift + D, going to Documents is Cmd + Shift + O, going to Downloads is Cmd + Option + L, Cmd + Shift + G to bring a Go text input that understands ~ for home folder as well as autocompletes on tab, and so on. While macOS is not as keyboard friendly as Windows or Linux, it’s not totally devoid of it either.
If you’d like to have a more powerful experience with file dialogs, the paid application Default Folder X [1] is worth it.
I really don't like mac os's graphical shell. I am constantly frustrated by how terrible its window management and virtual desktop support is.
I also find developing on a mac is so frustrating. The package management experience is just such a downgrade.
And then there are the apps. All my daily apps are open source, and the apps I use just tend to work so much better on linux then on mac os (if they are even available on mac os!)
> Why you can’t toggle between different instances of the same app by default is beyond me.
I’m not entirely clear on what your requirement here is. Historically, Mac OS X/OS X/macOS has had a different app and windowing model compared to Linux. If you’re looking to switch between windows of a single app, you can use the keyboard shortcut Cmd + ~ (that’s Command and tilde). There are also trackpad gestures to see all windows of an application (swipe down with three or four fingers) and switch.
I’m not the OP, but for me I yearned for two things: my favourite window manager and a system whose source code was easily within reach. I rarely use the latter and the former is something I could be coaxed away from over time, but really there’s little reason to change from a free and open system in 2023 when everything works so well.
I make do with being an XPS peasant compared to the beautiful rounded rectangles used by my peers on the basis that my machine is completely available to me in every way possible thanks to source
code.
Rosetta works surprisingly well even on Apple's Virtualisation framework in Linux VMs. I've not come across a codebase that I can't develop locally on Apple Silicon in some capacity, whether that be on a VM or not. We've got a pretty annoying C++ repo to build that was very much written with the intention of only supporting x86 on Linux, and it wasn't too much of a hassle to set up an ARM Ubuntu VM through UTM and make a few minor tweaks to the build process (mainly just spoofing uname -m) to get things going.
Same goes for some .NET Framework apps we have; I've found an ARM Windows VM has been indistinguishable from x86 Windows.
- The ability to truly lock the mouse to the window.
I wanted to use it on my work provided machine, but when hooked up to my monitor, the performance was lacking (21:9, 1440p). Performance also felt the same across an M1 MacBook Air, an M2 MacBook Air, and an M2 MacBook Pro, so it felt like something was up, not that the machine just couldn't handle it.
Sadly, Parallels was the only thing I tried that performed well when connected to that monitor.
Since this is essentially QEMU: does anyone here have a working build of the QEMU guest utilities for Windows? No matter what one tries, they're all severely broken. Or alternatively, anything that can run Windows 7 x32 on an Apple Silicon machine.
(Why? Because I need to run Samsung ODIN, which is windows-only)
- UTM / Create New Virtual Machine / Virtualize / Other
- Select 'Skip ISO boot' / Continue
- Hardware / (adjust as needed) Continue
- Storage / (adjust as needed) Continue
- Shared Directory / Continue
- Select 'Open VM Settings' / Save
- Right-click on Devices/Display and select Remove
- Devices / New / Serial
- Drive / New / Import and select install73.img
- Edit the VM again and move the second VirtIO Drive to the first position by right-clicking on it and selecting 'Move Up'
If you feel inclined, hop on to the UTM Discord and the folks there (me included) should be able to help out.
I used UTM extensively when creating an almost-no-touch tool for developers to setup their Macbook devices at the company I work for.
There's really no other convenient way to do this. It was awesome to be able to run the tool on a fresh MacOS install, test the effects, make some changes, then do it all over again with little fuss.
What I don't like about Parallels and VMWare, is that they push all of those integrations between OS, like openings Windows from Windows in macOS. Or opening some documents from macOS right in Windows. I prefer to have VM isolated from my main macOS. So it is always going through all configurations and trying to figure out what I need to turn off.
170 comments
[ 3.4 ms ] story [ 230 ms ] threadThere are a bunch of VM images you can download at https://mac.getutm.app/gallery/
Not sure what is used underneath but it worked great for me.
colima is a layer upon lima that sets up a VM the easy way docker-machine/boot2docker style.
https://news.ycombinator.com/item?id=37334977
And a comparison: https://docs.orbstack.dev/compare/docker-desktop
I think you'll find something you like in there :) To name a few: Performance, CPU usage/power efficiency, automatic domain names for containers, access to volumes and image files from macOS, native app, and more.
1) Runs containers / VMs ("linux machines"). Here you get a linux instance with access to your complete filesystem (everything is mounted), similar to I guess WSL
2) Full docker compatible + docker-compose
3) As of this week kubernetes support
Everything is blazing fast to start (think 100-200ms). Aside that, there's one thing that's awesome: networking.
Every container gets a unique IP. No more portmapping.
Every containers also gets a unique hostname (+ip) -> testapp.orb.local
Every every docker-compose gets a unique subdomain -> web.testcompose.orb.local
-------
Now to come to the point your OrbStack seems to be really similar to Canonical Multipass, so I wondered how they do they compare to each other? Why should I prefer to use OrbStack over Canonical Multipass (besides the possibility of being able to run other distributions than ubuntu)?
Personally I disagree with the "Major version upgrades". To me that what I want, you release a product, I buy it knowing what it contains and what it does. My expectations are that I get security fixes for some period of time, but other than that the "no new features" is a feature all on its own.
I might be in the minority, but I'd pay $150 up front, rather than a $8 per month, knowing full well that I might need to pay another $100 the next time macOS is updated. It's not the money as much as it is the mental overhead of yet another subscription.
Customers need to be able to keep track of their subscriptions and after four or five that's it, you lose track and the money just disappear out of your account every month. Say that: Well the App Store lists all your subscriptions... is missing the point, because not all of my subscriptions are going to be centrally managed by Apple, Google or some one else. Again, it might just be me, but I believe that companies are losing out on sales because they're not offering straight up purchases. There's just no way to track sales lost because of it, so it's not on anyone's radar.
Edit: I checked the pricing on VMWare Fusion, it was release in 2020, it might have been cheaper on release, but let's assume it's not, that's $199 up front, I'd still be able to us it and I'm saving money. I can then upgrade it for $99, but I don't have to, unless I also upgrade my laptop to an M-series. So it's cheaper for me to buy an objectively better product. I might even get a discount if I buy bulk licenses or I'm already a VMWare customer. I get why subscriptions are attractive to the developers, but they provide no value to the customer.
(that being said, I always appreciate and recognize the freedom of producer to charge whatever model they choose to, there's no moral qualms here:)
In my opinion, JetBrains' perpetual fallback model is more of a psychological thing than something you'd actually utilize — at least I'd never consider staying on an old version myself, but maybe that's just me.
I've also talked to other devs, who mentioned that users staying on ancient versions because they don't want to pay again can be a major support burden.
One thing worth considering is that I plan to offer (optional) cloud services integrated into the app.
OrbStack is also relatively high-maintenance due to all the components it bundles.
I let Jetbrains lapse a lot. But certainly not when I am actively using it. If I start using it regularly again (which I do, intermittently over the years) then I subscribe again.
But the thing is, that also solves the elephant in the room that devs don't want to talk about: a huge portion of subscription revenues comes from providing absolutely no value at all to customers. It's people paying for a subscription, being too busy to notice the charges -- or worse, too busy to figure out how to cancel them even thought they do notice, and mean to.
And devs can claim this is ethical, because they disclosed the subscription recurrence, and the responsibility lies with the customer to track all their subscriptions diligently, across all their platforms and billing methods, and cancel them whenever they stop using them.
And some people do that. But most do not.
So the other way to look at it is that subscription software models are just a scam. A way to exploit people who lack the organization, or have two jobs and kids, or whatever — and get money out of them without providing any value at all. For months, or even years in many cases. Of course it is great for your bottom line. But is it ethical? Even if you think it is, is it a cool thing to do?
I think both arguments make sense. It is debatable.
But personally, I would only want to do subscription billing if I had some means (perhaps via opt-in telemetry) to automatically detect when the product hasn't been used at all during the billing period, and not charge anything in those cases.
No you haven't, you've just regurgitated the usual argument made by people peddling subscriptions.
Its always the same old story, and charities do the same thing when seeking donation subscriptions...
The person selling the subscription says "oh, but its only $8 a month that's only half a Starbucks coffee"
Meanwhile, the REALITY for the person on the receiving end of the salesdroid is always the same ...."your sub is not the only thing going on with my life bud".
And its very true in IT, sub to this for $x, sub to that for $y, sub to that for $z, and soon enough you are "talking real money" as the old saying goes. And then if you are expecting the company to pay for an employee then that adds up exponentially in-line with the number of employees.
So, yeah, subscriptions suck ... for a real and valid reason.
Of course, you're free to build your own with a VM and at least a couple months of full-time work to get the same feature set, just like with Dropbox :) Not saying it's for everyone.
You obv. haven't experienced the difference.
> No matter the use case, OrbStack has you covered with features that simplify your workflow and help you move faster.
Hasn't been that common of a request, and honestly I've never used Vagrant so not familiar with its benefits. People are already using OrbStack machines and its "orb" command to build dev envs with setup scripts, and cloud-init support will also be added: https://github.com/orbstack/orbstack/issues/38
I think cloud-init will be more useful since it's already widely used for setting up servers, whereas Vagrant is only for dev envs, but correct me if I'm wrong.
I'll bet there are many other companies with a similar thought.
Orb stack is too young to warrant piling on the tickets, vs just assuming it is immature.
The point I was making is this: Your claim is
> No matter the use case, OrbStack has you covered with features
But you don't support a common, cross-platform tool that's been around for ages and is used for managing developer environments - including running containers.
You're also free to create your own interfaces on the Linux side, of course.
https://github.com/utmapp/UTM/issues/2722
https://lima-vm.io/
https://github.com/abiosoft/colima
https://docs.getutm.app/installation/ios/#summary
Just think about that. Apple has successfully made hardware that they can distribute to 1 billion+ people, many of whom have something to gain by jailbreaking, yet not a single person has managed it.
Furthermore, to achieve what the jailbreak community would consider a usable jailbreak, you need to string together several different vulnerabilities or bypasses into a single exploit chain. Nation-state actors will settle for just attacking iMessage directly, which gives them all your text messages, but is entirely useless for loading unsigned code or injecting tweaks into apps.
To make matters worse, the UK is mulling a bill that would give them veto rights on security updates, specifically so that their old exploits would continue to work until they've bought new vulns.
I keep pcap files of all my network traffic to protect myself against this. If anyone has been targeted by the NSA and can send me example traffic, then please do.
I so far haven't caught anyone doing anything nefarious, but with terabytes of traffic logged it's a bit of a needle in the haystack task. I keep the logs, because even if now their traffic is well hidden, I'm sure future analysis techniques will reveal them if they're there.
How does this work if you receive the payload via HTTPS? Do you MITM all your apps? (advanced version: can the payload be encrypted using an application-level Diffie-Hellman? e.g. if a JavaScript does a DH exchange and decrypts the payload with it)
What tooling do you use to record the VM? I'm unable to, with simple googling, find any tooling for VMs to do this, with all my results either being point-in-time snapshotting or video recording related.
How much data does that generate in a month?
No offense, but this claim just sounds fantastical to me.
It also works without all that but doing so is just the slowest of the 3 ways to run it.
I am very excited for sideloading to get implemented in the EEA, since that'll make this much easier.
* Integration tools like copy/paste between VM and host, or file sharing, didn't work
* Graphics constantly glitched, often going to a grey screen. There seemed no way to recover, and I had to force restart the VM
The drivers / assistant tools have a 2012 date on them.
I'm aware it's a free product and I have no right to expect anything (and I don't; I went back to Fusion.) And perhaps the situation would improve if I or others financially supported the project, which seems a better response to issues :) Nevertheless I went in hoping I could replace the commercial VM solutions, which on Mac have required yearly updates that deliver almost no new value, with something open source -- and I can't yet.
I wanted to run some risv emulation, and I need to remove some device from the default args UTM has, and nope. Not editable.
Unless I'm missing something..
https://docs.getutm.app/guest-support/windows/#windows-xp-an...
I've also not seen any graphical errors, I'm not trying to play games though. I just use it for basic desktop apps.
Edit: The Fusion 2023 Tech Preview [1] installs the full VMware Tools and supports copy-paste.
1. https://customerconnect.vmware.com/downloads/get-download?do...
It has one glitch where the screen goes black sometimes when changing apps (maybe a new DirectX context or something), but that's easy to resolve by just resizing the window a few pixels to change the VM resolution. I usually use my VMs fullscreen so this is a slight adjustment to normal, but it's workable until they release Fusion 13's official version.
It works great for my needs. I mostly develop infrastructure automation and configuration tooling and I run all my VMs in terminal mode. The wide availability of arm64 distros and OSes makes this easy.
I also use it to run a tiny pi hole instance when I'm traveling.
That's such a good idea. I used to run one using a raspberry pi, which got lost during the house move, so would love to do that.
Is is better than running it via Docker, e.g. from the resource usage pov? Do you have any good resources/tutorial to share?
PS. In pre-Apple Silicon times I used it to play with old versions of Windows, but now DosBox seems like a better choice for Win 3.11 or 95.
1: https://github.com/utmapp/UTM/issues/5484
2: https://github.com/Metamogul/UTM-Snapshot-Manager
I am glad to have found Lima - it also is based on QEMU and made bringing up linux VMs very easy and provided network sharing out of the box. Now all my development lies within these Lima VMs and I am happy to report I never had a problem. I know I could do display forwarding if needed but I am good with these headless instances for now (thanks to VSCode).
as simple as `cp -c`
though if that were true, I guess it would be implemented already.
But perhaps my favourite aspect of UTM is that it stands for Universal Turing Machine (arguably the best name ever for a virtualization product).
Nothing beats Parallels on Mac, worth every penny.
One issue might be that only OpenGL 2.1 is supported: https://github.com/utmapp/UTM/issues/4285
[1] https://github.com/hashicorp/vagrant/issues/12518
[2] https://github.com/hashicorp/vagrant/issues/12518#issuecomme...
[3] https://github.com/hashicorp/vagrant/issues/12518#issuecomme...
So, I run Fedora (aarch64) under UTM full screen. It works acceptably well, and I often forget I'm on a mac.
I just wish macos would get out of the way, and not sometimes knock you out of full screen mode.
Surprisingly, the battery lifetime is still excellent.
I think Parallells give you more, but I do a big window in UTM over 2 displays which works quite well and doesn't break rest of the OS X flow. Mic doesn't work, you occasionally have correct audio output, but OS X audio daemons sucks so it's a crapshoot if you get audio and where/how it's output. You don't get 3d accelleration I think, but haven't tried. It's not for games or Teams (neither is OS X).
But it works reasonably well for software that runs on arm64, which on Linux may limit you a bit. But you get to make things work either on OS X or Linux arm64, and the rest works well. You may not notice much overhead compared to OS X on M1+.
As with everything, you can make it work for you, but it's not for gaming, CAD, some proprietary or limited projects, etc. Should be fine for development and sysadmin stuff.
If something works on Linux arm64 on M1, it's quite well supported you might say. So you get to weed out some fluff, but also some nice things.
https://www.theregister.com/2023/08/08/amazon_arm_servers/
https://developer.apple.com/documentation/virtualization/run...
Still excited to see progress but I’m probably not going to be able to use Linux on a Mac for another 12 months.
Maybe there's a solution out there somewhere that would let you stay in full screen mode.
Is the long battery life a feature you use often, or is it more of a "I'm glad it's there, just in case I need it" feature?
But yeah, I can imagine myself in the same situations with UTM running nonstop and it'd still have enough battery life.
The biggest headaches, though they aren't that big, is really about ARM vs x86, sometimes you will come across a package that just isn't supported on ARM, though that is increasingly rare.
Also Samba shares seem to mount perfectly on windows/Caja but on Finder there is some weird issue where after it working a few days suddenly you can't connect unless you use the terminal.
If you’d like to have a more powerful experience with file dialogs, the paid application Default Folder X [1] is worth it.
[1]: https://stclairsoft.com/DefaultFolderX/index.html
Click the parent directory or the home directory.
I also find developing on a mac is so frustrating. The package management experience is just such a downgrade.
And then there are the apps. All my daily apps are open source, and the apps I use just tend to work so much better on linux then on mac os (if they are even available on mac os!)
Why you can’t toggle between different instances of the same app by default is beyond me. But hey, we get more emojis!
I’m not entirely clear on what your requirement here is. Historically, Mac OS X/OS X/macOS has had a different app and windowing model compared to Linux. If you’re looking to switch between windows of a single app, you can use the keyboard shortcut Cmd + ~ (that’s Command and tilde). There are also trackpad gestures to see all windows of an application (swipe down with three or four fingers) and switch.
I make do with being an XPS peasant compared to the beautiful rounded rectangles used by my peers on the basis that my machine is completely available to me in every way possible thanks to source code.
Same goes for some .NET Framework apps we have; I've found an ARM Windows VM has been indistinguishable from x86 Windows.
- The serial window.
- The ability to truly lock the mouse to the window.
I wanted to use it on my work provided machine, but when hooked up to my monitor, the performance was lacking (21:9, 1440p). Performance also felt the same across an M1 MacBook Air, an M2 MacBook Air, and an M2 MacBook Pro, so it felt like something was up, not that the machine just couldn't handle it.
Sadly, Parallels was the only thing I tried that performed well when connected to that monitor.
(yeah, there's a single core speed improvement across generations, it's just not earth-shattering)
(Why? Because I need to run Samsung ODIN, which is windows-only)
Anyone have tips on how to boot OpenBSD with UTM?
OpenBSD won’t even initialize on UTM/AppleSilicon for me.
For OpenBSD, the installer works after adjusting the devices in the guest.
https://cdn.openbsd.org/pub/OpenBSD/7.3/arm64/install73.img
If you feel inclined, hop on to the UTM Discord and the folks there (me included) should be able to help out.There's really no other convenient way to do this. It was awesome to be able to run the tool on a fresh MacOS install, test the effects, make some changes, then do it all over again with little fuss.
Thanks UTM!