Support for BusyBox version of `head' (#2629)

This commit is contained in:
Florian Schüller 2023-02-22 18:11:48 +01:00 committed by GitHub
parent 86a4423bbb
commit 68918e69b7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 14 additions and 14 deletions

View file

@ -29,7 +29,7 @@ if enable -f "${BASH_SOURCE%/*}"/../libexec/pyenv-realpath.dylib realpath 2>/dev
else else
[ -z "$PYENV_NATIVE_EXT" ] || abort "failed to load \`realpath' builtin" [ -z "$PYENV_NATIVE_EXT" ] || abort "failed to load \`realpath' builtin"
READLINK=$(type -P greadlink readlink | head -1) READLINK=$(type -P greadlink readlink | head -n1)
[ -n "$READLINK" ] || abort "cannot find readlink - are you missing GNU coreutils?" [ -n "$READLINK" ] || abort "cannot find readlink - are you missing GNU coreutils?"
resolve_link() { resolve_link() {

View file

@ -46,7 +46,7 @@ extract_initial_comment_block() {
collect_documentation() { collect_documentation() {
# `tail` prevents "broken pipe" errors due to `head` closing the pipe without reading everything # `tail` prevents "broken pipe" errors due to `head` closing the pipe without reading everything
# https://superuser.com/questions/554855/how-can-i-fix-a-broken-pipe-error/642932#642932 # https://superuser.com/questions/554855/how-can-i-fix-a-broken-pipe-error/642932#642932
$(type -P gawk awk | tail -n +1 | head -1) ' $(type -P gawk awk | tail -n +1 | head -n1) '
/^Summary:/ { /^Summary:/ {
summary = substr($0, 10) summary = substr($0, 10)
next next

View file

@ -26,7 +26,7 @@ if ! enable -f "${BASH_SOURCE%/*}"/pyenv-realpath.dylib realpath 2>/dev/null; th
echo "pyenv: failed to load \`realpath' builtin" >&2 echo "pyenv: failed to load \`realpath' builtin" >&2
exit 1 exit 1
fi fi
READLINK=$(type -P greadlink readlink | head -1) READLINK=$(type -P greadlink readlink | head -n1)
if [ -z "$READLINK" ]; then if [ -z "$READLINK" ]; then
echo "pyenv: cannot find readlink - are you missing GNU coreutils?" >&2 echo "pyenv: cannot find readlink - are you missing GNU coreutils?" >&2
exit 1 exit 1

View file

@ -34,7 +34,7 @@ if ! enable -f "${BASH_SOURCE%/*}"/pyenv-realpath.dylib realpath 2>/dev/null; th
exit 1 exit 1
fi fi
READLINK=$(type -P greadlink readlink | head -1) READLINK=$(type -P greadlink readlink | head -n1)
if [ -z "$READLINK" ]; then if [ -z "$READLINK" ]; then
echo "pyenv: cannot find readlink - are you missing GNU coreutils?" >&2 echo "pyenv: cannot find readlink - are you missing GNU coreutils?" >&2
exit 1 exit 1

View file

@ -59,7 +59,7 @@ usage() {
definitions() { definitions() {
local query="$1" local query="$1"
python-build --definitions | $(type -P ggrep grep | head -1) -F "$query" || true python-build --definitions | $(type -P ggrep grep | head -n1) -F "$query" || true
} }
indent() { indent() {

View file

@ -58,7 +58,7 @@ lib "$1"
resolve_link() { resolve_link() {
$(type -P greadlink readlink | head -1) "$1" $(type -P greadlink readlink | head -n1) "$1"
} }
abs_dirname() { abs_dirname() {
@ -102,7 +102,7 @@ os_information() {
source /etc/os-release source /etc/os-release
echo "$NAME" $VERSION_ID echo "$NAME" $VERSION_ID
else else
local os="$(cat /etc/{centos,redhat,fedora,system}-release /etc/debian_version 2>/dev/null | head -1)" local os="$(cat /etc/{centos,redhat,fedora,system}-release /etc/debian_version 2>/dev/null | head -n1)"
echo "${os:-$(uname -sr)}" echo "${os:-$(uname -sr)}"
fi fi
} }
@ -256,7 +256,7 @@ compute_sha2() {
output="$(shasum -a 256 -b)" || return 1 output="$(shasum -a 256 -b)" || return 1
echo "${output% *}" echo "${output% *}"
elif type openssl &>/dev/null; then elif type openssl &>/dev/null; then
local openssl="$(command -v "$(brew --prefix openssl 2>/dev/null || true)"/bin/openssl openssl | head -1)" local openssl="$(command -v "$(brew --prefix openssl 2>/dev/null || true)"/bin/openssl openssl | head -n1)"
output="$("$openssl" dgst -sha256 2>/dev/null)" || return 1 output="$("$openssl" dgst -sha256 2>/dev/null)" || return 1
echo "${output##* }" echo "${output##* }"
elif type sha256sum &>/dev/null; then elif type sha256sum &>/dev/null; then
@ -867,7 +867,7 @@ build_package_jython() {
fix_jython_shebangs() { fix_jython_shebangs() {
# Workaround for Jython 2.7+ (#458) # Workaround for Jython 2.7+ (#458)
for file in "${PREFIX_PATH}/bin"/*; do for file in "${PREFIX_PATH}/bin"/*; do
case "$(head -1 "${file}")" in case "$(head -n1 "${file}")" in
"#!"*"/bin/jython" ) "#!"*"/bin/jython" )
sed -i.bak "1 s:.*:#\!${PREFIX_PATH}\/bin\/jython:" "${file}" sed -i.bak "1 s:.*:#\!${PREFIX_PATH}\/bin\/jython:" "${file}"
;; ;;
@ -1144,7 +1144,7 @@ fix_directory_permissions() {
} }
require_java7() { require_java7() {
local version="$(java -version 2>&1 | grep '\(java\|openjdk\) version' | head -1)" local version="$(java -version 2>&1 | grep '\(java\|openjdk\) version' | head -n1)"
if [[ $version != *[789]* ]]; then if [[ $version != *[789]* ]]; then
colorize 1 "ERROR" >&3 colorize 1 "ERROR" >&3
echo ": Java 7 required. Please install a 1.7-compatible JRE." >&3 echo ": Java 7 required. Please install a 1.7-compatible JRE." >&3
@ -1587,7 +1587,7 @@ build_package_verify_openssl() {
RbConfig::CONFIG.fetch("configure_args").shellsplit.each { |arg| $stderr.puts " #{arg}" } RbConfig::CONFIG.fetch("configure_args").shellsplit.each { |arg| $stderr.puts " #{arg}" }
exit 1 exit 1
end end
' "$(basename "$(type -P yum apt-get | head -1)")" >&4 2>&1 ' "$(basename "$(type -P yum apt-get | head -n1)")" >&4 2>&1
} }
use_homebrew_zlib() { use_homebrew_zlib() {

View file

@ -89,7 +89,7 @@ install_tmp_fixture() {
} }
resolve_link() { resolve_link() {
$(type -P greadlink readlink | head -1) "$1" $(type -P greadlink readlink | head -n1) "$1"
} }
run_inline_definition_with_name() { run_inline_definition_with_name() {

View file

@ -133,7 +133,7 @@ assert_output_contains() {
echo "assert_output_contains needs an argument" >&2 echo "assert_output_contains needs an argument" >&2
return 1 return 1
fi fi
echo "$output" | $(type -P ggrep grep | head -1) -F "$expected" >/dev/null || { echo "$output" | $(type -P ggrep grep | head -n1) -F "$expected" >/dev/null || {
{ echo "expected output to contain $expected" { echo "expected output to contain $expected"
echo "actual: $output" echo "actual: $output"
} | flunk } | flunk

View file

@ -3,7 +3,7 @@
load test_helper load test_helper
bats_bin="${BATS_TEST_DIRNAME}/../bin/python-build" bats_bin="${BATS_TEST_DIRNAME}/../bin/python-build"
static_version="$(grep VERSION "$bats_bin" | head -1 | cut -d'"' -f 2)" static_version="$(grep VERSION "$bats_bin" | head -n1 | cut -d'"' -f 2)"
@test "python-build static version" { @test "python-build static version" {
stub git 'echo "ASPLODE" >&2; exit 1' stub git 'echo "ASPLODE" >&2; exit 1'