all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#40552] [PATCH] gnu: hurd: Build DDE libraries.
@ 2020-04-11 12:05 Ricardo Wurmus
  2020-04-12 11:32 ` Jan Nieuwenhuizen
  0 siblings, 1 reply; 2+ messages in thread
From: Ricardo Wurmus @ 2020-04-11 12:05 UTC (permalink / raw)
  To: 40552; +Cc: Ricardo Wurmus

* gnu/packages/hurd.scm (hurd)[native-inputs]: Add "dde-sources".
[inputs]: Add libpciaccess.
[arguments]: Add phase "prepare-dde".
---
 gnu/packages/hurd.scm | 31 ++++++++++++++++++++++++++++++-
 1 file changed, 30 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm
index 5a56714d24..64911bfb1f 100644
--- a/gnu/packages/hurd.scm
+++ b/gnu/packages/hurd.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -40,6 +41,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages texinfo)
+  #:use-module (gnu packages xorg) ; libpciaccess
   #:use-module (guix git-download)
   #:export (hurd-system?
             hurd-target?
@@ -363,6 +365,19 @@ boot, since this cannot be done from GNU/Linux."
     (arguments
      `(#:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'prepare-dde
+           (lambda* (#:key native-inputs inputs #:allow-other-keys)
+             (substitute* "Makefile"
+               (("libbpf ")
+                "libbpf libmachdev libmachdevdde libddekit"))
+             (for-each make-file-writable (find-files "."))
+             (let ((dde (or (assoc-ref inputs "dde-sources")
+                            (assoc-ref native-inputs "dde-sources"))))
+               (for-each (lambda (dir)
+                           (copy-recursively
+                            (string-append dde "/" dir ) dir))
+                         '("libmachdev" "libmachdevdde" "libddekit")))
+             #t))
          (add-before 'build 'pre-build
            (lambda _
              ;; Don't change the ownership of any file at this time.
@@ -472,6 +487,7 @@ fsysopts / --writable\n"))
        ("libgcrypt" ,libgcrypt)                  ;for /hurd/random
        ("libdaemon" ,libdaemon)                  ;for /bin/console --daemonize
        ("unifont" ,unifont)
+       ("libpciaccess" ,libpciaccess)
 
        ;; Tools for the /libexec/* scripts.
        ("bash-minimal" ,bash-minimal)
@@ -492,7 +508,20 @@ fsysopts / --writable\n"))
                      (arguments `(#:system "i686-linux")))
                    mig))
        ("perl" ,perl)
-       ("texinfo" ,texinfo-4)))
+       ("texinfo" ,texinfo-4)
+       ("dde-sources"
+        ;; This is the current tip of the dde branch
+        ,(let ((commit "ac1c7eb7a8b24b7469bed5365be38a968d59a136"))
+           (origin
+             (method git-fetch)
+             (uri (git-reference
+                   (url "https://git.savannah.gnu.org/git/hurd/incubator.git")
+                   (commit commit)))
+             (sha256
+              (base32
+               "1vryinbg75xpydfrv9dbgfnds6knlh8l8bk2rxp32y9dc58z0692"))
+             (file-name (string-append "dde-checkout-"
+                                       (string-take commit 7))))))))
     (supported-systems %hurd-systems)
     (home-page "https://www.gnu.org/software/hurd/hurd.html")
     (synopsis "The kernel servers for the GNU operating system")
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [bug#40552] [PATCH] gnu: hurd: Build DDE libraries.
  2020-04-11 12:05 [bug#40552] [PATCH] gnu: hurd: Build DDE libraries Ricardo Wurmus
@ 2020-04-12 11:32 ` Jan Nieuwenhuizen
  0 siblings, 0 replies; 2+ messages in thread
From: Jan Nieuwenhuizen @ 2020-04-12 11:32 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: 40552

Ricardo Wurmus writes:

Hello Ricardo,

> * gnu/packages/hurd.scm (hurd)[native-inputs]: Add "dde-sources".
> [inputs]: Add libpciaccess.
> [arguments]: Add phase "prepare-dde".

Thank you, beautiful!  I applied it to wip-hurd-vm.  Using some extra
guix cross-build hacks that are not ready for savannah
(https://gitlab.com/janneke/guix/-/commits/wip-hurd-vm), I now managed
to build the first package on our own hurd VM:

    https://lilypond.org/janneke/hurd-candy/guix-build-make-boot0.png

A hacky script to do build `gnu-make-boot0':

is included as `build.sh'.

--8<---------------cut here---------------start------------->8---
#! /bin/sh
set -ex

guix-daemon --build-users-group=guixbuild --disable-chroot --disable-deduplication --max-jobs=1 &
guix archive --authorize < /run/current-system/profile/share/guix/ci.guix.gnu.org.pub
guix build -e '(@@ (gnu packages commencement) gnu-make-boot0)' --fallback --no-offload
--8<---------------cut here---------------end--------------->8---

Not marking this `done' yet, as the patch hasn't been merged on
core-updates.

However, this looks so nice and works so well: please feel free to push
a next patch (no pressure!) to wip-hurd-vm yourself!

Greetings,
janneke

-- 
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-04-12 11:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-11 12:05 [bug#40552] [PATCH] gnu: hurd: Build DDE libraries Ricardo Wurmus
2020-04-12 11:32 ` Jan Nieuwenhuizen

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.