Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

mikeboss

macrumors 68000
Original poster
Aug 13, 2009
1,546
862
switzerland
this is an interesting fork: https://github.com/brucehoult/SimpleVM
this one allows to use an extra disk image!

Screen Shot 2020-11-23 at 20.57.06.png
 

bill-p

macrumors 68030
Jul 23, 2011
2,929
1,589
And suddenly, that makes it far more useful than the initial project for me! Let's see if I can set up a proper local webserver now.
 

MK500

macrumors 6502
Aug 28, 2009
434
550
yeah, I saw that. but why? it's possible to SSH into the VM already. did I miss something?
I think the idea of his project is to run completely from the command line. Maybe useful if you want to spin up and down a bunch of these VMs? Just my theory, but I was a little confused as well.

Some skilled developer should seriously just build a “Parallels light” pretty app with easy virtual drive creation. Open source is great, but I think a lot of people would be more than happy to pay $5 or $10 for something like this. More if it had some rudimentary GPU support; some kind of OpenGL passthrough virtual GPU?

Linux on Mac is a somewhat niche audience; but for the next few months while we wait for gcc and then homebrew to be ported, I think it would be a popular app.
 

mikeboss

macrumors 68000
Original poster
Aug 13, 2009
1,546
862
switzerland
Some skilled developer should seriously just build a “Parallels light” pretty app with easy virtual drive creation. Open source is great, but I think a lot of people would be more than happy to pay $5 or $10 for something like this. More if it had some rudimentary GPU support; some kind of OpenGL passthrough virtual GPU?

there once was such an app, back when Apple first introduced their own hypervisor. sadly, they (Veertu) stopped development:

Screen Shot 2020-11-23 at 21.33.21.png
 

bill-p

macrumors 68030
Jul 23, 2011
2,929
1,589
Some skilled developer should seriously just build a “Parallels light” pretty app with easy virtual drive creation.

Easy virtual drive creation, file browser, etc... can be added to the current open source project easily.

But a graphical interface is not trivial. Apple isn't exposing too much in their virtualization framework. I don't see virtualization for GPU. Please correct me if I'm wrong.

Edit: looks like if you need a GPU, it's even lower level, and a lot more work:

I'll just leave this to Parallels or VMWare. They probably already have some old code base that can be tweaked to achieve this. The virtualization framework that Apple exposes currently only seems to work with Linux and only supports a CLI, ran through the serial port.
 
Last edited:
  • Like
Reactions: MK500

Stephen.R

Suspended
Nov 2, 2018
4,356
4,747
Thailand
They probably already have some old code base that can be tweaked to achieve this.


Parallels is already in the Mac App Store using hypervisor.framework. Zero chance it won’t be updated for arm if it isn’t already.

their non-MAS version has also had the option for using apples hypervisor for a little while now, presumably the non-mas arm version will only have that option.
 

MK500

macrumors 6502
Aug 28, 2009
434
550
I'm unable to install Ubuntu onto the additional image. the installer stops with an error:
Similar problem here. I created a disk image by doing:
Disk Utility -> File -> New Image -> Blank Image -> Size: 20gb, Format: FAT, Partition: no partition map

Using ubuntu-20.04.1-live-server-arm64.iso I was able to get quite a ways into the installation, and thought it maybe completed. But it rebooted back into the installer.

I can then go to the help menu and access a shell. I see that my 20GB volume is mounted and there are a lot of files there, but unsure why I cannot boot off of it. I was able to pull up an error log from the help menu that seems to have a detailed installation log...but it is HUGE. Not sure where the failure point is.
 

icymountain

macrumors 6502a
Dec 12, 2006
535
598
Fascinating news, I did not expect this to come so soon and in this fashion.

Makes me wish I had two things: an M1 and some time.
 

MK500

macrumors 6502
Aug 28, 2009
434
550
Parallels is already in the Mac App Store using hypervisor.framework. Zero chance it won’t be updated for arm if it isn’t already.

