unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Attila Lendvai <attila@lendvai.name>
To: 54216@debbugs.gnu.org
Cc: Attila Lendvai <attila@lendvai.name>
Subject: [bug#54216] [PATCH v6] gnu: shepherd: Build Shepherd 0.9.2 from git.
Date: Mon, 26 Sep 2022 23:44:46 +0200	[thread overview]
Message-ID: <20220926214445.16793-1-attila@lendvai.name> (raw)
In-Reply-To: <20220301182848.26694-1-attila@lendvai.name>

The rationale for this is that it makes it simpler to start VM's with a
Shepherd that is compiled from a local checkout.  This facilitates hacking on
Shepherd itself, and testing it in the Guix init environment, by greatly
reducing the edit-compile-test cycle.

* gnu/packages/admin.scm (shepherd-0.9): Source points to the git repo; adjust
native-inputs accordingly.  Also delete the strip build phase.
---

v6: fix the (delete 'strip) merge error to always include it. GExp
experts may be able to simplify it, or chose to drop it altogether.

 gnu/packages/admin.scm | 50 +++++++++++++++++++++++-------------------
 1 file changed, 27 insertions(+), 23 deletions(-)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 5fb621e027..e57f0436cb 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -327,12 +327,13 @@ (define-public shepherd-0.9
     (inherit shepherd)
     (version "0.9.2")
     (source (origin
-              (method url-fetch)
-              (uri (string-append "mirror://gnu/shepherd/shepherd-"
-                                  version ".tar.gz"))
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://git.savannah.gnu.org/git/shepherd.git/")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name "shepherd" version))
               (sha256
-               (base32
-                "0mcby3ygh3bpns44rb1vnk8bz2km4nlw092nrcgkm3nkqfmbp4p1"))
+               (base32 "1b16qc7zmm1cz45gspcbng4djz9jy8db4awfw63b2hvf9b396mv2"))
               (modules '((guix build utils)))
               (snippet
                ;; Avoid continuation barriers so (@ (fibers) sleep) can be
@@ -347,24 +348,27 @@ (define-public shepherd-0.9
     (arguments
      (list #:configure-flags #~'("--localstatedir=/var")
            #:make-flags #~'("GUILE_AUTO_COMPILE=0")
-           #:phases (if (%current-target-system)
-                        #~(modify-phases %standard-phases
-                            (add-before 'configure 'set-fibers-directory
-                              (lambda _
-                                ;; When cross-compiling, refer to the target
-                                ;; Fibers, not the native one.
-                                (substitute* '("herd.in" "shepherd.in")
-                                  (("%FIBERS_SOURCE_DIRECTORY%")
-                                   #$(file-append
-                                      (this-package-input "guile-fibers")
-                                      "/share/guile/site/3.0"))
-                                  (("%FIBERS_OBJECT_DIRECTORY%")
-                                   #$(file-append
-                                      (this-package-input "guile-fibers")
-                                      "/lib/guile/3.0/site-ccache"))))))
-                        #~%standard-phases)))
-    (native-inputs (list pkg-config guile-3.0
-                         guile-fibers-1.1))       ;for cross-compilation
+           #:phases #~(modify-phases %standard-phases
+                        (delete 'strip) ; Warns when stripping .go files.
+                        #$@(if (%current-target-system)
+                               #~((add-before 'configure 'set-fibers-directory
+                                    (lambda _
+                                      ;; When cross-compiling, refer to the target
+                                      ;; Fibers, not the native one.
+                                      (substitute* '("herd.in" "shepherd.in")
+                                        (("%FIBERS_SOURCE_DIRECTORY%")
+                                         #$(file-append
+                                            (this-package-input "guile-fibers")
+                                            "/share/guile/site/3.0"))
+                                        (("%FIBERS_OBJECT_DIRECTORY%")
+                                         #$(file-append
+                                            (this-package-input "guile-fibers")
+                                            "/lib/guile/3.0/site-ccache"))))))
+                               #~()))))
+    (native-inputs
+     (list autoconf automake gettext-minimal help2man texinfo pkg-config
+           guile-fibers-1.1             ; for cross-compilation
+           guile-3.0))
     (inputs (list guile-3.0 guile-fibers-1.1))))
 
 (define-public guile2.2-shepherd
-- 
2.35.1





      parent reply	other threads:[~2022-09-26 21:57 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-01 18:28 [bug#54216] [PATCH] gnu: shepherd-for-guix: New package for use in Guix Attila Lendvai
2022-03-01 18:36 ` Maxime Devos
2022-03-01 18:45 ` [bug#54216] [PATCH v2] " Attila Lendvai
2022-03-01 19:01   ` Maxime Devos
2022-03-01 19:27     ` Attila Lendvai
2022-03-02  9:14       ` zimoun
2022-03-02 23:50         ` Leo Famulari
2022-03-03  6:25           ` Maxime Devos
2022-03-03  8:48             ` zimoun
2022-03-05 21:13             ` Leo Famulari
2022-03-05 21:50               ` Maxime Devos
2022-03-03 14:36         ` [bug#54216] [PATCH staging] gnu: shepherd: Build it from git, and clean up shepherd-for-guix Maxime Devos
2022-03-03 14:51           ` zimoun
2022-03-03  9:43 ` [bug#54216] [PATCH v3] gnu: shepherd-for-guix: New package for use in Guix Attila Lendvai
2022-03-03 14:28 ` [bug#54216] [PATCH staging] gnu: shepherd: Build it from git, and clean up shepherd-for-guix Attila Lendvai
2022-03-04 10:30 ` [bug#54216] [PATCH shepherd staging v2] " Attila Lendvai
2022-03-21 15:14 ` [bug#54216] [PATCH v4] gnu: shepherd-for-guix: New package for use in Guix Attila Lendvai
2022-03-21 15:41   ` [bug#54216] [PATCH] " Ludovic Courtès
2022-03-21 16:12     ` zimoun
2022-03-21 17:07 ` [bug#54216] [PATCH staging v3] gnu: shepherd: Build it from git, and clean up shepherd-for-guix Attila Lendvai
2022-03-22  9:27   ` Attila Lendvai
2022-03-22 13:48     ` Attila Lendvai
2022-03-22 14:42       ` pelzflorian (Florian Pelz)
2022-03-28  9:07         ` Attila Lendvai
2022-05-01 14:31 ` [bug#54216] [PATCH v4] gnu: shepherd: Build Shepherd 0.9.0 from git Attila Lendvai
2022-09-26 19:11 ` [bug#54216] [PATCH v5] gnu: shepherd: Build Shepherd 0.9.2 " Attila Lendvai
2022-09-26 21:44 ` Attila Lendvai [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220926214445.16793-1-attila@lendvai.name \
    --to=attila@lendvai.name \
    --cc=54216@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).