unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend)
@ 2018-04-25  6:33 Rutger Helling
  2018-04-25 11:19 ` Marius Bakke
  0 siblings, 1 reply; 7+ messages in thread
From: Rutger Helling @ 2018-04-25  6:33 UTC (permalink / raw)
  To: 31254


[-- Attachment #1.1: Type: text/plain, Size: 578 bytes --]

Hey Guix,

I saw QEMU was just updated to 2.12. I noticed a few things in the
release notes, namely:
* QEMU can now be built with Python 3.
* Support for SDL 1.2 is considered deprecated and will be removed
  entirely in a future release.

As a result, the first patch builds QEMU with Python 3 and SDL 2.

The second patch is optional and adds the GTK 3 frontend, which IMO
is a nice alternative to the SDL frontend.
This does increase the size of QEMU a bit. OTOH it seems unlikely that
most people who use QEMU don't already have GTK 3 installed in some
form.

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-gnu-qemu-Build-with-Python-3-and-SDL-2.patch --]
[-- Type: text/x-patch, Size: 3826 bytes --]

From 2f1626d4526fee5e7a2836d811c96cc2c823ce71 Mon Sep 17 00:00:00 2001
From: Rutger Helling <rhelling@mykolab.com>
Date: Wed, 25 Apr 2018 08:13:44 +0200
Subject: [PATCH 1/2] gnu: qemu: Build with Python 3 and SDL 2.

* gnu/packages/virtualization.scm (qemu)[arguments]: Add configure-flag to build
with Python 3.
[inputs]: Use sdl2 instead of sdl.
[native-inputs]: Use python instead of python@2.
* gnu/packages/virtualization.scm (qemu-minimal)[native-inputs]: Remove python
from inherited packages and use python@2 instead.
[inputs]: Remove sdl2 instead of sdl from inherited packages.
---
 gnu/packages/virtualization.scm | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 86f4d7136..46b136e31 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2017 Andy Patterson <ajpatter@uwaterloo.ca>
-;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
@@ -101,6 +101,11 @@
        ;; boot_sector_test: assertion failed (signature == SIGNATURE): (0x00000000 == 0x0000dead)
        #:parallel-tests? #f
        #:configure-flags (list "--enable-usb-redir" "--enable-opengl"
+                               ;; Remove below once Python 3 becomes the default
+                               ;; 'python' binary.
+                               (string-append "--python="
+                                              (assoc-ref %build-inputs "python")
+                                              "/bin/python3")
                                (string-append "--smbd="
                                               (assoc-ref %outputs "out")
                                               "/libexec/samba-wrapper")
@@ -187,7 +192,7 @@ exec smbd $@")))
        ;; ("pciutils" ,pciutils)
        ("pixman" ,pixman)
        ("pulseaudio" ,pulseaudio)
-       ("sdl" ,sdl)
+       ("sdl2" ,sdl2)
        ("spice" ,spice)
        ("usbredir" ,usbredir)
        ("util-linux" ,util-linux)
@@ -197,7 +202,7 @@ exec smbd $@")))
     (native-inputs `(("glib:bin" ,glib "bin") ; gtester, etc.
                      ("perl" ,perl)
                      ("pkg-config" ,pkg-config)
-                     ("python" ,python-2) ; incompatible with Python 3 according to error message
+                     ("python" ,python)
                      ("texinfo" ,texinfo)))
     (home-page "https://www.qemu.org")
     (synopsis "Machine emulator and virtualizer")
@@ -231,9 +236,13 @@ server and embedded PowerPC, and S390 guests.")
         ;; Restrict to the targets supported by Guix.
         ''("--target-list=i386-softmmu,x86_64-softmmu,mips64el-softmmu,arm-softmmu,aarch64-softmmu"))))
 