their non-MAS version has also had the option for using apples hypervisor for a little while now, presumably the non-mas arm version will only have that option.
It shows up in the App Store on my Intel Mac running Big Sur but does not show up in the App Store of my M1 Mac.

I pay for an annual license for Parallels on one of my Macs, but it would be nice if there was a less costly solution to just run CLI linux until gcc and homebrew are finished.
 

mikeboss

macrumors 68000
Original poster
Aug 13, 2009
1,546
862
switzerland
I know, this is not really helpful. but: the guy (@BruceHoult) who did the fork also was unable to boot from his image...

Screen Shot 2020-11-23 at 23.38.34.png
 
  • Sad
Reactions: MK500

Fomalhaut

macrumors 68000
Oct 6, 2020
1,993
1,724
- the ISO file needed: ubuntu-20.04.1-live-server-arm64.iso
- apart from the ISO, using disk images is not implemented.
- SimpleVM.app is only a proof-of-concept.
- it is possible to SSH into the VM.

get Keka.app from keka.io
extract the files in the ISO using Keka.app
rename "vmlinuz" to "vmlinuz.gz" and then uncompress it.

now you have all three files needed:
ubuntu-20.04.1-live-server-arm64.iso
vmlinuz (uncompressed)
initrd

start SimpleVM.app
drag and drop the three files into the window of SimpleVM

you now should see ubuntu booting in the serial console window
installation will of course fail because it can't find any suitable mass storage
in the help menu (ubuntu installer) you'll find the IP address, login and password to SSH into the VM
So this is just running the Ubuntu Live image directly from the .iso with a RAM-based volatile file system?
 

MK500

macrumors 6502
Aug 28, 2009
434
550
Last edited:

Fomalhaut

macrumors 68000
Oct 6, 2020
1,993
1,724

Stephen.R

Suspended
Nov 2, 2018
4,356
4,747
Thailand
No. GCC is different from Apple's compiler, which is LLVM. GCC is the standard for GNU software, and most Linux applications; so GCC is needed to support the wide variety of software homebrew has allowed us to install on macOS. So we are all hoping for GCC to come to Mx Macs soon.


I know what GCC is. But the "equivalent" of GCC for Apple's "own" build toolchain is not LLVM, it's clang.

They *used* to ship actual GNU gcc. Now they ship a GCC binary that is essentially clang.

I would be very surprised if xquartz won't compile with clang. I would also not be surprised if the brew "maintainers" insist on using GNU gcc, because every other decision they make is ass-backwards so why wouldn't that one be.
 

deconstruct60

macrumors G5
Mar 10, 2009
12,493
4,053
Could an x64 version of GCC run under Rosetta and cross-compile to arm64?

A compiler without a linker has limited usefulness. Emitting actual ARM65 opcodes isn't the hurdle. The application binary interface on macOS is different than the linker.

Need a complete 'target' platform tool chain. The x86 target for macOS specific stuff is different enough that need new adjustments for the toolchain.

"running" gcc (the compiler itself) and getting some output isn't the primary issue.
 
  • Like
Reactions: Fomalhaut

deconstruct60

macrumors G5
Mar 10, 2009
12,493
4,053
brew cask install xquartz

Isn't "Quartz" built on top of the OpenGL stack? Even if gcc comes along later this XServer is skating on thin ice on a new GPU that Apple isn't going to provide any fixes for if problems pop up ( OpenGL deprecated ) .
 

wyrdness

macrumors 6502
Dec 2, 2008
274
322
That's about 400 lines of code to get a proof-of-concept VM up and running. Impressive.
I notice from Twitter that someone's even managed to run x86 linux under SimpleVM using QEMU.

This is the sort of thing that I usually like playing with, though I'm too busy right now. A while back, I had x86 Ubuntu running in Docker on a Raspberry Pi 3, so I would expect Apple Silicon Docker to be able to also run x86 images.
 
  • Like
Reactions: pippox0

wyrdness

macrumors 6502
Dec 2, 2008
274
322
If you want a GUI, you could use a virtual frame buffer and vnc, such as xvnc. It's not going to be fast though.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.