From a3ea5febdffdf9737916dbf1aa3a5c17de5cd1f8 Mon Sep 17 00:00:00 2001 From: Achim Gsell Date: Wed, 28 May 2025 15:04:03 +0200 Subject: [PATCH] Pmodules: call external commands/binaries via shell function --- Pmodules/libstd.bash | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Pmodules/libstd.bash b/Pmodules/libstd.bash index b7f5d20..bd60e1e 100644 --- a/Pmodules/libstd.bash +++ b/Pmodules/libstd.bash @@ -39,6 +39,16 @@ std::def_cmd(){ which "$1" 2>/dev/null || std::die 255 "'$1' not found!" } +std::def_cmd2(){ + local -- name="$1" + bin=$(which $1) + + eval "${name}(){ + LD_LIBRARY_PATH= LD_PRELOAD= ${bin} \"\$@\" + } + declare -g ${name}=${name} + readonly -f ${name}" +} #.............................................................................. # # compare two version numbers @@ -196,7 +206,8 @@ base64=$(std::def_cmd 'base64'); declare -r base64 bash=$(std::def_cmd 'bash'); declare -r bash cat=$(std::def_cmd 'cat'); declare -r cat cp=$(std::def_cmd 'cp'); declare -r cp -curl=$(std::def_cmd 'curl'); declare -r curl +#curl=$(std::def_cmd 'curl'); declare -r curl +std::def_cmd2 'curl' envsubst=$(std::def_cmd 'envsubst'); declare -r envsubst date=$(std::def_cmd 'date'); declare -r date dirname=$(std::def_cmd 'dirname'); declare -r dirname