sled

Једноставни уређивач текста
git clone https://git.sr.ht/~strahinja/sled
Дневник | Датотеке | Референце | ПРОЧИТАЈМЕ | ЛИЦЕНЦА

чување 968a36fa754281f806466598cfd76f366a6fffeb
родитељ f788306ad8074101908a949b56de89b715f1b5c1
Аутор: Страхиња Радић <sr@strahinja.org>
Датум:   Fri,  6 Feb 2026 20:30:53 +0100

lib/make{date,version}: Workaround HaikuOS goofy environment

Diffstat:
Mlib/makedate | 13+++++++------
Mlib/makeversion | 13+++++++------
измењених датотека: 2, додавања: 14(+), брисања: 12(-)

diff --git a/lib/makedate b/lib/makedate @@ -6,16 +6,16 @@ export LC_ALL getent() { - if command -v getent >/dev/null 2>&1; then - command getent "$@" + geresult='' + if geresult=$(command getent "$@" 2>/dev/null); then return fi case "$1" in passwd|group) if [ -z "$2" ]; then - cat /etc/"$1" + geresult=$(cat /etc/"$1") else - awk -F: -vu="$2" '{ if ($3 == u) print }' /etc/"$1" + geresult=$(awk -F: -vu="$2" '{ if ($3 == u) print }' /etc/"$1") fi ;; *) ;; @@ -44,8 +44,9 @@ if [ -d .got ] && command -v got >/dev/null 2>&1; then exit }' >date.new elif [ -d .git ] && command -v git >/dev/null 2>&1; then - user=$(getent passwd "$(unalias ls >/dev/null 2>&1 || true; \ - command ls -nd . | awk '{print $3}')" | awk -F: '{print $1}') + getent passwd "$(unalias ls >/dev/null 2>&1 || true; \ + command ls -nd . | awk '{print $3}')" + user=$(printf "%s\n" "$geresult" | awk -F: '{print $1}') if [ -z "$user" ]; then printf "$0: error: Cannot determine owner of %s" "$(pwd)" >&2 exit 1 diff --git a/lib/makeversion b/lib/makeversion @@ -4,16 +4,16 @@ FALLBACKVER=${FALLBACKVER:-unknown} getent() { - if command -v getent >/dev/null 2>&1; then - command getent "$@" + geresult='' + if geresult=$(command getent "$@" 2>/dev/null); then return fi case "$1" in passwd|group) if [ -z "$2" ]; then - cat /etc/"$1" + geresult=$(cat /etc/"$1") else - awk -F: -vu="$2" '{ if ($3 == u) print }' /etc/"$1" + geresult=$(awk -F: -vu="$2" '{ if ($3 == u) print }' /etc/"$1") fi ;; *) ;; @@ -51,8 +51,9 @@ if [ -d .got ] && command -v got >/dev/null 2>&1; then elif [ -d .git ] && command -v git >/dev/null 2>&1; then LC_ALL=C export LC_ALL - user=$(getent passwd "$(unalias ls >/dev/null 2>&1 || true; \ - command ls -nd . | awk '{print $3}')" | awk -F: '{print $1}') + getent passwd "$(unalias ls >/dev/null 2>&1 || true; \ + command ls -nd . | awk '{print $3}')" + user=$(printf "%s\n" "$geresult" | awk -F: '{print $1}') if [ -z "$user" ]; then printf "$0: error: Cannot determine owner of %s" "$(pwd)" >&2 exit 1