foxlet / macOS-Simple-KVM

Tools to set up a quick macOS VM in QEMU, accelerated by KVM.
13.55k stars 1.14k forks source link

What has to change for the public macOS Catalina release? #94

Closed janniks closed 4 years ago

janniks commented 4 years ago

Recently macOS Catalina has been released publicly...

https://github.com/foxlet/macOS-Simple-KVM/blob/e0ffb88a2e60c6f0f4c5520468070fcf0426c7d5/jumpstart.sh#L34-L35

foxlet commented 4 years ago

There's no plans to support it until after release.

janniks commented 4 years ago

Sorry, my bad - I thought it had already been released... 🙈

foxlet commented 4 years ago

It has been enabled. Catalina

breznak commented 4 years ago

This could be closed?

konsumer commented 4 years ago

If I run ./jumpstart.sh --catalina I get HighSierra:

Requirement already satisfied: requests in /usr/lib/python3/dist-packages (from -r requirements.txt (line 1)) (2.21.0)
Requirement already satisfied: click in /home/konsumer/.local/lib/python3.7/site-packages (from -r requirements.txt (line 2)) (7.0)
2019-10-19 22:36:51,748 Network Request: Fetching https://swscan.apple.com/content/catalogs/others/index-10.15-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog
2019-10-19 22:36:53,915 Selected macOS Product: 041-91758
Fetching BaseSystem/BaseSystem.dmg ...  [####################################]  100%          

dmg2img v1.6.7 (c) vu1tur (to@vu1tur.eu.org)

/storage/virtual/mac-catalina/macOS-Simple-KVM/tools/FetchMacOS/BaseSystem/BaseSystem.dmg --> /storage/virtual/mac-catalina/macOS-Simple-KVM/BaseSystem.img

decompressing:
opening partition 0 ...             100.00%  ok
opening partition 1 ...             100.00%  ok
opening partition 2 ...             100.00%  ok
opening partition 3 ...             100.00%  ok
opening partition 4 ...             100.00%  ok
opening partition 5 ...             100.00%  ok
opening partition 6 ...             100.00%  ok
opening partition 7 ...             100.00%  ok

Archive successfully decompressed as /storage/virtual/mac-catalina/macOS-Simple-KVM/BaseSystem.img

Screenshot from 2019-10-19 22-42-03

Masamune3210 commented 4 years ago

Asking for Mojave will grab Catalina instead as well

konsumer commented 4 years ago

I get the same Selected macOS Product: 041-91758 for both. When I ask for mojave, I also get HighSierra.

./jumpstart.sh --catalina: Screenshot from 2019-10-19 22-42-03

./jumpstart.sh --mojave: Screenshot from 2019-10-19 22-59-53

When I ask for high-sierra, I get an error:

./jumpstart.sh --high-sierra
Requirement already satisfied: requests in /usr/lib/python3/dist-packages (from -r requirements.txt (line 1)) (2.21.0)
Requirement already satisfied: click in /home/konsumer/.local/lib/python3.7/site-packages (from -r requirements.txt (line 2)) (7.0)
2019-10-19 23:00:38,752 Network Request: Fetching https://swscan.apple.com/content/catalogs/others/index-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog
Product ID 091-95155 could not be found.
konsumer commented 4 years ago

The upstream script seems to work OK, though:

./fetch-macOS.py 
 #    ProductID    Version    Build   Post Date  Title
 1    061-32950    10.15.1   19B77a  2019-10-17  macOS Catalina Beta
 2    061-21551    10.14.6   18G103  2019-10-07  macOS Mojave
 3    041-47723    10.14.4  18E2034  2019-03-25  macOS Mojave
 4    041-91758    10.13.6    17G66  2019-10-19  macOS High Sierra
 5    061-26589    10.14.6   18G103  2019-10-14  macOS Mojave
 6    061-31564      10.15   19A602  2019-10-15  macOS Catalina
 7    061-26578    10.14.5  18F2059  2019-10-14  macOS Mojave

# I chose 6

cd ../macOS-Simple-KVM
./tools/dmg2img ../OSX-KVM/BaseSystem.dmg "$PWD/BaseSystem.img"
./basic.sh

Screenshot from 2019-10-19 23-20-41

konsumer commented 4 years ago

This works, too:

./tools/FetchMacOS/fetch.sh -p 061-31564
./tools/dmg2img ./tools/FetchMacOS/BaseSystem/BaseSystem.dmg BaseSystem.img

Should I make a PR for it?

foxlet commented 4 years ago

There is no upstream project, that script is not related to the one here. There's some rewrites in the pipeline, but not for the immediate moment.

konsumer commented 4 years ago

Looking closer at the 2 scripts, although they do the same thing (and are named the same thing) your style is much more succinct, and I see now that yours is a separate thing.

I can do a ./tools/FetchMacOS/fetch.sh -p 061-31564 for my stuff, to get Catalina installed, just trying to make sure you were aware that jumpstart.sh doesn't download the stated versions, as it is. Using your script mojave & catalina download high-sierra, and high-sierra causes an error.

konsumer commented 4 years ago

Also, how is my comment above "Off Topic"? I used the other script (that is named the same, and basically does the same thing, and existed 2 years before yours) to get the correct product-id which I used with your script, to make it work. If you maintain that yours isn't derived from that, fine, but it's totally relevant to the issue.

foxlet commented 4 years ago

Said fetching mechanism didn't exist 2 years prior to mine, you can check their git history to see when it was placed on their repository. They used my project as a basis to rewrite theirs, and left a "reference" at the bottom of their ReadMe.

foxlet commented 4 years ago

I'm aware of the issue, but I also don't want anyone to conflate or create association with the other project, as I have no control over what they do. There's nothing wrong with the report otherwise.

konsumer commented 4 years ago

I think there are a couple misunderstandings, here.

Said fetching mechanism didn't exist 2 years prior to mine

Ah, yes, I see it was added May 23, 2019. They even link to your script, in theirs (but use different URLS.) Sorry for the confusion.

I'm aware of the issue, but I also don't want anyone to conflate or create association with the other project, as I have no control over what they do. There's nothing wrong with the report otherwise.

I meant a PR for your repo. I could quickly add the above -p 061-31564 (and 061-26589 and 041-91758, which I got from their script's output) to your jumpstart script, to make it work again. I started writing my own that works fine with those 3 versions of OSX, but includes support for non-linux host-systems. I'll just use that. I'm combining ideas from both for my own fetch script. I appreciate your work.