diff mbox series

[bug#69548] gnu: Add git-extras.

Message ID 025880776c6df96b0e34ee83575eb0905d2323b8.1709570697.git.code@greghogan.com
State New
Headers show
Series [bug#69548] gnu: Add git-extras. | expand

Commit Message

Greg Hogan March 4, 2024, 4:47 p.m. UTC
* gnu/packages/version-control.scm (git-extras): New variable.

Change-Id: I81a4d89c72f5a506bfa9ae4a6ccfa45f7e0102f7
---
 gnu/packages/version-control.scm | 44 ++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)


base-commit: 1fd308d5f6e4b03236cfa0c4cfadbbe9fe66e24c

Comments

Ludovic Courtès March 19, 2024, 4:21 p.m. UTC | #1
Hi,

Greg Hogan <code@greghogan.com> skribis:

> * gnu/packages/version-control.scm (git-extras): New variable.
>
> Change-Id: I81a4d89c72f5a506bfa9ae4a6ccfa45f7e0102f7

[...]

> +    (propagated-inputs
> +     (list coreutils
> +           curl
> +           findutils
> +           gawk
> +           git
> +           less
> +           ncurses
> +           procps
> +           rsync
> +           sed
> +           util-linux))

Instead of propagating all these, which is quite intrusive, would it be
possible to change the relevant scripts to start with:

  export PATH=…

?

I’d also recommend depending on ‘coreutils-minimal’ rather than
‘coreutils’.

Thanks,
Ludo’.
diff mbox series

Patch

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 58a21a6fe0..387206d7e7 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -104,6 +104,7 @@  (define-module (gnu packages version-control)
   #:use-module (gnu packages file)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages freedesktop)
+  #:use-module (gnu packages gawk)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
@@ -120,6 +121,7 @@  (define-module (gnu packages version-control)
   #:use-module (gnu packages guile-xyz)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages less)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages mail)
   #:use-module (gnu packages man)
@@ -140,6 +142,7 @@  (define-module (gnu packages version-control)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages rsync)
   #:use-module (gnu packages ruby)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages texinfo)
@@ -3971,6 +3974,47 @@  (define-public gitlint
 commit messages for style.")
     (license license:expat)))
 
+(define-public git-extras
+  (package
+    (name "git-extras")
+    (version "7.1.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/tj/git-extras")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1zvmc8rrrmfn0wv603l0ql7h00mdknqvh6dnb86xhi6kfl018mbv"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+      #:make-flags
+      #~(list (string-append "PREFIX=" #$output))
+      #:phases
+      #~(modify-phases %standard-phases
+          ;; No configure script.
+          (delete 'configure))))
+    (propagated-inputs
+     (list coreutils
+           curl
+           findutils
+           gawk
+           git
+           less
+           ncurses
+           procps
+           rsync
+           sed
+           util-linux))
+    (home-page "https://github.com/tj/git-extras")
+    (synopsis "Additional Git utilities")
+    (description "The git-extras package provides a collection of additional
+git commands for repository metrics and summarization, commit and log editing,
+developer workflow, and project and release management.")
+    (license license:expat)))
+
 (define-public hut
   (package
     (name "hut")