+    ;; qemu-minimal-2.10 needs Python 2. Remove below once no longer necessary.
+    (native-inputs `(("python-2" ,python-2)
+                     ,@(fold alist-delete (package-native-inputs qemu)
+                             '("python"))))
     ;; Remove dependencies on optional libraries, notably GUI libraries.
     (inputs (fold alist-delete (package-inputs qemu)
-                  '("libusb" "mesa" "sdl" "spice" "virglrenderer"
+                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer"
                     "usbredir" "libdrm" "libepoxy" "pulseaudio")))))
 
 (define-public libosinfo
-- 
2.17.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.3: 0002-gnu-qemu-Enable-GTK-3-frontend.patch --]
[-- Type: text/x-patch, Size: 1997 bytes --]

From a0cc0f8f5632374567ee760d629d80703ec0f41e Mon Sep 17 00:00:00 2001
From: Rutger Helling <rhelling@mykolab.com>
Date: Wed, 25 Apr 2018 08:14:33 +0200
Subject: [PATCH 2/2] gnu: qemu: Enable GTK 3 frontend.

* gnu/packages/virtualization.scm (qemu)[inputs]: Add "gettext", "gtk+" to
inputs.
* gnu/packages/virtualization.scm (qemu-minimal)[inputs]: Remove "gettext",
"gtk+" from inherited inputs.
---
 gnu/packages/virtualization.scm | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 46b136e31..3b8e698a8 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -39,6 +39,7 @@
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
@@ -177,7 +178,9 @@ exec smbd $@")))
     (inputs                                       ; TODO: Add optional inputs.
      `(("alsa-lib" ,alsa-lib)
        ("attr" ,attr)
+       ("gettext" ,gettext-minimal)
        ("glib" ,glib)
+       ("gtk+" ,gtk+)
        ("libaio" ,libaio)
        ("libattr" ,attr)
        ("libcap" ,libcap)           ; virtfs support requires libcap & libattr
@@ -242,8 +245,8 @@ server and embedded PowerPC, and S390 guests.")
                              '("python"))))
     ;; Remove dependencies on optional libraries, notably GUI libraries.
     (inputs (fold alist-delete (package-inputs qemu)
-                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer"
-                    "usbredir" "libdrm" "libepoxy" "pulseaudio")))))
+                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer" "gettext"
+                    "gtk+" "usbredir" "libdrm" "libepoxy" "pulseaudio")))))
 
 (define-public libosinfo
   (package
-- 
2.17.0


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend)
  2018-04-25  6:33 [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) Rutger Helling
@ 2018-04-25 11:19 ` Marius Bakke
  2018-04-25 13:26   ` [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v2 Rutger Helling
  0 siblings, 1 reply; 7+ messages in thread
From: Marius Bakke @ 2018-04-25 11:19 UTC (permalink / raw)
  To: Rutger Helling, 31254

[-- Attachment #1: Type: text/plain, Size: 4775 bytes --]

Hello!

Rutger Helling <rhelling@mykolab.com> writes:

> Hey Guix,
>
> I saw QEMU was just updated to 2.12. I noticed a few things in the
> release notes, namely:
> * QEMU can now be built with Python 3.
> * Support for SDL 1.2 is considered deprecated and will be removed
>   entirely in a future release.
>
> As a result, the first patch builds QEMU with Python 3 and SDL 2.

Thanks for looking after this.  I didn't realize it was using SDL1!

> The second patch is optional and adds the GTK 3 frontend, which IMO
> is a nice alternative to the SDL frontend.
> This does increase the size of QEMU a bit. OTOH it seems unlikely that
> most people who use QEMU don't already have GTK 3 installed in some
> form.

Using `guix size`, stock qemu is ~916MiB, and adding gtk+ brings it to
~1131MiB.  I'm not familiar with the GTK+ frontend, would it make sense
to add it in a separate output?

Alternatively, could we replace the SDL frontend with it?

> From 2f1626d4526fee5e7a2836d811c96cc2c823ce71 Mon Sep 17 00:00:00 2001
> From: Rutger Helling <rhelling@mykolab.com>
> Date: Wed, 25 Apr 2018 08:13:44 +0200
> Subject: [PATCH 1/2] gnu: qemu: Build with Python 3 and SDL 2.
>
> * gnu/packages/virtualization.scm (qemu)[arguments]: Add configure-flag to build
> with Python 3.
> [inputs]: Use sdl2 instead of sdl.
> [native-inputs]: Use python instead of python@2.
> * gnu/packages/virtualization.scm (qemu-minimal)[native-inputs]: Remove python
> from inherited packages and use python@2 instead.
> [inputs]: Remove sdl2 instead of sdl from inherited packages.

[...]

> @@ -101,6 +101,11 @@
>         ;; boot_sector_test: assertion failed (signature == SIGNATURE): (0x00000000 == 0x0000dead)
>         #:parallel-tests? #f
>         #:configure-flags (list "--enable-usb-redir" "--enable-opengl"
> +                               ;; Remove below once Python 3 becomes the default
> +                               ;; 'python' binary.
> +                               (string-append "--python="
> +                                              (assoc-ref %build-inputs "python")
> +                                              "/bin/python3")

Note: You can use the 'python-wrapper' package, which has python3 as
"/bin/python".  Then this won't be necessary.

>                                 (string-append "--smbd="
>                                                (assoc-ref %outputs "out")
>                                                "/libexec/samba-wrapper")
> @@ -187,7 +192,7 @@ exec smbd $@")))
>         ;; ("pciutils" ,pciutils)
>         ("pixman" ,pixman)
>         ("pulseaudio" ,pulseaudio)
> -       ("sdl" ,sdl)
> +       ("sdl2" ,sdl2)
>         ("spice" ,spice)
>         ("usbredir" ,usbredir)
>         ("util-linux" ,util-linux)
> @@ -197,7 +202,7 @@ exec smbd $@")))
>      (native-inputs `(("glib:bin" ,glib "bin") ; gtester, etc.
>                       ("perl" ,perl)
>                       ("pkg-config" ,pkg-config)
> -                     ("python" ,python-2) ; incompatible with Python 3 according to error message
> +                     ("python" ,python)
>                       ("texinfo" ,texinfo)))
>      (home-page "https://www.qemu.org")
>      (synopsis "Machine emulator and virtualizer")
> @@ -231,9 +236,13 @@ server and embedded PowerPC, and S390 guests.")
>          ;; Restrict to the targets supported by Guix.
>          ''("--target-list=i386-softmmu,x86_64-softmmu,mips64el-softmmu,arm-softmmu,aarch64-softmmu"))))
>  
> +    ;; qemu-minimal-2.10 needs Python 2. Remove below once no longer necessary.
> +    (native-inputs `(("python-2" ,python-2)
> +                     ,@(fold alist-delete (package-native-inputs qemu)
> +                             '("python"))))

It's better to do this in the actual Qemu 2.10 package instead of
arbitrarily using a different Python version in "qemu-minimal" IMO.

Perhaps we should move "qemu@2.10" from (gnu packages bootloaders) into
here and make this change in that package.  WDYT?  Ideally as a public
"hidden-package" so it's not visible to end users.

Can you try it?

[...]

> From a0cc0f8f5632374567ee760d629d80703ec0f41e Mon Sep 17 00:00:00 2001
> From: Rutger Helling <rhelling@mykolab.com>
> Date: Wed, 25 Apr 2018 08:14:33 +0200
> Subject: [PATCH 2/2] gnu: qemu: Enable GTK 3 frontend.
>
> * gnu/packages/virtualization.scm (qemu)[inputs]: Add "gettext", "gtk+" to
> inputs.
> * gnu/packages/virtualization.scm (qemu-minimal)[inputs]: Remove "gettext",
> "gtk+" from inherited inputs.

'gettext' should probably be a native-input.  That said I wonder if the
GTK frontend should be a separate output due to the ~21% size increase,
but no strong opinion.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

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

* [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v2
  2018-04-25 11:19 ` Marius Bakke
@ 2018-04-25 13:26   ` Rutger Helling
  2018-04-25 13:40     ` Marius Bakke
  0 siblings, 1 reply; 7+ messages in thread
From: Rutger Helling @ 2018-04-25 13:26 UTC (permalink / raw)
  To: Marius Bakke; +Cc: 31254


[-- Attachment #1.1: Type: text/plain, Size: 5611 bytes --]

Hello Marius, 

Thanks for the review! I've taken your suggestions into account and
updated the patches.

I don't think it's possible to seperate the GTK3 frontend, since it's
just a parameter you pass to the qemu* binaries (-display gtk instead
of -display sdl).

From my understanding if you have both GTK3 and SDL2 enabled it
defaults to GTK3. We can remove the SDL2 frontend if there are no
objections (and probably sdl from the --audio-drv-list). I just figured
it'd be nicer to enable both to give users maximum flexibility.

On Wed, 25 Apr 2018 13:19:13 +0200
Marius Bakke <mbakke@fastmail.com> wrote:

> Hello!
> 
> Rutger Helling <rhelling@mykolab.com> writes:
> 
> > Hey Guix,
> >
> > I saw QEMU was just updated to 2.12. I noticed a few things in the
> > release notes, namely:
> > * QEMU can now be built with Python 3.
> > * Support for SDL 1.2 is considered deprecated and will be removed
> >   entirely in a future release.
> >
> > As a result, the first patch builds QEMU with Python 3 and SDL 2.  
> 
> Thanks for looking after this.  I didn't realize it was using SDL1!
> 
> > The second patch is optional and adds the GTK 3 frontend, which IMO
> > is a nice alternative to the SDL frontend.
> > This does increase the size of QEMU a bit. OTOH it seems unlikely
> > that most people who use QEMU don't already have GTK 3 installed in
> > some form.  
> 
> Using `guix size`, stock qemu is ~916MiB, and adding gtk+ brings it to
> ~1131MiB.  I'm not familiar with the GTK+ frontend, would it make
> sense to add it in a separate output?
> 
> Alternatively, could we replace the SDL frontend with it?
> 
> > From 2f1626d4526fee5e7a2836d811c96cc2c823ce71 Mon Sep 17 00:00:00
> > 2001 From: Rutger Helling <rhelling@mykolab.com>
> > Date: Wed, 25 Apr 2018 08:13:44 +0200
> > Subject: [PATCH 1/2] gnu: qemu: Build with Python 3 and SDL 2.
> >
> > * gnu/packages/virtualization.scm (qemu)[arguments]: Add
> > configure-flag to build with Python 3.
> > [inputs]: Use sdl2 instead of sdl.
> > [native-inputs]: Use python instead of python@2.
> > * gnu/packages/virtualization.scm (qemu-minimal)[native-inputs]:
> > Remove python from inherited packages and use python@2 instead.
> > [inputs]: Remove sdl2 instead of sdl from inherited packages.  
> 
> [...]
> 
> > @@ -101,6 +101,11 @@
> >         ;; boot_sector_test: assertion failed (signature ==
> > SIGNATURE): (0x00000000 == 0x0000dead) #:parallel-tests? #f
> >         #:configure-flags (list "--enable-usb-redir"
> > "--enable-opengl"
> > +                               ;; Remove below once Python 3
> > becomes the default
> > +                               ;; 'python' binary.
> > +                               (string-append "--python="
> > +                                              (assoc-ref
> > %build-inputs "python")
> > +                                              "/bin/python3")  
> 
> Note: You can use the 'python-wrapper' package, which has python3 as
> "/bin/python".  Then this won't be necessary.
> 
> >                                 (string-append "--smbd="
> >                                                (assoc-ref %outputs
> > "out") "/libexec/samba-wrapper")
> > @@ -187,7 +192,7 @@ exec smbd $@")))
> >         ;; ("pciutils" ,pciutils)
> >         ("pixman" ,pixman)
> >         ("pulseaudio" ,pulseaudio)
> > -       ("sdl" ,sdl)
> > +       ("sdl2" ,sdl2)
> >         ("spice" ,spice)
> >         ("usbredir" ,usbredir)
> >         ("util-linux" ,util-linux)
> > @@ -197,7 +202,7 @@ exec smbd $@")))
> >      (native-inputs `(("glib:bin" ,glib "bin") ; gtester, etc.
> >                       ("perl" ,perl)
> >                       ("pkg-config" ,pkg-config)
> > -                     ("python" ,python-2) ; incompatible with
> > Python 3 according to error message
> > +                     ("python" ,python)
> >                       ("texinfo" ,texinfo)))
> >      (home-page "https://www.qemu.org")
> >      (synopsis "Machine emulator and virtualizer")
> > @@ -231,9 +236,13 @@ server and embedded PowerPC, and S390 guests.")
> >          ;; Restrict to the targets supported by Guix.
> >          ''("--target-list=i386-softmmu,x86_64-softmmu,mips64el-softmmu,arm-softmmu,aarch64-softmmu"))))
> >  
> > +    ;; qemu-minimal-2.10 needs Python 2. Remove below once no
> > longer necessary.
> > +    (native-inputs `(("python-2" ,python-2)
> > +                     ,@(fold alist-delete (package-native-inputs
> > qemu)
> > +                             '("python"))))  
> 
> It's better to do this in the actual Qemu 2.10 package instead of
> arbitrarily using a different Python version in "qemu-minimal" IMO.
> 
> Perhaps we should move "qemu@2.10" from (gnu packages bootloaders)
> into here and make this change in that package.  WDYT?  Ideally as a
> public "hidden-package" so it's not visible to end users.
> 
> Can you try it?
> 
> [...]
> 
> > From a0cc0f8f5632374567ee760d629d80703ec0f41e Mon Sep 17 00:00:00
> > 2001 From: Rutger Helling <rhelling@mykolab.com>
> > Date: Wed, 25 Apr 2018 08:14:33 +0200
> > Subject: [PATCH 2/2] gnu: qemu: Enable GTK 3 frontend.
> >
> > * gnu/packages/virtualization.scm (qemu)[inputs]: Add "gettext",
> > "gtk+" to inputs.
> > * gnu/packages/virtualization.scm (qemu-minimal)[inputs]: Remove
> > "gettext", "gtk+" from inherited inputs.  
> 
> 'gettext' should probably be a native-input.  That said I wonder if
> the GTK frontend should be a separate output due to the ~21% size
> increase, but no strong opinion.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-gnu-qemu-Build-with-Python-3-and-SDL2-support.patch --]
[-- Type: text/x-patch, Size: 4864 bytes --]

From e1b40133c8aedf84090fbd4292af2b53eb22d669 Mon Sep 17 00:00:00 2001
From: Rutger Helling <rhelling@mykolab.com>
Date: Wed, 25 Apr 2018 14:59:11 +0200
Subject: [PATCH 1/2] gnu: qemu: Build with Python 3 and SDL2 support.

* gnu/packages/bootloaders.scm (qemu-minimal-2.10): Remove variable.
* gnu/packages/virtualization.scm (qemu)[inputs]: Use sdl2 instead of sdl.
[native-inputs]: Use python instead of python@2. Add python-wrapper.
* gnu/packages/virtualization.scm (qemu-minimal)[inputs]: Remove sdl2 instead of
sdl from inherited packages.
* gnu/packages/virtualization.scm (qemu-minimal-2.10): Add variable.
[native-inputs]: Remove python from inherited packages and use python@2 instead.
---
 gnu/packages/bootloaders.scm    | 16 ----------------
 gnu/packages/virtualization.scm | 30 ++++++++++++++++++++++++++----
 2 files changed, 26 insertions(+), 20 deletions(-)

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 281bb98fa..4350ff3a5 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -72,22 +72,6 @@
      (base32
       "0p2vhnc18cnbmb39vq4m7hzv4mhnm2l0a2s7gx3ar277fwng3hys"))))
 
-;; The GRUB test suite fails with later versions of Qemu, so we
-;; keep it at 2.10 for now.  See
-;; <https://lists.gnu.org/archive/html/bug-grub/2018-02/msg00004.html>.
-;; TODO: When grub no longer needs this version, move to gnu/packages/debug.scm.
-(define qemu-minimal-2.10
-  (package
-    (inherit qemu-minimal)
-    (version "2.10.2")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://download.qemu.org/qemu-"
-                                  version ".tar.xz"))
-              (sha256
-               (base32
-                "17w21spvaxaidi2am5lpsln8yjpyp2zi3s3gc6nsxj5arlgamzgw"))))))
-
 (define-public grub
   (package
     (name "grub")
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 86f4d7136..36bdc8f95 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2017 Andy Patterson <ajpatter@uwaterloo.ca>
-;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
@@ -187,7 +187,7 @@ exec smbd $@")))
        ;; ("pciutils" ,pciutils)
        ("pixman" ,pixman)
        ("pulseaudio" ,pulseaudio)
-       ("sdl" ,sdl)
+       ("sdl2" ,sdl2)
        ("spice" ,spice)
        ("usbredir" ,usbredir)
        ("util-linux" ,util-linux)
@@ -197,7 +197,8 @@ exec smbd $@")))
     (native-inputs `(("glib:bin" ,glib "bin") ; gtester, etc.
                      ("perl" ,perl)
                      ("pkg-config" ,pkg-config)
-                     ("python" ,python-2) ; incompatible with Python 3 according to error message
+                     ("python" ,python)
+                     ("python-wrapper" ,python-wrapper)
                      ("texinfo" ,texinfo)))
     (home-page "https://www.qemu.org")
     (synopsis "Machine emulator and virtualizer")
@@ -233,9 +234,30 @@ server and embedded PowerPC, and S390 guests.")
 
     ;; Remove dependencies on optional libraries, notably GUI libraries.
     (inputs (fold alist-delete (package-inputs qemu)
-                  '("libusb" "mesa" "sdl" "spice" "virglrenderer"
+                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer"
                     "usbredir" "libdrm" "libepoxy" "pulseaudio")))))
 
