Subject: bug#50171: closed (Re: bug#50171: Acknowledgement ([PATCH] gnu: qemu-minimal: Don't build static binaries.))

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 09 Sep 2021 13:12:03 +0000

Your bug report

#50171: [PATCH] gnu: qemu-minimal: Don't build static binaries.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
50171: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=50171
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#50171: Acknowledgement ([PATCH] gnu: qemu-minimal: Don't build static binaries.)
From: Efraim Flashner <[email-masked]>
To: [email-masked]
Date: Thu, 9 Sep 2021 16:08:46 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

Patch pushed!

-- 
Efraim Flashner   <[email-masked]>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

Subject: [PATCH] gnu: qemu-minimal: Don't build static binaries.
From: Efraim Flashner <[email-masked]>
To: [email-masked]
Date: Sun, 22 Aug 2021 22:24:06 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

* gnu/packages/virtualization.scm (qemu-minimal)[arguments]: Remove
inherited phases for static binaries.
[native-inputs]: Remove glib:static, pcre:static and zlib:static.
[outputs]: Remove static output.
---

This drops the package size by about 55%. If we can drop the firmware
files too that'd drop it down to about 42MB, from 260MB with this patch.
We probably don't need the firmware for what we're using qemu-minimal
for, but I haven't checked to see if it gets pulled in automagically
when we spin up VMs for making images.

---

 gnu/packages/virtualization.scm | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 1bbcb46b99..ceae1437c0 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -372,6 +372,7 @@ server and embedded PowerPC, and S390 guests.")
   (package
     (inherit qemu)
     (name "qemu-minimal")
+    (outputs '("out" "doc"))
     (synopsis
      "Machine emulator and virtualizer (without GUI) for the host architecture")
     (arguments
@@ -407,11 +408,16 @@ server and embedded PowerPC, and S390 guests.")
                    "--target-list=riscv32-softmmu,riscv64-softmmu")
                   (else       ; An empty list actually builds all the targets.
                    '()))))
-          `(cons ,target-list-arg ,configure-flags)))))
+          `(cons ,target-list-arg ,configure-flags)))
+       ((#:phases phases)
+        `(modify-phases ,phases
+           (delete 'configure-user-static)
+           (delete 'build-user-static)
+           (delete 'install-user-static)))))
 
     ;; Remove dependencies on optional libraries, notably GUI libraries.
     (native-inputs (fold alist-delete (package-native-inputs qemu)
-                         '("gettext")))
+                         '("gettext" "glib:static" "pcre:static" "zlib:static")))
     (inputs (fold alist-delete (package-inputs qemu)
                   '("libusb" "mesa" "sdl2" "spice" "virglrenderer" "gtk+"
                     "usbredir" "libdrm" "libepoxy" "pulseaudio" "vde2"

base-commit: 9e3b68203cba2b1bd96e524d3ae9dfc3336a72f7
-- 
2.33.0