sled

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

чување f46fa9dce6c1e331b19825dac3c1b3fb7c2a7ae3
родитељ e472a36f5ea77dc4adfc3e1813b0865583160285
Аутор: Страхиња Радић <sr@strahinja.org>
Датум:   Sun,  8 Sep 2024 10:13:59 +0200

lib/make{date,version}: Workaround cropped usernames in ls output

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

diff --git a/lib/makedate b/lib/makedate @@ -26,8 +26,12 @@ 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=$(unalias ls >/dev/null 2>&1 || true; \ - command ls -ld . | awk '{print $3}') + user=$(getent passwd "$(unalias ls >/dev/null 2>&1 || true; \ + command ls -lnd . | awk '{print $3}')" | awk -F: '{print $1}') + if [ -z "$user" ]; then + printf "$0: error: Cannot determine owner of %s" "$(pwd)" >&2 + exit 1 + fi e_user=$(id -un) if [ "$e_user" = "$user" ]; then git log --format=format:%cd \ diff --git a/lib/makeversion b/lib/makeversion @@ -33,13 +33,17 @@ 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=$(unalias ls >/dev/null 2>&1 || true; \ - command ls -ld . | awk '{print $3}') + user=$(getent passwd "$(unalias ls >/dev/null 2>&1 || true; \ + command ls -lnd . | awk '{print $3}')" | awk -F: '{print $1}') + if [ -z "$user" ]; then + printf "$0: error: Cannot determine owner of %s" "$(pwd)" >&2 + exit 1 + fi e_user=$(id -un) if [ "$e_user" = "$user" ]; then git describe 2>/dev/null | sed 's/^v//' >version.new else - su "${user}" -c 'git describe' 2>/dev/null | + su "$user" -c 'git describe' 2>/dev/null | sed 's/^v//' >version.new fi else