diff mbox series

[bug#52541] gnu: Add tkrev.

Message ID PU1PR01MB2155CADD0A6BA994B044AB7A8D779@PU1PR01MB2155.apcprd01.prod.exchangelabs.com
State Accepted
Headers show
Series [bug#52541] gnu: Add tkrev. | expand

Commit Message

Foo Chuan Wei Dec. 16, 2021, 7:12 a.m. UTC
* gnu/packages/version-control.scm (tkrev): New variable.
---
 gnu/packages/version-control.scm | 46 ++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)


base-commit: 6335c94b1d9897b6f65234f6d266c0c0f36d6112

Comments

Ludovic Courtès Dec. 20, 2021, 3:20 p.m. UTC | #1
Foo Chuan Wei <chuanwei.foo@hotmail.com> skribis:

> * gnu/packages/version-control.scm (tkrev): New variable.

Applied with simplified inputs, thanks!
diff mbox series

Patch

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index c430834c88..374489daa2 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -3232,6 +3232,52 @@  makes a directory under a specific root directory (by default @file{~/ghq})
 using the remote repository URL's host and path.")
     (license license:expat)))
 
+(define-public tkrev
+  (package
+    (name "tkrev")
+    (version "9.4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "mirror://sourceforge/tkcvs/tkrev_" version ".tar.gz"))
+       (sha256
+        (base32 "0bpfbhkngzmwy476mfc69mkd94l0m2wxznrn0qzd81s450yxjw2q"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (delete 'build)
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin")))
+               (invoke "wish" "doinstall.tcl" "-nox" out)
+               (install-file "contrib/tkdirdiff" bin))))
+         (add-after 'install 'wrap-programs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (for-each
+               (lambda (file)
+                 (wrap-program (string-append (assoc-ref outputs "out")
+                                              "/bin/" file)
+                   `("PATH" ":" prefix (,(dirname (which "wish"))))))
+               '("tkdiff"
+                 "tkdirdiff"
+                 "tkrev")))))
+       #:tests? #f))
+    (inputs
+     `(("tk" ,tk)))
+    (home-page "https://tkcvs.sourceforge.io")
+    (synopsis "Graphical interface to CVS, Subversion, Git, and RCS")
+    (description
+     "TkRev (formerly TkCVS) is a Tcl/Tk-based graphical interface to the CVS,
+Subversion and Git configuration management systems.  It will also help with
+RCS.  It shows the status of the files in the current working directory, and
+has tools for tagging, merging, checking in/out, and other user operations.
+TkDiff is included for browsing and merging your changes.")
+    (license license:gpl2+)))
+
 (define-public git-filter-repo
   (package
     (name "git-filter-repo")