guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

font-packaging guidelines


From: not emma
Subject: font-packaging guidelines
Date: Thu, 02 May 2024 10:26:09 +0000

Hi !

I hope this is the right place to send this. First off, I've only been using Guix for a month now but wow I love it!  After getting the hangs of the basics I managed to create a working package for the JetBrainsMono Nerd Font  that's based off the code from this patch:

https://issues.guix.gnu.org/44476

However, rather than lumping all the fonts into a single package, I'm planning to package each one independently, and have them exist as part of a nerd-fonts module. I'd like to submit this package as a contribution so that others can use it too, but wanted some clarification on packaging guidelines before i started to write out the bulk of the code.

Currently, it's formatted like so:

   1   │ (define-module (bugchan packages font-nerd-fonts)
   2   │   #:use-module (guix packages)
   3   │   #:use-module (guix download)
   4   │   #:use-module (guix build-system font)
   5   │   #:use-module ((guix licenses) #:prefix license:))
   6   │
   7    │ (define-public font-jetbrainsmono-nerd-font
   8    │ (let ((version "v3.2.1"))
   9    │   (package
  10   │    (name "font-jetbrainsmono-nerd-font")
  11   │    (version version)
  12   │    (source (origin
  13   │         (method url-fetch)
  14   │         (uri (string-append "https://github.com/ryanoasis/nerd-fonts/releases/down
          │ load/" version "/JetBrainsMono.tar.xz"))
  15   │         (sha256
  16   │          (base32
  17   │                "01j0rkgrix7mdp9fx0y8zzk1kh40yfcp932p0r5y666aq4mq5y3c"))))
  18   │    (build-system font-build-system)
  19   │    (arguments
  20   │     `(#:phases
  21   │       (modify-phases %standard-phases
  22   │              (add-before 'install 'make-files-writable
  23   │                  (lambda _
  24   │                    (for-each
  25   │                     make-file-writable
  26   │                     (find-files "." ".*\\.(oft|otc|ttf|ttc) $"))
  27   │                    #t)))))
  28   │    (home-page "https://www.nerdfonts.com/")
  29   │    (synopsis "Iconic font aggregator, collection, and patcher")
  30   │    (description
  31   │     "Nerd Fonts patches developer targeted fonts with a high number
  32   │ of glyphs (icons). Specifically to add a high number of extra glyphs
  33   │ from popular ‘iconic fonts’ such as Font Awesome, Devicons, Octicons,
 and others.")
         (license license:expat))))

I followed the packaging guidelines from the manual, but wanted to double check still just in case I missed anything.

Thank you!

Sent with Proton Mail secure email.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]