* [bug#74310] [PATCH] gnu: Add potato-make.
@ 2024-11-11 11:35 Evgeny Pisemsky
2024-11-11 20:57 ` Noé Lopez via Guix-patches via
2024-11-11 20:58 ` [bug#74310] QA review for 74310 Noé Lopez via Guix-patches via
0 siblings, 2 replies; 5+ messages in thread
From: Evgeny Pisemsky @ 2024-11-11 11:35 UTC (permalink / raw)
To: 74310
[-- Attachment #1: 0001-gnu-Add-potato-make.patch --]
[-- Type: text/x-patch, Size: 3378 bytes --]
From 8e41b5222349495b1589a11f0ae2fc463124f17b Mon Sep 17 00:00:00 2001
Message-ID: <8e41b5222349495b1589a11f0ae2fc463124f17b.1731324699.git.mail@pisemsky.site>
From: Evgeny Pisemsky <mail@pisemsky.site>
Date: Mon, 11 Nov 2024 14:30:00 +0300
Subject: [PATCH] gnu: Add potato-make.
* gnu/packages/build-tools.scm (potato-make): New variable.
Change-Id: I86843b4001298ee984e6d1c35b59dc3b2e51d97f
---
gnu/packages/build-tools.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index 21df25e4f5..32c65819c6 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -15,6 +15,7 @@
;;; Copyright © 2021 qblade <qblade@protonmail.com>
;;; Copyright © 2021, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022, 2023 Juliana Sims <juli@incana.org>
+;;; Copyright © 2024 Evgeny Pisemsky <mail@pisemsky.site>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -41,6 +42,7 @@ (define-module (gnu packages build-tools)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
+ #:use-module (guix build-system guile)
#:use-module (guix modules)
#:use-module (gnu packages)
#:use-module (gnu packages adns)
@@ -54,6 +56,7 @@ (define-module (gnu packages build-tools)
#:use-module (gnu packages cppi)
#:use-module (gnu packages elf)
#:use-module (gnu packages gcc)
+ #:use-module (gnu packages guile)
#:use-module (gnu packages linux)
#:use-module (gnu packages lisp)
#:use-module (gnu packages logging)
@@ -1042,3 +1045,36 @@ (define-public pdpmake
;; pdpmake is distributed under the public domain, but the sources include
;; tests under the GPL license version 2.
(license (list license:gpl2 license:public-domain))))
+
+(define-public potato-make
+ (let ((commit "e8c09ce1f6a33c013b27961b0a07f991db33e6fb")
+ (revision "0"))
+ (package
+ (name "potato-make")
+ (version (git-version "0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/spk121/potato-make")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0axgrkqdfip5f2bp7d2dprd74g58lyc0c7lgg2m93k5jqn1lpbmj"))
+ ;; Delete files of the seemingly unfinished pmake program.
+ (snippet '(begin
+ (delete-file "pmake")
+ (delete-file "documents/pmake.org")
+ (delete-file "make/main.scm")
+ (rmdir "documents")
+ (rmdir "make")))))
+ (build-system guile-build-system)
+ (native-inputs (list guile-3.0))
+ (home-page "https://github.com/spk121/potato-make")
+ (synopsis "Library to write makefiles in Guile Scheme")
+ (description
+ "Potato Make is a scheme library that aims to simplify the task of
+maintaining, updating, and regenerating programs. It is inspired by
+the POSIX make utility and allows to write a build script in Guile
+Scheme.")
+ (license license:expat))))
base-commit: 9cdcfb52ace77fe3b497b21deb639a3027ff02f0
--
2.46.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [bug#74310] [PATCH] gnu: Add potato-make.
2024-11-11 11:35 [bug#74310] [PATCH] gnu: Add potato-make Evgeny Pisemsky
@ 2024-11-11 20:57 ` Noé Lopez via Guix-patches via
2024-11-12 20:00 ` Evgeny Pisemsky
2024-11-11 20:58 ` [bug#74310] QA review for 74310 Noé Lopez via Guix-patches via
1 sibling, 1 reply; 5+ messages in thread
From: Noé Lopez via Guix-patches via @ 2024-11-11 20:57 UTC (permalink / raw)
To: 74310; +Cc: Evgeny Pisemsky
Thanks for the patch!
I’ve tested it with the examples in the repo and it works. The lint
warning seems to be a false positive.
If you want, you can add a comment explaining why we need to choose a
specific commit for the future updaters:
(define-public potato-make
+ ;; No releases.
(let ((commit "e8c09ce1f6a33c013b27961b0a07f991db33e6fb")
(revision "0"))
It would also be nice to run the tests provided by the package in a
“check” phase.
Have a good day,
Noé
^ permalink raw reply [flat|nested] 5+ messages in thread
* [bug#74310] [PATCH] gnu: Add potato-make.
2024-11-11 20:57 ` Noé Lopez via Guix-patches via
@ 2024-11-12 20:00 ` Evgeny Pisemsky
2024-11-12 22:53 ` bug#74310: " Ludovic Courtès
0 siblings, 1 reply; 5+ messages in thread
From: Evgeny Pisemsky @ 2024-11-12 20:00 UTC (permalink / raw)
To: 74310; +Cc: Noé Lopez
[-- Attachment #1: Type: text/plain, Size: 53 bytes --]
Hi!
Thanks for review.
Here is the updated patch.
[-- Attachment #2: 0001-gnu-Add-potato-make.patch --]
[-- Type: text/x-patch, Size: 3878 bytes --]
From b7084374dac32a3f39f7991fbdede65bb9ea0202 Mon Sep 17 00:00:00 2001
Message-ID: <b7084374dac32a3f39f7991fbdede65bb9ea0202.1731441366.git.mail@pisemsky.site>
From: Evgeny Pisemsky <mail@pisemsky.site>
Date: Tue, 12 Nov 2024 22:55:22 +0300
Subject: [PATCH] gnu: Add potato-make.
* gnu/packages/build-tools.scm (potato-make): New variable.
Change-Id: I86843b4001298ee984e6d1c35b59dc3b2e51d97f
---
gnu/packages/build-tools.scm | 47 ++++++++++++++++++++++++++++++++++++
1 file changed, 47 insertions(+)
diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index 21df25e4f5..c32dacac59 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -15,6 +15,7 @@
;;; Copyright © 2021 qblade <qblade@protonmail.com>
;;; Copyright © 2021, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022, 2023 Juliana Sims <juli@incana.org>
+;;; Copyright © 2024 Evgeny Pisemsky <mail@pisemsky.site>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -41,6 +42,7 @@ (define-module (gnu packages build-tools)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
+ #:use-module (guix build-system guile)
#:use-module (guix modules)
#:use-module (gnu packages)
#:use-module (gnu packages adns)
@@ -54,6 +56,7 @@ (define-module (gnu packages build-tools)
#:use-module (gnu packages cppi)
#:use-module (gnu packages elf)
#:use-module (gnu packages gcc)
+ #:use-module (gnu packages guile)
#:use-module (gnu packages linux)
#:use-module (gnu packages lisp)
#:use-module (gnu packages logging)
@@ -1042,3 +1045,47 @@ (define-public pdpmake
;; pdpmake is distributed under the public domain, but the sources include
;; tests under the GPL license version 2.
(license (list license:gpl2 license:public-domain))))
+
+(define-public potato-make
+ ;; No releases.
+ (let ((commit "e8c09ce1f6a33c013b27961b0a07f991db33e6fb")
+ (revision "0"))
+ (package
+ (name "potato-make")
+ (version (git-version "0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/spk121/potato-make")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0axgrkqdfip5f2bp7d2dprd74g58lyc0c7lgg2m93k5jqn1lpbmj"))
+ ;; Delete files of the seemingly unfinished pmake program.
+ (snippet '(begin
+ (delete-file "pmake")
+ (delete-file "documents/pmake.org")
+ (delete-file "make/main.scm")
+ (rmdir "documents")
+ (rmdir "make")))))
+ (build-system guile-build-system)
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'build 'check
+ (lambda _
+ ;; Delete test referencing nonexistent file.
+ (delete-file "tests/parse.sh")
+ (for-each (lambda (f)
+ (invoke "guile" "-L" "." "-s" f))
+ (find-files "tests")))))))
+ (native-inputs (list guile-3.0))
+ (home-page "https://github.com/spk121/potato-make")
+ (synopsis "Library to write makefiles in Guile Scheme")
+ (description
+ "Potato Make is a scheme library that aims to simplify the task of
+maintaining, updating, and regenerating programs. It is inspired by
+the POSIX make utility and allows to write a build script in Guile
+Scheme.")
+ (license license:expat))))
base-commit: b10ce47d8be5b6c15987f4e1d93b3bd71b1eb220
--
2.46.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* bug#74310: [PATCH] gnu: Add potato-make.
2024-11-12 20:00 ` Evgeny Pisemsky
@ 2024-11-12 22:53 ` Ludovic Courtès
0 siblings, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2024-11-12 22:53 UTC (permalink / raw)
To: Evgeny Pisemsky; +Cc: Noé Lopez, 74310-done
Evgeny Pisemsky <mail@pisemsky.site> skribis:
>>From b7084374dac32a3f39f7991fbdede65bb9ea0202 Mon Sep 17 00:00:00 2001
> Message-ID: <b7084374dac32a3f39f7991fbdede65bb9ea0202.1731441366.git.mail@pisemsky.site>
> From: Evgeny Pisemsky <mail@pisemsky.site>
> Date: Tue, 12 Nov 2024 22:55:22 +0300
> Subject: [PATCH] gnu: Add potato-make.
>
> * gnu/packages/build-tools.scm (potato-make): New variable.
>
> Change-Id: I86843b4001298ee984e6d1c35b59dc3b2e51d97f
Applied, thank you & Noé!
^ permalink raw reply [flat|nested] 5+ messages in thread
* [bug#74310] QA review for 74310
2024-11-11 11:35 [bug#74310] [PATCH] gnu: Add potato-make Evgeny Pisemsky
2024-11-11 20:57 ` Noé Lopez via Guix-patches via
@ 2024-11-11 20:58 ` Noé Lopez via Guix-patches via
1 sibling, 0 replies; 5+ messages in thread
From: Noé Lopez via Guix-patches via @ 2024-11-11 20:58 UTC (permalink / raw)
To: control, 74310
user guix
usertag 74310 + reviewed-looks-good
thanks
Guix QA review form submission:
Items marked as checked: Lint warnings, Commit messages, New package licenses, New package synopsis and descriptions
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-11-12 23:04 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-11 11:35 [bug#74310] [PATCH] gnu: Add potato-make Evgeny Pisemsky
2024-11-11 20:57 ` Noé Lopez via Guix-patches via
2024-11-12 20:00 ` Evgeny Pisemsky
2024-11-12 22:53 ` bug#74310: " Ludovic Courtès
2024-11-11 20:58 ` [bug#74310] QA review for 74310 Noé Lopez via Guix-patches via
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).