Matcha

From Bitpost wiki
Revision as of 23:32, 8 March 2023 by M (talk | contribs) (→‎Montery)

Matcha runs macOS Monterey in a melange VM.

Setup

Outside macOS

  • VM noVNC kinda works ok; press the Windows key if you need to switch between windows of the same application by then hitting the backslash ` key.

macOS the way I like it...

Keyboard

  • Install Karabiner-Elements key mapping tool, oh yeah
  • Click predefined rules by community, search for 'PC-Style Shortcuts' pack, wowza

(ok that didn't handle Ctrl-Insert (copy) so I tried this one instead

  • Go through all the macOS permissions loosening to allow it access - you will NOT REGRET IT
  • I could NOT find Ctrl-Ins that worked, even tho karabiner-windows-mode has TWO (they say you can't enable more than one but i tried them each separately).
  • So, edit the file at ~/.config/karabiner/karabiner.json (Windows-Shift-. to show hidden files)
  • You can find the karabiner-windows-mode overrides by searching for
"key_code":"insert",
  • Strip the conditions from it, and it will start to work!

Software

  • Finder
rclick in whitespace > Show View Options >
[x] Always open in list view, sorted by name, hit Use as Defaults
  • Install XCode, EFI Agent, meld, SF Symbols, Karabiner-Elements.
  • Pay $3 and install IconKit, saves hours of work to build stupid icon packs

macOS upgrade

Important! BEFORE UPGRADING macOS, you should visit Nick's site and read up on it first.

Ventura

I had to install the previous version, then do an upgrade.

Montery

Before starting, we need to upgrade to a new version of OpenCore.

Starting notes:

  • back up the VM! you will PROBABLY FUCK IT UP AND NEED TO RESTORE so DO IT.
  • Nick: If you had previously edited the serial number in config.plist, carry it over. < THIS
  • Nick: run ifconfig and verify you have an en0 adapter (not en1) (OK)

Update OpenCore:

  • "If you can boot macOS you can update from within it". That's what we will do.
diskutil list # and make note of the EFI disk
sudo mkdir /Volumes/EFI
sudo mount -t msdos /dev/disk0s1(or adjust...) /Volumes/EFI
brew install wget # that kicked off a big brew update --auto-update - fine
cd
mkdir -p development/OpenCore && cd development/OpenCore
wget https://github.com/thenickdude/KVM-Opencore/releases/download/v19/OpenCoreEFIFolder-v19.zip
unzip OpenCoreEFIFolder-v19.zip
mv EFI EFI-OCv19
cp -r /Volumes/EFI/EFI EFI-OC-older
  • scp both OC/config.plist files to cast and merge in old MLB ROM SystemSerialNumber and SystemUUID
💉 m@cast  [~/development] scp matcha:development/OpenCore/EFI-OCv19/OC/config.plist config.plist.OCv19
💉 m@cast  [~/development] scp matcha:development/OpenCore/EFI-OC-older/OC/config.plist config.plist.OC-older
# merge them and scp it back into Volumes
  • REBOOT and pray...

Installation

OpenCore VM

You can virtualize your old Mac hardware in a VM.  ;-)

You can follow thenickdude's latest guide with these secret sauce bits to get going. I'll add some notes since those might disappear...

  • Note that thenickdude's Monterey install wasn't working on July 3 2022, as it was pulling the wrong image from Apple. I used Big Sur and once running, immediately upgraded it to Monterey, which went flawlessly.
  • Set up a OpenCore VM with an unclaimed serial using SMBIOS iMacPro1,1 to match up well enough with my AMD Ryzen 9 3900X 12-core processor.
  • This helped to mount and access the EFI boot drive.
  • I used a macOS release of my old fave Meld

See here for more info:

💉 m@cast  [~/apps/macOs-on-proxmox] 
# ^ see readme.txt and install.sh
matcha HOME / apps
EFI Agent > icon in toolbar > EFI drive > mount > browse to OC > config.plist

macOS installation

  • Set the hostname via Apple > System Preferences > Sharing (two places)
  • Get MAC address from Apple > System Preferences > Networking and update dnsmasq to give out a static IP; renew lease on mac
  • Allow SSH: Apple > System Preferences > Sharing > check Remote Login; then you can do the usual ssh config
  • Update /etc/ssh/sshd_config to disallow passwords, and restart sshd:
sudo launchctl stop com.openssh.sshd
sudo launchctl start com.openssh.sshd
  • set a banner in ~/.zshrc