slweb

Једноставни генератор статичких веб страна
Дневник | Датотеке | Референце | ПРОЧИТАЈМЕ | ЛИЦЕНЦА

чување 8359dd1b788c0d47eacfc9bb33b821d48d07949b
родитељ c55f93d92fe3a7383214276340aff765a7787388
Аутор: Страхиња Радић <contact@strahinja.org>
Датум:   Thu, 17 Aug 2023 11:53:02 +0200

Avoid stat in redo scripts; slweb.c: Add commit date to version output

Signed-off-by: Страхиња Радић <contact@strahinja.org>

Diffstat:
Mdate.do | 13++++++++-----
Mslweb.c | 2+-
Mversion.do | 9++++++---
измењених датотека: 3, додавања: 15(+), брисања: 9(-)

diff --git a/date.do b/date.do @@ -1,13 +1,16 @@ FALLBACKDATE=${FALLBACKDATE:-unknown} -user=$(stat -c %U .) -e_user=$(id -un) +user=$(unalias ls >/dev/null 2>&1 || true; \ + LC_ALL=C command ls -nd . | LC_ALL=C awk '{print $3}') +e_user=$(id -u) +user_s=$(LC_ALL=C awk 'BEGIN{FS=":"}{if ($3=="'$user'") { print $1}}' \ + </etc/passwd) if [ -d .git ] && command -v git >/dev/null 2>&1; then if [ "$e_user" = "$user" ]; then env LC_ALL=C git log --format=format:%cd \ - --date=format:"%d %b %Y" -1 @ >$3 + --date=format:"%B %d, %Y" -1 @ >$3 else - su "${user}" -c 'env LC_ALL=C git log --format=format:%cd '\ -'--date=format:"%d %b %Y" -1 @' >$3 + su "${user_s}" -c 'env LC_ALL=C git log --format=format:%cd '\ +'--date=format:"%B %d, %Y" -1 @' >$3 fi echo >>$3 else diff --git a/slweb.c b/slweb.c @@ -93,7 +93,7 @@ static int incdir_only_summary = 0; int version() { - printf("%s %s\n", PROGRAMNAME, VERSION); + printf("%s %s, committed on %s\n", PROGRAMNAME, VERSION, DATE); return 0; } diff --git a/version.do b/version.do @@ -1,11 +1,14 @@ FALLBACKVER=${FALLBACKVER:-unknown} -user=$(stat -c %U .) -e_user=$(id -un) +user=$(unalias ls >/dev/null 2>&1 || true; \ + LC_ALL=C command ls -nd . | LC_ALL=C awk '{print $3}') +e_user=$(id -u) +user_s=$(LC_ALL=C awk 'BEGIN{FS=":"}{if ($3=="'$user'") { print $1}}' \ + </etc/passwd) if [ -d .git ] && command -v git >/dev/null 2>&1; then if [ "$e_user" = "$user" ]; then git describe 2>/dev/null | sed 's/^v//' >$3 else - su "${user}" -c 'git describe' 2>/dev/null | sed 's/^v//' >$3 + su "${user_s}" -c 'git describe' 2>/dev/null | sed 's/^v//' >$3 fi else echo $FALLBACKVER >$3