poe

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

чување eb31ac3d6a115a95bb3b5f73d466bf85e4553c26
родитељ ea650e7127fb322695d72c3d428af7355d46a87b
Аутор: Страхиња Радић <sr@strahinja.org>
Датум:   Thu,  5 Feb 2026 20:47:59 +0100

lib: Synchronize build scripts with other projects

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

diff --git a/lib/makedate b/lib/makedate @@ -4,17 +4,52 @@ FALLBACKDATE=${FALLBACKDATE:-unknown} LC_ALL=C export LC_ALL +getent() +{ + if command -v getent >/dev/null 2>&1; then + command getent "$@" + return + fi + case "$1" in + passwd|group) + if [ -z "$2" ]; then + cat /etc/"$1" + else + awk -F: -vu="$2" '{ if ($3 == u) print }' /etc/"$1" + fi + ;; + *) ;; + esac +} + if [ -d .got ] && command -v got >/dev/null 2>&1; then got log | awk ' /^date: / { sub(/^date: /,"",$0) - print $2 " " $3 ", " $5 + # Convert to proper form for `mandoc -Tlint` + month_names["Jan"] = "January" + month_names["Feb"] = "February" + month_names["Mar"] = "March" + month_names["Apr"] = "April" + month_names["May"] = "May" + month_names["Jun"] = "June" + month_names["Jul"] = "July" + month_names["Aug"] = "August" + month_names["Sep"] = "September" + month_names["Oct"] = "October" + month_names["Nov"] = "November" + month_names["Dec"] = "December" + print month_names[$2] " " $3 ", " $5 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 -nd . | 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 @@ -2,6 +2,24 @@ # vim: set ft=bash: FALLBACKVER=${FALLBACKVER:-unknown} +getent() +{ + if command -v getent >/dev/null 2>&1; then + command getent "$@" + return + fi + case "$1" in + passwd|group) + if [ -z "$2" ]; then + cat /etc/"$1" + else + awk -F: -vu="$2" '{ if ($3 == u) print }' /etc/"$1" + fi + ;; + *) ;; + esac +} + if [ -d .got ] && command -v got >/dev/null 2>&1; then lastcommit=$(got log | awk '/^commit/ {print substr($2,1,7); exit}') @@ -34,7 +52,7 @@ 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 -lnd . | awk '{print $3}')" | awk -F: '{print $1}') + command ls -nd . | awk '{print $3}')" | awk -F: '{print $1}') if [ -z "$user" ]; then printf "$0: error: Cannot determine owner of %s" "$(pwd)" >&2 exit 1