+;; The GRUB test suite fails with later versions of Qemu, so we
+;; keep it at 2.10 for now.  See
+;; <https://lists.gnu.org/archive/html/bug-grub/2018-02/msg00004.html>.
+;; TODO: When grub no longer needs this version, move to gnu/packages/debug.scm.
+(define-public qemu-minimal-2.10
+  (hidden-package
+   (package
+    (inherit qemu-minimal)
+    (version "2.10.2")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "https://download.qemu.org/qemu-"
+                                 version ".tar.xz"))
+             (sha256
+              (base32
+               "17w21spvaxaidi2am5lpsln8yjpyp2zi3s3gc6nsxj5arlgamzgw"))))
+    ;; qemu-minimal-2.10 needs Python 2. Remove below once no longer necessary.
+    (native-inputs `(("python-2" ,python-2)
+                     ,@(fold alist-delete (package-native-inputs qemu)
+                             '("python")))))))
+
 (define-public libosinfo
   (package
     (name "libosinfo")
-- 
2.17.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.3: 0002-gnu-qemu-Enable-GTK3-frontend.patch --]
[-- Type: text/x-patch, Size: 2520 bytes --]

From edea64c09dc1e0f391e860478dcf99f4d0d1a6d2 Mon Sep 17 00:00:00 2001
From: Rutger Helling <rhelling@mykolab.com>
Date: Wed, 25 Apr 2018 15:03:29 +0200
Subject: [PATCH 2/2] gnu: qemu: Enable GTK3 frontend.

* gnu/packages/virtualization.scm (qemu)[native-inputs]: Add "gettext" to native-inputs.
[inputs]: Add "gtk+" to inputs.
* gnu/packages/virtualization.scm (qemu-minimal)[native-inputs]: Remove "gettext"
from inherited inputs.
[inputs]: Remove "gtk+" from inherited inputs.
---
 gnu/packages/virtualization.scm | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 36bdc8f95..a12debe52 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -39,6 +39,7 @@
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
@@ -173,6 +174,7 @@ exec smbd $@")))
      `(("alsa-lib" ,alsa-lib)
        ("attr" ,attr)
        ("glib" ,glib)
+       ("gtk+" ,gtk+)
        ("libaio" ,libaio)
        ("libattr" ,attr)
        ("libcap" ,libcap)           ; virtfs support requires libcap & libattr
@@ -194,7 +196,8 @@ exec smbd $@")))
        ;; ("vde2" ,vde2)
        ("virglrenderer" ,virglrenderer)
        ("zlib" ,zlib)))
