Use install-info from texinfo if not available in /usr/bin

`install-info` is not shipped with macOS Ventura and some Linux
distros. This commit uses `install-info` from `texinfo` formula if it
is not available in `/usr/bin`.

See: https://github.com/Homebrew/discussions/discussions/4306
This commit is contained in:
Ruiyang Wu 2023-03-14 13:41:46 -04:00
parent e89492fc38
commit 4ac228cc41

View File

@ -343,14 +343,24 @@ class Pathname
chmod saved_perms if saved_perms
end
# @private
def which_install_info
@which_install_info ||=
if File.executable?("/usr/bin/install-info")
"/usr/bin/install-info"
elsif Formula["texinfo"].any_version_installed?
Formula["texinfo"].opt_bin/"install-info"
end
end
# @private
def install_info
quiet_system "/usr/bin/install-info", "--quiet", to_s, "#{dirname}/dir"
quiet_system(which_install_info, "--quiet", to_s, "#{dirname}/dir")
end
# @private
def uninstall_info
quiet_system "/usr/bin/install-info", "--delete", "--quiet", to_s, "#{dirname}/dir"
quiet_system(which_install_info, "--delete", "--quiet", to_s, "#{dirname}/dir")
end
# Writes an exec script in this folder for each target pathname.