autopkg / joshua-d-miller-recipes

My recipes for autopkg https://github.com/autopkg
13 stars 46 forks source link

Update Python path to reflect changes in macOS 12.3+ #126

Closed homebysix closed 2 years ago

homebysix commented 2 years ago

As of macOS Monterey 12.3, the version of Python 2 that shipped with macOS located at /usr/bin/python has been removed. More context can be found in some posts from Mac admins at the beginning of 2022, aggregated here.

Since version 2.0.2, AutoPkg's installer has included its own Python 3 framework, symlinked from /usr/local/autopkg/python. Similarly, Munki ships with its own Python 3 framework, symlinked from /usr/local/munki/munki-python. This pull request adjusts the shebang and interpreter paths of processors, pre/post install scripts, and other files to replace /usr/bin/python with the AutoPkg or Munki Python 3 symlinks as appropriate.

NOTE: Because AutoPkg processors are imported as modules by AutoPkg and not executed directly, processors' shebang has no effect in normal usage. However: (a) some people execute processors directly during testing, and these tests won't work unless the shebang points to a valid Python 3, and (b) having instances of /usr/bin/python in the codebase could lead to confusion for people not deeply familiar with processor behavior.

homebysix commented 2 years ago

Disregard — I'll open another PR without the Python autoformatting, for minimal diffs.