-    (native-inputs `(("glib:bin" ,glib "bin") ; gtester, etc.
+    (native-inputs `(("gettext" ,gettext-minimal)
+                     ("glib:bin" ,glib "bin") ; gtester, etc.
                      ("perl" ,perl)
                      ("pkg-config" ,pkg-config)
                      ("python" ,python)
@@ -233,8 +236,10 @@ server and embedded PowerPC, and S390 guests.")
         ''("--target-list=i386-softmmu,x86_64-softmmu,mips64el-softmmu,arm-softmmu,aarch64-softmmu"))))
 
     ;; Remove dependencies on optional libraries, notably GUI libraries.
+    (native-inputs (fold alist-delete (package-native-inputs qemu)
+                  '("gettext")))
     (inputs (fold alist-delete (package-inputs qemu)
-                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer"
+                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer" "gtk+"
                     "usbredir" "libdrm" "libepoxy" "pulseaudio")))))
 
 ;; The GRUB test suite fails with later versions of Qemu, so we
-- 
2.17.0


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v2
  2018-04-25 13:26   ` [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v2 Rutger Helling
@ 2018-04-25 13:40     ` Marius Bakke
  2018-04-26  6:30       ` [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v3 Rutger Helling
  0 siblings, 1 reply; 7+ messages in thread
From: Marius Bakke @ 2018-04-25 13:40 UTC (permalink / raw)
  To: Rutger Helling; +Cc: 31254

[-- Attachment #1: Type: text/plain, Size: 4094 bytes --]

Rutger Helling <rhelling@mykolab.com> writes:

> Hello Marius, 
>
> Thanks for the review! I've taken your suggestions into account and
> updated the patches.
>
> I don't think it's possible to seperate the GTK3 frontend, since it's
> just a parameter you pass to the qemu* binaries (-display gtk instead
> of -display sdl).
>
> From my understanding if you have both GTK3 and SDL2 enabled it
> defaults to GTK3. We can remove the SDL2 frontend if there are no
> objections (and probably sdl from the --audio-drv-list). I just figured
> it'd be nicer to enable both to give users maximum flexibility.

OK!

[...]

> From e1b40133c8aedf84090fbd4292af2b53eb22d669 Mon Sep 17 00:00:00 2001
> From: Rutger Helling <rhelling@mykolab.com>
> Date: Wed, 25 Apr 2018 14:59:11 +0200
> Subject: [PATCH 1/2] gnu: qemu: Build with Python 3 and SDL2 support.
>
> * gnu/packages/bootloaders.scm (qemu-minimal-2.10): Remove variable.
> * gnu/packages/virtualization.scm (qemu)[inputs]: Use sdl2 instead of sdl.
> [native-inputs]: Use python instead of python@2. Add python-wrapper.
> * gnu/packages/virtualization.scm (qemu-minimal)[inputs]: Remove sdl2 instead of
> sdl from inherited packages.
> * gnu/packages/virtualization.scm (qemu-minimal-2.10): Add variable.
> [native-inputs]: Remove python from inherited packages and use python@2 instead.
> ---
>  gnu/packages/bootloaders.scm    | 16 ----------------
>  gnu/packages/virtualization.scm | 30 ++++++++++++++++++++++++++----
>  2 files changed, 26 insertions(+), 20 deletions(-)

Can you adjust 'american-fuzzy-lop' to use the moved qemu-minimal-2.10
package too?  Please also drop the '@@ (gnu packages bootloaders)' stuff
and just use '(inherit qemu-minimal-2.10 ...)' now that it's public.

[...]

> @@ -187,7 +187,7 @@ exec smbd $@")))
>         ;; ("pciutils" ,pciutils)
>         ("pixman" ,pixman)
>         ("pulseaudio" ,pulseaudio)
> -       ("sdl" ,sdl)
> +       ("sdl2" ,sdl2)
>         ("spice" ,spice)
>         ("usbredir" ,usbredir)
>         ("util-linux" ,util-linux)
> @@ -197,7 +197,8 @@ exec smbd $@")))
>      (native-inputs `(("glib:bin" ,glib "bin") ; gtester, etc.
>                       ("perl" ,perl)
>                       ("pkg-config" ,pkg-config)
> -                     ("python" ,python-2) ; incompatible with Python 3 according to error message
> +                     ("python" ,python)
> +                     ("python-wrapper" ,python-wrapper)

The first "python" can be removed (only python-wrapper is necessary).

>                       ("texinfo" ,texinfo)))
>      (home-page "https://www.qemu.org")
>      (synopsis "Machine emulator and virtualizer")
> @@ -233,9 +234,30 @@ server and embedded PowerPC, and S390 guests.")
>  
>      ;; Remove dependencies on optional libraries, notably GUI libraries.
>      (inputs (fold alist-delete (package-inputs qemu)
> -                  '("libusb" "mesa" "sdl" "spice" "virglrenderer"
> +                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer"
>                      "usbredir" "libdrm" "libepoxy" "pulseaudio")))))
>  
> +;; The GRUB test suite fails with later versions of Qemu, so we
> +;; keep it at 2.10 for now.  See
> +;; <https://lists.gnu.org/archive/html/bug-grub/2018-02/msg00004.html>.
> +;; TODO: When grub no longer needs this version, move to gnu/packages/debug.scm.

