Subject: [bug#57149] [PATCH] gnu: Add font-nerd-fonts-firacode

From: Benoit Joly <[email-masked]>
Date: Fri, 12 Aug 2022 08:30:48 -0400

Hi, 

I'll have a look on the licensing. It's not worth the effort if this is non free.

Thanks for the feedback!

Benoit 

On August 12, 2022 5:51:09 AM EDT, Liliana Marie Prikler <[email-masked]> wrote:
>Am Freitag, dem 12.08.2022 um 00:23 -0400 schrieb Benoit Joly:
>> * gnu/packages/fonts (font-nerd-fonts-firacode): New variable.
>> ---
>>  gnu/packages/fonts.scm | 35 +++++++++++++++++++++++++++++++++++
>>  1 file changed, 35 insertions(+)
>> 
>> diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
>> index 20b55bce96..0ce9ba8414 100644
>> --- a/gnu/packages/fonts.scm
>> +++ b/gnu/packages/fonts.scm
>> @@ -51,6 +51,7 @@
>>  ;;; Copyright © 2021 Liliana Marie Prikler
>> <[email-masked]>
>>  ;;; Copyright © 2022 Jose G Perez Taveras <[email-masked]>
>>  ;;; Copyright © 2022 Hilton Chain <[email-masked]>
>> +;;; Copyright © 2022 Benoit Joly <[email-masked]>
>>  ;;;
>>  ;;; This file is part of GNU Guix.
>>  ;;;
>> @@ -2795,3 +2796,37 @@ (define-public font-chiron-hei-hk
>>  Kong variant of Adobe’s Source Han Sans.  The font aims at providing
>> a modern,
>>  region-agnostic glyph set adopting the “modern” glyph style that is
>> similar to
>>  prevalent typefaces in Traditional Chinese regions.")))
>> +
>> +(define-public font-nerd-fonts-fira-code
>> +  (package
>> +   (name "font-nerd-fonts-fira-code")
>> +   (version "2.1.0")
>> +   (source
>> +    (origin
>> +     (method url-fetch)
>> +     (uri
>> +      (string-append
>> +       "https://github.com/ryanoasis/nerd-fonts/releases/download/v"
>> +       version
>> +       "/FiraCode.zip"))
>> +     (sha256
>> +      (base32
>> +       "1rx7zrkq0584k6hrh6dx30xrnz5nq379xyw73pfd4gxaxnh9mpi1"))))
>Use (uri (string-append "..."
>                        "...")
>> +   (build-system font-build-system)
>> +   (arguments
>> +    `(#:phases
>> +      (modify-phases %standard-phases
>> +        (add-before 'install 'make-files-writable
>> +          (lambda _
>> +            (for-each
>> +             make-file-writable
>> +             (find-files "." ".*\\.(otf|otc|ttf|ttc)$"))
>> +            #t)))))
>Why do the files need to be made writable for install?
>
>> +   (home-page "https://www.nerdfonts.com/")
>> +   (synopsis "Nerd fonts variant of FiraCode font")
>> +   (description
>> +    "Nerd fonts variant of FiraCode font.  Nerd Fonts is a project
>> that patches
>> +developer targeted fonts with a high number of glyphs (icons). 
>> Specifically to
>> +add a high number of extra glyphs from popular 'iconic fonts' such
>> as Font
>> +Awesome, Devicons, Octicons, and others.")
>> +   (license license:silofl1.1)))
>The description should consist of full sentences.  Note that Nerd fonts
>pulls in icons that are licensed under CC BY-NC-ND, which makes them
>unfree.  I'm not sure if those icons are present in the default
>distribution, but I'd hazard a guess that they are.
>
>More concerningly, the patches that can be applied via nerd fonts are
>directly coded into their font-patcher, rather than, say, distributed
>as a json file to be read separately.  As far as I'm aware, this makes
>nerd-fonts (the tool) itself NG.
>
>Cheers

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.