MacOS
Useful tools
I use a MacOS (Intel) on the side, so some tools that may be useful. Avoid exposing the system Python if possible, and use pyenv instead.
# Install brew # Refer to the official docs, typing here only for my convenience user:~$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" user:~$ brew update user:~$ brew install pyenv user:~$ brew install openssl readline sqlite3 xz zlib tcl-tk # MacOS from Catalina and up uses zsh instead of bash # so write the pyenv injections into .zshrc and .zprofile instead user:~$ echo $SHELL zsh user:~$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc user:~$ echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc\ user:~$ echo 'eval "$(pyenv init -)"' >> ~/.zshrc user:~$ cp ~/.zshrc ~/.zprofile
Difficult to find software that can read temperatures:
sudo powermetrics --samplers smc
: No smc sampler available- Can read out thermal percentage from some xdg thing, but no clear documentation on what this feature is
- Intel PCM is the successor to some Intel monitoring software, but there is a need to sign the kext with an Apple Developer ID. Troublesome...
- osx-cpu-temp does seem to work. Run
make
./osx-cpu-temp -c
reads CPU temp./osx-cpu-temp -a
reads ambient temp
For ffmpeg
installation, pull the static build for MacOS from FFMPEG website, then copy to /usr/local/bin
. Problem is MacOS has some extended permissions model, so need to (1) allow from "Privacy & Security" settings after running and being blocked once, (2) run it again and select allow on two additional pop-ups. Repeat for ffprobe
and ffplay
.
Other software:
- On-screen keystroke viewer:
Keycastr
works fantastic,brew install --cask keycastr
- OBS Studio: Just follow the instructions to give accessibility permissions.
Mounting volumes
Exceptionally great guide on using automount
utility to mount drives on boot, here. This is immensely useful is conveying stability of network share to Mac users who just want it to work.
> cat /etc/auto_master +auto_master ... /- auto_smb -nosuid,noowners /- auto_afp -nobrowse,nosuid > cat /etc/auto_smb /System/Volumes/Data/mount/{{MOUNT_DIR}} -fstype=smbfs,soft,noowners,nosuid,rw ://{{USERNAME}}:{{PASSWORD}}@{{IP_ADDRESS}}:/{{MOUNT_PATH}} # Set read-only (MacOS extended attributes for 'auto_master' to prevent overwrite) > sudo chmod 600 /etc/auto_smb > sudo chflags schg /etc/auto_master > sudo automount -cv
Think there is a non-command line method, but figured would be good to know the fundamentals.
Creating an ISO from the App image
Most of the content came from here. First download the MacOS installers from the App Store, links here.
# Create a filesystem (or is it disk image?), then attach and mount it user:~$ hdiutil create -o /tmp/Ventura -size 16384m -volname Ventura -layout SPUD -fs HFS+J user:~$ hdiutil attach /tmp/Ventura.dmg -noverify -mountpoint /Volumes/Ventura # Run script to write disk image contents to mount user:~$ sudo /Applications/Install\ macOS\ Ventura.app/Contents/Resources/createinstallmedia --volume /Volumes/Ventura --nointeraction user:~$ hdiutil eject -force /Volumes/Install\ macOS\ Ventura # Convert DMG to ISO user:~$ hdiutil convert /tmp/Ventura.dmg -format UDTO -o ~/Desktop/Ventura user:~$ mv ~/Desktop/Ventura.cdr ~/Desktop/Ventura.iso user:~$ rm -f /tmp/Ventura.dmg
https://klabsdev.com/definitive-guide-to-running-macos-in-proxmox
Running different OS on Apple devices
Changelog
- 2024-06-19: Init for Mac Mini (Intel, 2018)
Boot the computer. When the startup sound is heard, press and hold Alt
to open up the Startup Disk menu. Typically will have the main MacOS partition, as well as a "GRUB" MacOS recovery partition. The last one is probably the external boot you want.
Booting likely cannot be performed if the BIOS explicitly disables this, which is likely the default for Apple devices. In this case, first press and hold Cmd-R
(Win-R
) and then under the Utilities submenu open the "Startup Security Utility". The BIOS is locked with the admin user credentials of the MacOS.
- Set Secure Boot to "No Security", which does not enforce any restrictions on the OS that can be loaded (the other two options allow only OS signed by Apple to be loaded, and one even has a network verification).
- Set Allowed Boot Media to "Allow booting from external or removable media".