The TODO line can be removed too.  And maybe add a comment such as "Keep
it hidden since we don't backport security patches" or something along
those lines.

[...]

> From edea64c09dc1e0f391e860478dcf99f4d0d1a6d2 Mon Sep 17 00:00:00 2001
> From: Rutger Helling <rhelling@mykolab.com>
> Date: Wed, 25 Apr 2018 15:03:29 +0200
> Subject: [PATCH 2/2] gnu: qemu: Enable GTK3 frontend.
>
> * gnu/packages/virtualization.scm (qemu)[native-inputs]: Add "gettext" to native-inputs.
> [inputs]: Add "gtk+" to inputs.
> * gnu/packages/virtualization.scm (qemu-minimal)[native-inputs]: Remove "gettext"
> from inherited inputs.
> [inputs]: Remove "gtk+" from inherited inputs.

LGTM!

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

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

* [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v3
  2018-04-25 13:40     ` Marius Bakke
@ 2018-04-26  6:30       ` Rutger Helling
  2018-04-26 10:22         ` Marius Bakke
  0 siblings, 1 reply; 7+ messages in thread
From: Rutger Helling @ 2018-04-26  6:30 UTC (permalink / raw)
  To: Marius Bakke; +Cc: 31254


[-- Attachment #1.1: Type: text/plain, Size: 4536 bytes --]

Thanks again! I've made the changes, so here's another set of patches.
Note that the second patch is unchanged, just rebased.

On Wed, 25 Apr 2018 15:40:34 +0200
Marius Bakke <mbakke@fastmail.com> wrote:

> Rutger Helling <rhelling@mykolab.com> writes:
> 
> > Hello Marius, 
> >
> > Thanks for the review! I've taken your suggestions into account and
> > updated the patches.
> >
> > I don't think it's possible to seperate the GTK3 frontend, since
> > it's just a parameter you pass to the qemu* binaries (-display gtk
> > instead of -display sdl).
> >
> > From my understanding if you have both GTK3 and SDL2 enabled it
> > defaults to GTK3. We can remove the SDL2 frontend if there are no
> > objections (and probably sdl from the --audio-drv-list). I just
> > figured it'd be nicer to enable both to give users maximum
> > flexibility.  
> 
> OK!
> 
> [...]
> 
> > From e1b40133c8aedf84090fbd4292af2b53eb22d669 Mon Sep 17 00:00:00
> > 2001 From: Rutger Helling <rhelling@mykolab.com>
> > Date: Wed, 25 Apr 2018 14:59:11 +0200
> > Subject: [PATCH 1/2] gnu: qemu: Build with Python 3 and SDL2
> > support.
> >
> > * gnu/packages/bootloaders.scm (qemu-minimal-2.10): Remove variable.
> > * gnu/packages/virtualization.scm (qemu)[inputs]: Use sdl2 instead
> > of sdl. [native-inputs]: Use python instead of python@2. Add
> > python-wrapper.
> > * gnu/packages/virtualization.scm (qemu-minimal)[inputs]: Remove
> > sdl2 instead of sdl from inherited packages.
> > * gnu/packages/virtualization.scm (qemu-minimal-2.10): Add variable.
> > [native-inputs]: Remove python from inherited packages and use
> > python@2 instead. ---
> >  gnu/packages/bootloaders.scm    | 16 ----------------
> >  gnu/packages/virtualization.scm | 30 ++++++++++++++++++++++++++----
> >  2 files changed, 26 insertions(+), 20 deletions(-)  
> 
> Can you adjust 'american-fuzzy-lop' to use the moved qemu-minimal-2.10
> package too?  Please also drop the '@@ (gnu packages bootloaders)'
> stuff and just use '(inherit qemu-minimal-2.10 ...)' now that it's
> public.
> 
> [...]
> 
> > @@ -187,7 +187,7 @@ exec smbd $@")))
> >         ;; ("pciutils" ,pciutils)
> >         ("pixman" ,pixman)
> >         ("pulseaudio" ,pulseaudio)
> > -       ("sdl" ,sdl)
> > +       ("sdl2" ,sdl2)
> >         ("spice" ,spice)
> >         ("usbredir" ,usbredir)
> >         ("util-linux" ,util-linux)
> > @@ -197,7 +197,8 @@ exec smbd $@")))
> >      (native-inputs `(("glib:bin" ,glib "bin") ; gtester, etc.
> >                       ("perl" ,perl)
> >                       ("pkg-config" ,pkg-config)
> > -                     ("python" ,python-2) ; incompatible with
> > Python 3 according to error message
> > +                     ("python" ,python)
> > +                     ("python-wrapper" ,python-wrapper)  
> 
> The first "python" can be removed (only python-wrapper is necessary).
> 
> >                       ("texinfo" ,texinfo)))
> >      (home-page "https://www.qemu.org")
> >      (synopsis "Machine emulator and virtualizer")
> > @@ -233,9 +234,30 @@ server and embedded PowerPC, and S390 guests.")
> >  
> >      ;; Remove dependencies on optional libraries, notably GUI
> > libraries. (inputs (fold alist-delete (package-inputs qemu)
> > -                  '("libusb" "mesa" "sdl" "spice" "virglrenderer"
> > +                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer"
> >                      "usbredir" "libdrm" "libepoxy"
> > "pulseaudio"))))) 
> > +;; The GRUB test suite fails with later versions of Qemu, so we
> > +;; keep it at 2.10 for now.  See
> > +;;
> > <https://lists.gnu.org/archive/html/bug-grub/2018-02/msg00004.html>.
> > +;; TODO: When grub no longer needs this version, move to
> > gnu/packages/debug.scm.  
> 
> The TODO line can be removed too.  And maybe add a comment such as
> "Keep it hidden since we don't backport security patches" or
> something along those lines.
> 
> [...]
> 
> > From edea64c09dc1e0f391e860478dcf99f4d0d1a6d2 Mon Sep 17 00:00:00
> > 2001 From: Rutger Helling <rhelling@mykolab.com>
> > Date: Wed, 25 Apr 2018 15:03:29 +0200
> > Subject: [PATCH 2/2] gnu: qemu: Enable GTK3 frontend.
> >
> > * gnu/packages/virtualization.scm (qemu)[native-inputs]: Add
> > "gettext" to native-inputs. [inputs]: Add "gtk+" to inputs.
> > * gnu/packages/virtualization.scm (qemu-minimal)[native-inputs]:
> > Remove "gettext" from inherited inputs.
> > [inputs]: Remove "gtk+" from inherited inputs.  
> 
> LGTM!


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-gnu-qemu-Build-with-Python-3-and-SDL2-support.patch --]
[-- Type: text/x-patch, Size: 5858 bytes --]

