From 79054faaadd5d6773f79baf4cdca515b0c73944b Mon Sep 17 00:00:00 2001 From: "Jason A. Dönerfield" Date: Sat, 18 Jul 2026 21:17:58 +0200 Subject: build: fix empty version on tagless clones; mark version -sl0p MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit gen-version.sh unconditionally overwrote the Makefile-provided version with `git describe` output, which is empty on a plain clone of the fork (no tags) — so cgit_version rendered blank in the footer and generator meta. Only override when describe yields something. Also bump the base version to v1.3.1-sl0p so the version string itself names the fork. --- Makefile | 2 +- gen-version.sh | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 9d39bf4..394e184 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ all:: -CGIT_VERSION = v1.3.1 +CGIT_VERSION = v1.3.1-sl0p CGIT_SCRIPT_NAME = cgit.cgi CGIT_SCRIPT_PATH = /var/www/htdocs/cgit CGIT_DATA_PATH = $(CGIT_SCRIPT_PATH) diff --git a/gen-version.sh b/gen-version.sh index 80cf49a..1791488 100755 --- a/gen-version.sh +++ b/gen-version.sh @@ -3,10 +3,14 @@ # Get version-info specified in Makefile V=$1 -# Use `git describe` to get current version if we're inside a git repo +# Use `git describe` to get current version if we're inside a git repo AND it +# yields something. A plain clone of the fork has no tags, so `git describe` +# fails there; don't let that clobber the Makefile-provided version with an +# empty string (which renders as a blank version in the footer/meta). if test "$(git rev-parse --git-dir 2>/dev/null)" = '.git' then - V=$(git describe --abbrev=4 HEAD 2>/dev/null) + D=$(git describe --abbrev=4 HEAD 2>/dev/null) + test -n "$D" && V=$D fi new="CGIT_VERSION = $V" -- cgit v1.3.1-sl0p