guix_mirror_bot pushed a commit to branch master
in repository guix.

commit 08c125b5a6d60b5f1339e9dd0a8eb1997709470a
Author: Matthias Riße <mat...@0px.xyz>
AuthorDate: Sat Jun 14 16:52:54 2025 +0200

    gnu: Add git-credential-oauth.
    
    * gnu/packages/version-control.scm (git-credential-oauth): New variable.
    
    Change-Id: Icd17b0e69814db45c32ec32370fc406d3fc02c29
    Modified-by: Sharlatan Hellseher <sharlata...@gmail.com>
    Signed-off-by: Sharlatan Hellseher <sharlata...@gmail.com>
---
 gnu/packages/version-control.scm | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 1bcf4f0bde..35144f9420 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -1536,6 +1536,45 @@ issue management.")
       (home-page "https://github.com/dspinellis/git-issue";)
       (license license:gpl3+))))
 
+(define-public git-credential-oauth
+  (package
+    (name "git-credential-oauth")
+    (version "0.15.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/hickford/git-credential-oauth";)
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1fid6dl82val6miq61dm203y7k2kzccpmra43fngnqrr1p4hh2pl"))))
+    (build-system go-build-system)
+    (arguments
+     (list
+      #:install-source? #f
+      #:build-flags #~(list (string-append "-ldflags=-X main.version="
+                                           #$version))
+      #:import-path "github.com/hickford/git-credential-oauth"
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'install 'install-manpages
+            (lambda* (#:key import-path #:allow-other-keys)
+              (let ((man (string-append "src/" import-path
+                                        "/git-credential-oauth.1")))
+                (install-file man (string-append #$output 
"/share/man/man1"))))))))
+    (native-inputs
+     (list go-golang-org-x-oauth2))
+    (home-page "https://github.com/hickford/git-credential-oauth";)
+    (synopsis "Git credential helper that securely authenticates using OAuth")
+    (description
+     "git-credential-oauth is a Git credential helper that securely
+authenticates to GitHub, GitLab, BitBucket, Gerrit, Gitea, and Forgejo using
+OAuth.  The first time you authenticate, the helper opens a browser window to
+the host.  Subsequent authentication within storage lifetime is
+non-interactive.")
+    (license license:asl2.0)))
+
 (define-public git-crypt
   (package
     (name "git-crypt")

Reply via email to