[macos] macOS install script cleanup#4988
Conversation
There was a problem hiding this comment.
Pull request overview
This PR modernizes macOS packaging scripts and documentation by removing legacy packaging steps and updating launchctl usage to newer subcommands.
Changes:
- Replaced deprecated
launchctl load/unload -wusage withbootstrap/bootoutacross macOS install/uninstall scripts and docs. - Updated the preinstall macOS version check to use the full product version string (instead of only the major version).
- Removed the Homebrew OpenSSL rpath fixup script and its invocation from the macOS packaging flow.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| packaging/macos/uninstall.sh | Uses launchctl bootout instead of deprecated unload -w during uninstall. |
| packaging/macos/preinstall-multipassd.sh.in | Updates macOS version detection/check logic. |
| packaging/macos/postinstall-multipassd.sh.in | Uses bootout/bootstrap instead of unload/load -w when installing the LaunchDaemon. |
| packaging/macos/postinstall-multipass.sh.in | Removes legacy cleanup and uses explicit exit 0. |
| packaging/macos/postinstall-multipass-gui.sh.in | Fixes Applications path and uses explicit exit 0. |
| packaging/macos/install-ssl-libs.sh | Deleted (previously handled OpenSSL dylib relocation/rpath rewriting). |
| packaging/cpack.cmake | Removes invocation of the deleted install-ssl-libs.sh. |
| docs/how-to-guides/troubleshoot/troubleshoot-launch-start-issues.md | Updates troubleshooting commands to modern launchctl equivalents. |
| docs/how-to-guides/customise-multipass/configure-where-multipass-stores-external-data.md | Updates stop/start instructions to bootout/bootstrap. |
| docs/how-to-guides/customise-multipass/configure-multipass-default-logging-level.md | Updates stop/start instructions to bootout/bootstrap. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
fc47b27 to
bc8a4a8
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4988 +/- ##
=======================================
Coverage 87.60% 87.60%
=======================================
Files 274 274
Lines 14649 14649
=======================================
Hits 12832 12832
Misses 1817 1817 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Multipass no longer gets OpenSSL from brew. The linked GitHub is also for an outdated version of Qt and has also seen been patched.
bc8a4a8 to
067b61f
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
Comments suppressed due to low confidence (1)
packaging/macos/postinstall-multipass.sh.in:8
- Paths built from the installer destination root (
$3) should include a slash (and be quoted) so installs targeting a non-root volume don’t produce paths like/Volumes/MyDiskusr/local/bin. This script already uses$3/…in other macOS installer scripts.
### /usr/local/bin doesn't exist on a clean OSX install, yet it is in the default $PATH!
mkdir -p ${3}usr/local/bin
### Set up symlink to new multipass binary
ln -fsv "${3}@CPACK_PACKAGING_INSTALL_PREFIX@/bin/multipass" "${3}usr/local/bin/multipass"
Cleaning up some old macOS packaging scripts.