Subject: [bug#72674] [PATCH] gnu: guix: Remove unnecessary dependencies.

From: Ludovic Courtès <[email-masked]>
Date: Fri, 16 Aug 2024 19:54:36 +0200

This reverts 0fda0486523d67c2c464386c07a0c2800d8d8c20, instead moving
the dependencies needed for ‘make dist’ to ‘manifest.scm’.

Removing this extra dependencies make it simpler to build the ‘guix’
package in particular on less-capable systems like i586-gnu.

* gnu/packages/package-management.scm (guix)[native-inputs]: Remove
IMAGEMAGICK and PERL.  Use GRAPHVIZ-MINIMAL instead of GRAPHVIZ.
* manifest.scm: Use the full-blown ‘graphviz’ package; add ‘imagemagick’
and ‘perl’.

Reported-by: Janneke Nieuwenhuizen <[email-masked]>
Change-Id: Ia9d05c699e3cc2f9a9235a67f8ec840c26b66a82
---
 gnu/packages/package-management.scm |  4 +---
 manifest.scm                        | 16 +++++++++++++++-
 2 files changed, 16 insertions(+), 4 deletions(-)

Hi!

As Janneke noted in <https://issues.guix.gnu.org/72643#7-lineno16>,
the new imagemagick dependency made it harder to get ‘guix’ built on
i586-gnu.  It’s also unnecessary.

WDYT?

Thanks,
Ludo’.

diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 77bda7f231..6fe0515d00 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -491,10 +491,8 @@ (define-public guix
                        ("automake" ,automake)
                        ("gettext" ,gettext-minimal)
                        ("texinfo" ,texinfo)
-                       ("graphviz" ,graphviz) ;non-minimal for PDF support
+                       ("graphviz" ,graphviz-minimal)
                        ("font-ghostscript" ,font-ghostscript) ;fonts for 'dot'
-                       ("imagemagick" ,imagemagick) ;for 'make dist'
-                       ("perl" ,perl)               ;for 'make dist'
                        ("help2man" ,help2man)
                        ("po4a" ,po4a-minimal)))
       (inputs
diff --git a/manifest.scm b/manifest.scm
index 7e4d82c3a5..27e1d62566 100644
--- a/manifest.scm
+++ b/manifest.scm
@@ -24,11 +24,25 @@
 ;;
 ;;     guix shell --pure -m manifest.scm hello ...
 
+(use-modules (guix packages))
+
 (concatenate-manifests
- (list (package->development-manifest (specification->package "guix"))
+ (list (package->development-manifest
+        (let ((guix (specification->package "guix")))
+          (package/inherit guix
+            ;; Replace with non-minimal Graphviz for PDF support.
+            (native-inputs (modify-inputs (package-native-inputs guix)
+                             (replace "graphviz"
+                               (specification->package "graphviz")))))))
+
        ;; Extra packages used by unit tests.
        (specifications->manifest (list "gnupg"))
 
+       ;; Packages needed for 'make dist' and 'make distcheck'.
+       (specifications->manifest
+        (list "imagemagick"
+              "perl"))
+
        ;; Useful extras for patches submission.
        (specifications->manifest
         (list "b4"

base-commit: 72e586fcae78e467d01e2add09c1db26be6bfa93
-- 
2.45.2