gh-91629 Use conf.d configs and fish_add_path to set the PATH when installing for the Fish shell. (GH-91630)

Co-authored-by: Erlend E. Aasland <erlend@python.org>
diff --git a/Mac/BuildScript/scripts/postflight.patch-profile b/Mac/BuildScript/scripts/postflight.patch-profile
index 68b8e4b..9caf622 100755
--- a/Mac/BuildScript/scripts/postflight.patch-profile
+++ b/Mac/BuildScript/scripts/postflight.patch-profile
@@ -77,16 +77,17 @@
 	fi
 	;;
 fish)
-	CONFIG_DIR="${HOME}/.config/fish"
-	RC="${CONFIG_DIR}/config.fish"
+	CONFIG_DIR="${HOME}/.config/fish/conf.d/"
+	RC="${CONFIG_DIR}/python-${PYVER}.fish"
 	mkdir -p "$CONFIG_DIR"
 	if [ -f "${RC}" ]; then
 		cp -fp "${RC}" "${RC}.pysave"
 	fi
-	echo "" >> "${RC}"
-	echo "# Setting PATH for Python ${PYVER}" >> "${RC}"
-	echo "# The original version is saved in ${RC}.pysave" >> "${RC}"
-	echo "set -x PATH \"${PYTHON_ROOT}/bin\" \"\$PATH\"" >> "${RC}"
+	echo "# Setting PATH for Python ${PYVER}" > "${RC}"
+	if [ -f "${RC}.pysave" ]; then
+		echo "# The original version is saved in ${RC}.pysave" >> "${RC}"
+	fi
+	echo "fish_add_path -g \"${PYTHON_ROOT}/bin\"" >> "${RC}"
 	if [ `id -ur` = 0 ]; then
 		chown "${USER}" "${RC}"
 	fi
diff --git a/Misc/NEWS.d/next/macOS/2022-04-17-01-07-42.gh-issue-91629.YBGAAt.rst b/Misc/NEWS.d/next/macOS/2022-04-17-01-07-42.gh-issue-91629.YBGAAt.rst
new file mode 100644
index 0000000..13f3336
--- /dev/null
+++ b/Misc/NEWS.d/next/macOS/2022-04-17-01-07-42.gh-issue-91629.YBGAAt.rst
@@ -0,0 +1 @@
+Use :file:`~/.config/fish/conf.d` configs and :program:`fish_add_path` to set :envvar:`PATH` when installing for the Fish shell.