linije

Клон игре Color lines
git clone https://git.sr.ht/~strahinja/linije
Дневник | Датотеке | Референце | ПРОЧИТАЈМЕ | ЛИЦЕНЦА

makedate (1525B)


      1 #!/bin/sh -x
      2 # vim: set ft=bash:
      3 FALLBACKDATE=${FALLBACKDATE:-unknown}
      4 LC_ALL=C
      5 export LC_ALL
      6 
      7 if [ -d .got ] && command -v got >/dev/null 2>&1; then
      8 	got log |
      9 	awk '
     10 	/^date: / {
     11 		sub(/^date: /,"",$0)
     12 		# Convert to proper form for `mandoc -Tlint`
     13 		month_names["Jan"] = "January"
     14 		month_names["Feb"] = "February"
     15 		month_names["Mar"] = "March"
     16 		month_names["Apr"] = "April"
     17 		month_names["May"] = "May"
     18 		month_names["Jun"] = "June"
     19 		month_names["Jul"] = "July"
     20 		month_names["Aug"] = "August"
     21 		month_names["Sep"] = "September"
     22 		month_names["Oct"] = "October"
     23 		month_names["Nov"] = "November"
     24 		month_names["Dec"] = "December"
     25 		print month_names[$2] " " $3 ", " $5
     26 		exit
     27 	}' >date.new
     28 elif [ -d .git ] && command -v git >/dev/null 2>&1; then
     29 	user=$(getent passwd "$(unalias ls >/dev/null 2>&1 || true; \
     30 		command ls -lnd . | awk '{print $3}')" | awk -F: '{print $1}')
     31 	if [ -z "$user" ]; then
     32 		printf "$0: error: Cannot determine owner of %s" "$(pwd)" >&2
     33 		exit 1
     34 	fi
     35 	e_user=$(id -un)
     36 	if [ "$e_user" = "$user" ]; then
     37 		git log --format=format:%cd \
     38 			--date=format:"%B %d, %Y" -1 @ >date.new
     39 	else
     40 		su "${user}" -c 'env LC_ALL=C git log --format=format:%cd \
     41 			--date=format:"%B %d, %Y" -1 @' >date.new
     42 	fi
     43 	echo >>date.new
     44 else
     45 	printf "%s\n" "$FALLBACKDATE" >date.new
     46 fi
     47 
     48 if [ -f date ]; then
     49 	if diff date date.new >/dev/null; then
     50 		rm date.new
     51 	else
     52 		mv date.new date
     53 		touch .rebuild
     54 	fi
     55 else
     56 	mv date.new date
     57 	touch .rebuild
     58 fi
     59 if [ "$1" = "-l" ]; then
     60 	printf "DATE=\"%s\"\n" "$(cat date)"
     61 fi