From 27b224a217e3896488eb5210d466e08452541a18 Mon Sep 17 00:00:00 2001
From: Rutger Helling <rhelling@mykolab.com>
Date: Thu, 26 Apr 2018 08:14:50 +0200
Subject: [PATCH 1/2] gnu: qemu: Build with Python 3 and SDL2 support.

* gnu/packages/bootloaders.scm (qemu-minimal-2.10): Remove variable.
* gnu/packages/virtualization.scm (qemu)[inputs]: Use sdl2 instead of sdl.
[native-inputs]: Use python-wrapper instead of python@2.
* gnu/packages/virtualization.scm (qemu-minimal)[inputs]: Remove sdl2 instead of
sdl from inherited packages.
* gnu/packages/virtualization.scm (qemu-minimal-2.10): Add variable.
[native-inputs]: Remove python-wrapper from inherited packages and use python@2
instead.
* gnu/packages/debug.scm (american-fuzzy-lop): Inherit from moved hidden-package
qemu-minimal-2.10.
---
 gnu/packages/bootloaders.scm    | 16 ----------------
 gnu/packages/debug.scm          |  3 ++-
 gnu/packages/virtualization.scm | 29 +++++++++++++++++++++++++----
 3 files changed, 27 insertions(+), 21 deletions(-)

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 281bb98fa..4350ff3a5 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -72,22 +72,6 @@
      (base32
       "0p2vhnc18cnbmb39vq4m7hzv4mhnm2l0a2s7gx3ar277fwng3hys"))))
 
