From 8c95d6364a34cfbd60efbd15d85ce8b02ff6a2cd Mon Sep 17 00:00:00 2001 From: Patrick Norton Date: Wed, 20 May 2026 09:25:16 -0400 Subject: [PATCH] gnu: Add git-quick-stats. * gnu/packages/version-control.scm (git-quick-stats): New variable. Merges guix/guix!8748 Change-Id: Icfd4c133491a4faa4e234dd962571b5a4dde8f33 Signed-off-by: Cayetano Santos --- gnu/packages/version-control.scm | 46 ++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 9146bab8166..d7e70f14d9f 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -4844,6 +4844,52 @@ git commands for repository metrics and summarization, commit and log editing, developer workflow, and project and release management.") (license license:expat))) +(define-public git-quick-stats + (package + (name "git-quick-stats") + (version "2.11.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/git-quick-stats/git-quick-stats") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1sx6idfl0s88xx5wd39cg1540hzkh7p6yad0l56qnf9v2i38hra1")))) + (build-system gnu-build-system) + (arguments + (list + #:test-target "test" + #:tests? #f ;Tests require interactive terminal + #:make-flags #~(list (string-append "PREFIX=" #$output)) + #:phases + #~(modify-phases %standard-phases + (delete 'configure) + (add-after 'install 'wrap-program + (lambda _ + (wrap-program (string-append #$output "/bin/git-quick-stats") + '("PATH" ":" prefix + #$(map (lambda (x) + (file-append (cadr x) "/bin")) + (package-inputs this-package))))))))) + (native-inputs (list which)) + (inputs (list bash-minimal + coreutils-minimal + gawk + git-minimal/pinned + grep + ncurses + util-linux)) + (home-page "https://git-quick-stats.sh") + (synopsis "Access various statistics in git repositories") + (description + "Any git repository may contain tons of information about commits, +contributors, and files. Extracting this information is not always trivial, +mostly because there are a gazillion options to a gazillion git commands. +This package provides a cleaner interface to access this information.") + (license license:expat))) + (define-public hut (package (name "hut")