Subject: [bug#40708] gnu: font-gnu-unifont: Unify outputs for fonts.

From: Raghav Gururajan <[email-masked]>
Date: Mon, 11 May 2020 01:32:21 -0400

Hi Leo!

> Sorry for the delayed response.
> 
>> Unifont provides TrueType, PCF, and PSF. It does not have OTF fonts.
> 
> That's correct. I was suggesting a scenario of using more than one type. :-)
> 
>> Currently, if a user installs 'font-gnu-unifont' they get TrueType
>> fonts.
>>
>> On the other hand, the PSF fonts can be used in the bootloader and the
>> Linux console, and they are only 68 kilobytes, rather than ~22 megabytes
>> if you combine all the font outputs. I don't see a compelling reason for
>> that increase.
> 
> OK. I think of two reasons: 1) If one installs this package with
> suggested patch, the user can use unifont for any purpose as they wish.
> It may be application (ttf), console/grub (psf) and/or display server
> (pcf). 2) The setup will be consistent with other font packages, where
> the package installs fonts with all the types it can provide.
> 
>> If the problem is that packages with multiple outputs are confusing, we
>> should try to improve the UI, and we shouldn't use multiple outputs if
>> there isn't a good reason. But this is a case where I think it makes
>> sense.
> 
> Improving UI would be good too. Regarding multiple outputs, I think it
> is good enough to separate libs, bins and docs. In this packages, we
> already separated bin and fonts. I suggest that we shall not separate
> fonts further into it's subtypes. That is all I ask. :-)

I have attached revised patch with this email. :-)

Regards,
RG.

From 70037b0f0f640c64aa2323a0bc8ba85a17c5559e Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <[email-masked]>
Date: Mon, 11 May 2020 01:26:43 -0400
Subject: [PATCH] gnu: font-gnu-unifont: Unify outputs for fonts.

* gnu/package/fonts.scm (font-gnu-unifont): Combine font types.
[arguments]<'install>: Change outputs for pcf and psf to "out".
---
 gnu/packages/fonts.scm | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index 6e9b080299..a79bdf72a6 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -689,9 +689,7 @@ for use at smaller text sizes")))
        (sha256
         (base32 "1svzm3xahb2m8r79ha9gb1z3zlckykx9d87cghswj7dxn9868j4b"))))
     (build-system gnu-build-system)
-    (outputs '("out"   ; TrueType version
-               "pcf"   ; PCF (bitmap) version
-               "psf"   ; PSF (console) version
+    (outputs '("out"   ; Fonts
                "bin")) ; Utilities to manipulate '.hex' format
     (arguments
      '(#:tests? #f          ; no check target
@@ -705,10 +703,10 @@ for use at smaller text sizes")))
           (lambda* (#:key outputs #:allow-other-keys)
             (let* ((ttf (string-append (assoc-ref outputs "out")
                                        "/share/fonts/truetype"))
-                   (pcf (string-append (assoc-ref outputs "pcf")
-                                       "/share/fonts/misc"))
-                   (psf (string-append (assoc-ref outputs "psf")
-                                       "/share/consolefonts"))
+                   (pcf (string-append (assoc-ref outputs "out")
+                                       "/share/fonts/portablecompiled"))
+                   (psf (string-append (assoc-ref outputs "out")
+                                       "/share/fonts/pcscreen"))
                    (bin (assoc-ref outputs "bin")))
               (invoke "make"
                       (string-append "PREFIX=" bin)
-- 
2.26.2