-;; The GRUB test suite fails with later versions of Qemu, so we
-;; keep it at 2.10 for now.  See
-;; <https://lists.gnu.org/archive/html/bug-grub/2018-02/msg00004.html>.
-;; TODO: When grub no longer needs this version, move to gnu/packages/debug.scm.
-(define qemu-minimal-2.10
-  (package
-    (inherit qemu-minimal)
-    (version "2.10.2")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://download.qemu.org/qemu-"
-                                  version ".tar.xz"))
-              (sha256
-               (base32
-                "17w21spvaxaidi2am5lpsln8yjpyp2zi3s3gc6nsxj5arlgamzgw"))))))
-
 (define-public grub
   (package
     (name "grub")
diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm
index 112c656ff..c12baf4e2 100644
--- a/gnu/packages/debug.scm
+++ b/gnu/packages/debug.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -169,7 +170,7 @@ tools that process C/C++ code.")
       (inputs
        `(("custom-qemu"
           ;; The afl-qemu tool builds qemu 2.10.0 with a few patches applied.
-          ,(package (inherit (@@ (gnu packages bootloaders) qemu-minimal-2.10))
+          ,(package (inherit qemu-minimal-2.10)
              (name "afl-qemu")
              (inputs
               `(("afl-src" ,source)
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 86f4d7136..74144b9db 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2017 Andy Patterson <ajpatter@uwaterloo.ca>
-;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
@@ -187,7 +187,7 @@ exec smbd $@")))
        ;; ("pciutils" ,pciutils)
        ("pixman" ,pixman)
        ("pulseaudio" ,pulseaudio)
-       ("sdl" ,sdl)
+       ("sdl2" ,sdl2)
        ("spice" ,spice)
        ("usbredir" ,usbredir)
        ("util-linux" ,util-linux)
@@ -197,7 +197,7 @@ exec smbd $@")))
     (native-inputs `(("glib:bin" ,glib "bin") ; gtester, etc.
                      ("perl" ,perl)
                      ("pkg-config" ,pkg-config)
-                     ("python" ,python-2) ; incompatible with Python 3 according to error message
+                     ("python-wrapper" ,python-wrapper)
                      ("texinfo" ,texinfo)))
     (home-page "https://www.qemu.org")
     (synopsis "Machine emulator and virtualizer")
@@ -233,9 +233,30 @@ server and embedded PowerPC, and S390 guests.")
 
     ;; Remove dependencies on optional libraries, notably GUI libraries.
     (inputs (fold alist-delete (package-inputs qemu)
-                  '("libusb" "mesa" "sdl" "spice" "virglrenderer"
+                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer"
                     "usbredir" "libdrm" "libepoxy" "pulseaudio")))))
 
+;; The GRUB test suite fails with later versions of Qemu, so we
+;; keep it at 2.10 for now.  See
+;; <https://lists.gnu.org/archive/html/bug-grub/2018-02/msg00004.html>.
+;; This package is hidden since we do not backport updates to it.
+(define-public qemu-minimal-2.10
+  (hidden-package
+   (package
+    (inherit qemu-minimal)
+    (version "2.10.2")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "https://download.qemu.org/qemu-"
+                                 version ".tar.xz"))
+             (sha256
+              (base32
+               "17w21spvaxaidi2am5lpsln8yjpyp2zi3s3gc6nsxj5arlgamzgw"))))
+    ;; qemu-minimal-2.10 needs Python 2. Remove below once no longer necessary.
+    (native-inputs `(("python-2" ,python-2)
+                     ,@(fold alist-delete (package-native-inputs qemu)
+                             '("python-wrapper")))))))
+
 (define-public libosinfo
   (package
     (name "libosinfo")
-- 
2.17.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.3: 0002-gnu-qemu-Enable-GTK3-frontend.patch --]
[-- Type: text/x-patch, Size: 2536 bytes --]

From cd8d059b51e78f942789ef1642c00500a4d6c86d Mon Sep 17 00:00:00 2001
From: Rutger Helling <rhelling@mykolab.com>
Date: Thu, 26 Apr 2018 08:17:05 +0200
Subject: [PATCH 2/2] gnu: qemu: Enable GTK3 frontend.

* gnu/packages/virtualization.scm (qemu)[native-inputs]: Add "gettext" to native-inputs.
[inputs]: Add "gtk+" to inputs.
* gnu/packages/virtualization.scm (qemu-minimal)[native-inputs]: Remove "gettext"
from inherited inputs.
[inputs]: Remove "gtk+" from inherited inputs.
---
 gnu/packages/virtualization.scm | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 74144b9db..465439f01 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -39,6 +39,7 @@
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
@@ -173,6 +174,7 @@ exec smbd $@")))
      `(("alsa-lib" ,alsa-lib)
        ("attr" ,attr)
        ("glib" ,glib)
+       ("gtk+" ,gtk+)
        ("libaio" ,libaio)
        ("libattr" ,attr)
        ("libcap" ,libcap)           ; virtfs support requires libcap & libattr
@@ -194,7 +196,8 @@ exec smbd $@")))
        ;; ("vde2" ,vde2)
        ("virglrenderer" ,virglrenderer)
        ("zlib" ,zlib)))
-    (native-inputs `(("glib:bin" ,glib "bin") ; gtester, etc.
+    (native-inputs `(("gettext" ,gettext-minimal)
+                     ("glib:bin" ,glib "bin") ; gtester, etc.
                      ("perl" ,perl)
                      ("pkg-config" ,pkg-config)
                      ("python-wrapper" ,python-wrapper)
@@ -232,8 +235,10 @@ server and embedded PowerPC, and S390 guests.")
         ''("--target-list=i386-softmmu,x86_64-softmmu,mips64el-softmmu,arm-softmmu,aarch64-softmmu"))))
 
     ;; Remove dependencies on optional libraries, notably GUI libraries.
+    (native-inputs (fold alist-delete (package-native-inputs qemu)
+                  '("gettext")))
     (inputs (fold alist-delete (package-inputs qemu)
-                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer"
+                  '("libusb" "mesa" "sdl2" "spice" "virglrenderer" "gtk+"
                     "usbredir" "libdrm" "libepoxy" "pulseaudio")))))
 
 ;; The GRUB test suite fails with later versions of Qemu, so we
-- 
2.17.0


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v3
  2018-04-26  6:30       ` [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v3 Rutger Helling
@ 2018-04-26 10:22         ` Marius Bakke
  2018-04-26 10:54           ` bug#31254: " Rutger Helling
  0 siblings, 1 reply; 7+ messages in thread
From: Marius Bakke @ 2018-04-26 10:22 UTC (permalink / raw)
  To: Rutger Helling; +Cc: 31254

[-- Attachment #1: Type: text/plain, Size: 218 bytes --]

Rutger Helling <rhelling@mykolab.com> writes:

> Thanks again! I've made the changes, so here's another set of patches.
> Note that the second patch is unchanged, just rebased.

Excellent.  Both patches LGTM.  Thanks!

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

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

* bug#31254: gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v3
  2018-04-26 10:22         ` Marius Bakke
@ 2018-04-26 10:54           ` Rutger Helling
  0 siblings, 0 replies; 7+ messages in thread
From: Rutger Helling @ 2018-04-26 10:54 UTC (permalink / raw)
  To: Marius Bakke; +Cc: 31254-done

[-- Attachment #1: Type: text/plain, Size: 373 bytes --]

I pushed the patches. Thanks again for the help!

On Thu, 26 Apr 2018 12:22:54 +0200
Marius Bakke <mbakke@fastmail.com> wrote:

> Rutger Helling <rhelling@mykolab.com> writes:
> 
> > Thanks again! I've made the changes, so here's another set of
> > patches. Note that the second patch is unchanged, just rebased.  
> 
> Excellent.  Both patches LGTM.  Thanks!


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

end of thread, other threads:[~2018-04-26 10:55 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-25  6:33 [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) Rutger Helling
2018-04-25 11:19 ` Marius Bakke
2018-04-25 13:26   ` [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v2 Rutger Helling
2018-04-25 13:40     ` Marius Bakke
2018-04-26  6:30       ` [bug#31254] gnu: qemu: Build with Python 3 and SDL 2. (+ GTK 3 frontend) v3 Rutger Helling
2018-04-26 10:22         ` Marius Bakke
2018-04-26 10:54           ` bug#31254: " Rutger Helling

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).