* gnu/packages/version-control.scm (git-spice): Add variable.
---
gnu/packages/version-control.scm | 89 ++++++++++++++++++++++++++++++++
1 file changed, 89 insertions(+)
Toggle diff (102 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 9f67237d5d..b141e55137 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -877,6 +877,95 @@ (define-public git-tools
@end itemize")
(license license:gpl3+)))
+(define-public git-spice
+ (package
+ (name "git-spice")
+ (version "0.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/abhinav/git-spice")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0z5jjbnzyrij95fcm4qpy521fbb3mmcxhd35cl0jrlgdcs0lk2q7"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:go go-1.22
+ #:import-path "go.abhg.dev/gs"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'remove-failing-tests
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (with-directory-excursion
+ (string-append "src/" import-path "/testdata/script")
+ (for-each
+ delete-file
+ (list
+ ;; Tests require networking.
+ "auth_detect_forge.txt"
+ "auth_explicit_forge.txt"
+ "auth_prompt_forge.txt"
+ "branch_submit_ambiguous_branch.txt"
+ "branch_submit_by_name.txt"
+ "branch_submit_create_update.txt"
+ "branch_submit_detect_existing.txt"
+ "branch_submit_long_body.txt"
+ "branch_submit_multiple_commits.txt"
+ "branch_submit_multiple_pr_templates.txt"
+ "branch_submit_no_publish.txt"
+ "branch_submit_pr_template.txt"
+ "branch_submit_pr_template_cache_invalidation.txt"
+ "branch_submit_pr_template_no_body.txt"
+ "branch_submit_pr_template_prompt.txt"
+ "branch_submit_recover_prepared.txt"
+ "branch_submit_remote_prompt.txt"
+ "branch_submit_rename.txt"
+ "downstack_submit.txt"
+ "repo_sync_detached_head.txt"
+ "repo_sync_detect_externally_created_prs.txt"
+ "repo_sync_external_pr_head_mismatch.txt"
+ "repo_sync_manual_pull_merged_pr.txt"
+ "repo_sync_merged_pr.txt"
+ "repo_sync_trunk_dirty_tree.txt"
+ "repo_sync_trunk_no_prs.txt"
+ "repo_sync_unpushed_commits.txt"
+ "stack_submit.txt"
+ "stack_submit_update_leave_draft.txt"
+ "upstack_submit_main.txt"))))))))
+ (propagated-inputs (list go-pgregory-net-rapid
+ go-gopkg-in-yaml-v3
+ go-gopkg-in-dnaeon-go-vcr-v3-recorder
+ go-golang-org-x-oauth2
+ go-go-uber-org-mock
+ go-go-abhg-dev-requiredfield
+ go-github-com-zalando-go-keyring
+ go-github-com-vito-midterm
+ go-github-com-stretchr-testify
+ go-github-com-shurcool-githubv4
+ go-github-com-rogpeppe-go-internal
+ go-github-com-mattn-go-isatty
+ go-github-com-dustin-go-humanize
+ go-github-com-creack-pty-v2
+ go-github-com-charmbracelet-log
+ go-github-com-charmbracelet-lipgloss
+ go-github-com-charmbracelet-bubbletea
+ go-github-com-charmbracelet-bubbles
+ go-github-com-buildkite-shellwords
+ go-github-com-alecthomas-kong))
+ (inputs (list go-github-com-rogpeppe-go-internal-diff
+ go-github-com-rogpeppe-go-internal-testscript
+ go-github-com-rogpeppe-go-internal-internal-misspell))
+ (native-inputs (list git-minimal))
+ (home-page "https://go.abhg.dev/gs")
+ (synopsis "Manage stacks of Git branches")
+ (description
+ "git-spice (gs) is a command line tool for stacking Git branches.")
+ (license license:gpl3)))
+
(define-public xdiff
(let ((revision "0")
(commit "a137bc7ee6c76618ed1737c257548eaa10ac0089"))
--
2.45.2