~ruther/guix-local

f24f49e36cdfc8789790f6d9c1e6a3822bf110e0 — Josep Bigorra 7 months ago 035d1b0
gnu: Add maak.

* gnu/packages/build-tools.scm (maak): New variable.

Change-Id: I31d6690ed98eae099af1825bfaae556a36b2c05b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
1 files changed, 48 insertions(+), 0 deletions(-)

M gnu/packages/build-tools.scm
M gnu/packages/build-tools.scm => gnu/packages/build-tools.scm +48 -0
@@ 18,6 18,7 @@
;;; Copyright © 2024 Evgeny Pisemsky <mail@pisemsky.site>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 Aiden Isik <aidenisik+git@member.fsf.org>
;;; Copyright © 2025 Josep Bigorra <jjbigorra@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;


@@ 62,6 63,7 @@
  #:use-module (gnu packages elf)
  #:use-module (gnu packages gcc)
  #:use-module (gnu packages guile)
  #:use-module (gnu packages guile-xyz)  
  #:use-module (gnu packages linux)
  #:use-module (gnu packages lisp)
  #:use-module (gnu packages logging)


@@ 1102,6 1104,52 @@ maintenance-related files, for convenience.")
   #:commit "9297749090b01720888dceeb5f6dab3d52dcef40"
   #:hash (base32 "10qyhji7q71fhq2956aszj6bipbf11hn0xcrrpkwj9azwindw7ch")))

(define-public maak
  (package
    (name "maak")
    (version "0.2.3")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
             (url "https://codeberg.org/jjba23/maak.git")
             (commit (string-append "v" version))))
       (file-name (git-file-name name version))
       (sha256
        (base32 "15s6khifk7k002hr9mqgl45r3ipmvsc56z9z8skwclxsj6w1cddl"))))
    (build-system guile-build-system)
    (arguments
     (list
      #:source-directory "src"
      #:phases
      #~(modify-phases %standard-phases
          (add-before 'build 'install-program-files
            (lambda _
              (let ((bin (string-append #$output "/bin"))
                    (share (string-append #$output "/share")))
                (install-file "resources/help.txt"
                              (string-append share "/resources"))
                (install-file "scripts/maak" bin)
                (install-file "scripts/log.bash"
                              (string-append share "/scripts/"))
                (install-file "scripts/maak-completion.bash"
                                      (string-append share "/scripts/"))
                (chmod (string-append bin "/maak") #o755)))))))
    (native-inputs (list guile-3.0))
    (inputs (list guile-3.0 bash-minimal))
    (home-page "https://codeberg.org/jjba23/maak")
    (synopsis "Command runner à la Make using Guile Scheme")
    (description
     "Maak is a command runner and control plane for your
projects.  It allows you to use the power of Lisp (Guile Scheme) to define
your tasks, build steps, repetitive tasks or other automation.

With Maak you can easily call external shell commands and integrate with
your existing scripts and tools.  It is inspired by the GNU Make utility
but it does away with a lot of the complexity that comes with its history.")
    (license license:gpl3+)))


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