diff options
author | Herman Rimm <herman@rimm.ee> | 2024-12-03 14:15:07 +0100 |
---|---|---|
committer | Sharlatan Hellseher <sharlatanus@gmail.com> | 2025-01-21 23:41:51 +0000 |
commit | 981601b2c15e8fce43515af80f90a7fe515b4509 (patch) | |
tree | 81b4e03c9a376cfeb910820c960661b3aa6d59d3 | |
parent | 8e68de2d3ae1fe9404f804c692bb0045a2c3c3a9 (diff) |
gnu: Add git-spice.
* gnu/packages/version-control.scm (git-spice): New variable.
Change-Id: Id0936171caa586a98a3c500e6d669baa171f48da
Co-authored-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
-rw-r--r-- | gnu/packages/version-control.scm | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index fd01e19183..d61d2b13bd 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -59,6 +59,8 @@ ;;; Copyright © 2024 Javier Olaechea <pirata@gmail.com> ;;; Copyright © 2024 Ashish SHUKLA <ashish.is@lostca.se> ;;; Copyright © 2024 Wilko Meyer <w@wmeyer.eu> +;;; Copyright © 2024 Herman Rimm <herman@rimm.ee> +;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com> ;;; ;;; This file is part of GNU Guix. @@ -126,6 +128,7 @@ #:use-module (gnu packages golang-build) #:use-module (gnu packages golang-check) #:use-module (gnu packages golang-crypto) + #:use-module (gnu packages golang-vcs) #:use-module (gnu packages golang-web) #:use-module (gnu packages golang-xyz) #:use-module (gnu packages groff) @@ -980,6 +983,125 @@ the date of the most recent commit that modified them @end itemize") (license license:gpl3+))) +(define-public git-spice + (package + (name "git-spice") + (version "0.9.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 "1yvnd5a3ql905jrxh0sq9sdcfmyq38fsbqx0zbhxbd4rgs8hv5s3")))) + (build-system go-build-system) + (arguments + (list + #:go go-1.23 + #:import-path "go.abhg.dev/gs" + #:install-source? #f + #:test-flags + #~(list "-skip" + (string-join + ;; XXX: Tests failing with various reasons; requiring + ;; networking config or write access, or outbound access, check + ;; if some of them may be fixed. + (list "TestDeviceFlowAuthenticator" + "TestScript/auth_detect_forge" + "TestScript/auth_explicit_forge" + "TestScript/auth_insecure_storage" + "TestScript/auth_prompt_forge" + "TestScript/branch_split_reassign_submitted" + "TestScript/branch_submit_ambiguous_branch" + "TestScript/branch_submit_by_name" + "TestScript/branch_submit_config_no_publish" + "TestScript/branch_submit_create_update" + "TestScript/branch_submit_detect_existing" + "TestScript/branch_submit_detect_existing_conflict" + "TestScript/branch_submit_detect_existing_upstream_name" + "TestScript/branch_submit_force_push" + "TestScript/branch_submit_long_body" + "TestScript/branch_submit_many_upstream_names_taken" + "TestScript/branch_submit_multiple_commits" + "TestScript/branch_submit_multiple_pr_templates" + "TestScript/branch_submit_navigation_.*_out_multiple" + "TestScript/branch_submit_needs_restack" + "TestScript/branch_submit_no_editor" + "TestScript/branch_submit_no_publish" + "TestScript/branch_submit_pr_template" + "TestScript/branch_submit_pr_template_cache_invalidation" + "TestScript/branch_submit_pr_template_no_body" + "TestScript/branch_submit_pr_template_prompt" + "TestScript/branch_submit_recover_prepared" + "TestScript/branch_submit_remote_prompt" + "TestScript/branch_submit_rename" + "TestScript/branch_submit_rename_base" + "TestScript/branch_submit_update_pr_is_closed" + "TestScript/branch_submit_update_pr_is_merged" + "TestScript/branch_submit_upstream_name" + "TestScript/branch_submit_upstream_name_wrong_remote" + "TestScript/branch_submit_use_git_editor" + "TestScript/branch_submit_web" + "TestScript/branch_submit_web_opt_out" + "TestScript/downstack_submit" + "TestScript/issue369_branch_.*_case_insensitive" + "TestScript/issue369_branch_.*_remote_update" + "TestScript/issue398_repo_sync_many_merged" + "TestScript/repo_sync_after_merging_renamed_branch" + "TestScript/repo_sync_detached_head" + "TestScript/repo_sync_detect_externally_created_prs" + "TestScript/repo_sync_external_pr_head_mismatch" + "TestScript/repo_sync_manual_pull_merged_pr" + "TestScript/repo_sync_merged_pr" + "TestScript/repo_sync_remote_already_deleted" + "TestScript/repo_sync_restack" + "TestScript/repo_sync_trunk_dirty_tree" + "TestScript/repo_sync_trunk_no_prs" + "TestScript/repo_sync_unpushed_commits" + "TestScript/stack_submit" + "TestScript/stack_submit_update_leave_draft" + "TestScript/stack_submit_web" + "TestScript/upstack_submit_main") + "|")))) + (native-inputs + (list git-minimal ; for tests in testdata/scripts + go-github-com-alecthomas-kong + go-github-com-buildkite-shellwords + go-github-com-charmbracelet-bubbles + go-github-com-charmbracelet-bubbletea + go-github-com-charmbracelet-lipgloss + go-github-com-charmbracelet-log + go-github-com-cli-browser + go-github-com-creack-pty + go-github-com-dustin-go-humanize + go-github-com-mattn-go-isatty + go-github-com-rogpeppe-go-internal + go-github-com-sahilm-fuzzy + go-github-com-shurcool-githubv4 + go-github-com-stretchr-testify + go-github-com-tidwall-gjson + go-github-com-vito-midterm + go-github-com-xanzy-go-gitlab + go-github-com-zalando-go-keyring + go-go-abhg-dev-komplete + go-go-abhg-dev-requiredfield + go-go-abhg-dev-testing-stub + go-go-uber-org-mock + go-golang-org-x-oauth2 + go-gopkg-in-dnaeon-go-vcr-v4 + go-gopkg-in-yaml-v3 + go-pgregory-net-rapid)) + (home-page "https://go.abhg.dev/gs") + (synopsis "Manage stacks of Git branches") + (description + "git-spice (@code{gs}) is a command line tool for stacking Git branches, +a collection of branches expecting the trunk has a base branch. It manages +and navigates stacks of branches, conveniently modifies and rebases them also +provides an integration with GitHub and GitLab.") + (license license:gpl3))) + (define-public got (package (name "got") |