~ruther/guix-local

9598974a734951d2ca70b0077c8b3c575cacb810 — quanrong 7 months ago 062e0f1
gnu: Add asdf-vm.

* gnu/packages/package-management.scm (asdf-vm): New variable.

Change-Id: I91e873107fd32e86991057e3492d315c9a86c047
Co-authored-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
1 files changed, 59 insertions(+), 0 deletions(-)

M gnu/packages/package-management.scm
M gnu/packages/package-management.scm => gnu/packages/package-management.scm +59 -0
@@ 27,6 27,7 @@
;;; Copyright © 2024 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2025 aurtzy <aurtzy@gmail.com>
;;; Copyright © 2025 Tomás Ortín Fernández <quanrong@mailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;


@@ 80,6 81,10 @@
  #:use-module (gnu packages glib)
  #:use-module (gnu packages gnome)
  #:use-module (gnu packages gnupg)
  #:use-module (gnu packages golang-build)
  #:use-module (gnu packages golang-check)
  #:use-module (gnu packages golang-vcs)
  #:use-module (gnu packages golang-xyz)
  #:use-module (gnu packages graphviz)
  #:use-module (gnu packages gtk)
  #:use-module (gnu packages guile)


@@ 130,6 135,7 @@
  #:use-module (guix build-system copy)
  #:use-module (guix build-system glib-or-gtk)
  #:use-module (guix build-system gnu)
  #:use-module (guix build-system go)
  #:use-module (guix build-system guile)
  #:use-module (guix build-system meson)
  #:use-module (guix build-system pyproject)


@@ 2473,6 2479,59 @@ but could potentially work for end-users of those programs.  It also has a trans
from R7RS, which allows most R7RS code to run on R6RS implementations.")
    (license license:gpl3+)))

(define-public asdf-vm
  (package
    (name "asdf-vm")
    (version "0.18.0")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
              (url "https://github.com/asdf-vm/asdf")
              (commit (string-append "v" version))))
       (file-name (git-file-name name version))
       (sha256
        (base32 "09p4d41l3f0dzm4bdvb45lxzsvlh3b99rgbdv8rk6jj84hr7w5q4"))))
    (build-system go-build-system)
    (arguments
     (list
      #:install-source? #f
      #:import-path "github.com/asdf-vm/asdf/cmd/asdf"
      #:unpack-path "github.com/asdf-vm/asdf"
      #:embed-files
      #~(list "bash_autocomplete"
              "powershell_autocomplete.ps1"
              "zsh_autocomplete")
      #:test-subdirs ;Test only those subdirs that don't include integration tests
      #~(list "../../internal/cli/set"
              "../../internal/completions"
              "../../internal/config"
              "../../internal/data"
              "../../internal/exec"
              "../../internal/execute"
              "../../internal/hook"
              "../../internal/paths"
              "../../internal/toolversions")))
    (native-inputs
     (list go-github-com-go-git-go-git-v5
           go-github-com-otiai10-copy
           go-github-com-rogpeppe-go-internal
           go-github-com-stretchr-testify
           go-github-com-urfave-cli-v3
           go-golang-org-x-sys
           go-gopkg-in-ini-v1
           go-honnef-co-go-tools
           go-mvdan-cc-gofumpt))
    (home-page "https://asdf-vm.com")
    (synopsis "Multi language extendible version manager")
    (description
     "ASDF is a version manager for programming language runtimes and tools.
Versions can be defined and managed on a per-project basis.  It features a
plugin system that allows it to be extended to support further languages.  It
currently supports a many popular runtimes, such as Ruby, Node.js, Elixir, and
Erlang.")
    (license license:expat)))

(define-public modules
  (package
    (name "modules")