gnu: munge: Pass '--localstatedir=/var'.
[jackhill/guix/guix.git] / gnu / packages / fonts.scm
CommitLineData
86f1537d 1;;; GNU Guix --- Functional package management for GNU
4c89dc35 2;;; Copyright © 2013, 2014, 2015, 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
b18e5945 3;;; Copyright © 2014, 2017 Mark H Weaver <mhw@netris.org>
822efdff 4;;; Copyright © 2014 Joshua Grant <tadni@riseup.net>
16191117 5;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
692784dd 6;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
e93b88f7 7;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
d28fa5cc 8;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
df320991 9;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
47956fa0 10;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
b6ecac93 11;;; Copyright © 2016 Jookia <166291@gmail.com>
f85cafde 12;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
73c8d39c 13;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
d2b38df6 14;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
6e1d7aa9 15;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
c3e2a247 16;;; Copyright © 2016 Toni Reina <areina@riseup.net>
9296d4b6 17;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
83421fc7 18;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.com>
446e1d51 19;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
d5b09129 20;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
dcfa0acd 21;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
6aa4f09e 22;;; Copyright © 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
42ecb96e 23;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
270750d4 24;;; Copyright © 2018 Charlie Ritter <chewzerita@posteo.net>
3c5e1364 25;;; Copyright © 2018 Gabriel Hondet <gabrielhondet@gmail.com>
27e65afc 26;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk>
1a6482d4 27;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
86f1537d
AE
28;;;
29;;; This file is part of GNU Guix.
30;;;
31;;; GNU Guix is free software; you can redistribute it and/or modify it
32;;; under the terms of the GNU General Public License as published by
33;;; the Free Software Foundation; either version 3 of the License, or (at
34;;; your option) any later version.
35;;;
36;;; GNU Guix is distributed in the hope that it will be useful, but
37;;; WITHOUT ANY WARRANTY; without even the implied warranty of
38;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
39;;; GNU General Public License for more details.
40;;;
41;;; You should have received a copy of the GNU General Public License
42;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
43
44(define-module (gnu packages fonts)
6e1d7aa9 45 #:use-module (ice-9 regex)
71be99b8 46 #:use-module (guix utils)
b5b73a82 47 #:use-module ((guix licenses) #:prefix license:)
86f1537d
AE
48 #:use-module (guix packages)
49 #:use-module (guix download)
49dbae54 50 #:use-module (guix git-download)
b2f89c19 51 #:use-module (guix build-system font)
d41bb065 52 #:use-module (guix build-system gnu)
86f1537d 53 #:use-module (guix build-system trivial)
56b7a338 54 #:use-module (gnu packages base)
d41bb065 55 #:use-module (gnu packages compression)
47268eec 56 #:use-module (gnu packages fontutils)
d41bb065 57 #:use-module (gnu packages perl)
47268eec
AE
58 #:use-module (gnu packages pkg-config)
59 #:use-module (gnu packages python)
148585c2 60 #:use-module (gnu packages xorg))
86f1537d 61
270750d4
CR
62(define-public font-ibm-plex
63 (package
64 (name "font-ibm-plex")
65 (version "1.0.1")
66 (source (origin
67 (method url-fetch)
68 (uri (string-append
69 "https://github.com/IBM/plex/releases/download/"
70 "v" version "/OpenType.zip"))
71 (sha256
72 (base32
73 "0nzxw9z6waixslam248yr26ci3fbk83c7jf6m90hncnaj6zxx795"))))
74 (build-system font-build-system)
75 (home-page "https://github.com/IBM/plex")
76 (synopsis "IBM Plex typeface")
77 (description "This package provides the Plex font family. It comes in a
78Sans, Serif, Mono and Sans Condensed, all with roman and true italics. The
79fonts have been designed to work well in user interface (UI) environments as
80well as other mediums.")
81 (license license:silofl1.1)))
82
477ac94b 83(define-public font-inconsolata
dede51a1
ED
84 (package
85 (name "font-inconsolata")
86 (version "0.80")
87 (source (origin
88 (method url-fetch)
89 (uri "http://www.levien.com/type/myfonts/Inconsolata.otf")
90 (sha256
91 (base32
92 "06js6znbcf7swn8y3b8ki416bz96ay7d3yvddqnvi88lqhbfcq8m"))))
b2f89c19 93 (build-system font-build-system)
dede51a1
ED
94 (home-page "http://levien.com/type/myfonts/inconsolata.html")
95 (synopsis "Monospace font")
96 (description "A monospace font, designed for code listings and the like,
97in print. With attention to detail for high resolution rendering.")
98 (license license:silofl1.1)))
99
e93b88f7
ED
100(define-public font-ubuntu
101 (package
102 (name "font-ubuntu")
29f9abb4 103 (version "0.83")
e93b88f7 104 (source (origin
96cae1b4
JN
105 (method git-fetch)
106 (uri (git-reference
107 (url "https://salsa.debian.org/fonts-team/fonts-ubuntu")
108 (commit (string-append "upstream/" version))))
109 (file-name (git-file-name name version))
e93b88f7
ED
110 (sha256
111 (base32
96cae1b4 112 "1d2xrjpxy70f3nsgqiggwv6pj06qglf5vj2847pqx60w3ygi903g"))))
59786588 113 (build-system font-build-system)
e93b88f7
ED
114 (home-page "http://font.ubuntu.com/")
115 (synopsis "The Ubuntu Font Family")
116 (description "The Ubuntu Font Family is a unique, custom designed font
117that has a very distinctive look and feel. This package provides the
118TrueType (TTF) files.")
119 (license
120 (license:non-copyleft
121 "http://font.ubuntu.com/ufl/ubuntu-font-licence-1.0.txt"
122 "Ubuntu Font License v1.0"))))
123
5e6bdf06 124(define-public font-dejavu
72f210ea 125 (package
5e6bdf06 126 (name "font-dejavu")
d7284b6a 127 (version "2.37")
72f210ea
MW
128 (source (origin
129 (method url-fetch)
de67e922 130 (uri (string-append "mirror://sourceforge/dejavu/dejavu/"
72f210ea
MW
131 version "/dejavu-fonts-ttf-"
132 version ".tar.bz2"))
133 (sha256
134 (base32
d7284b6a 135 "1mqpds24wfs5cmfhj57fsfs07mji2z8812i5c4pi5pbi738s977s"))))
2e884019 136 (build-system font-build-system)
72f210ea 137 (arguments
2e884019
AI
138 `(#:phases
139 (modify-phases %standard-phases
140 (add-after 'install 'install-conf
141 (lambda* (#:key outputs #:allow-other-keys)
142 (let ((conf-dir (string-append (assoc-ref outputs "out")
143 "/share/fontconfig/conf.avail")))
38ef437b
MW
144 (copy-recursively "fontconfig" conf-dir)
145 #t))))))
db369e91 146 (home-page "https://dejavu-fonts.github.io/")
72f210ea
MW
147 (synopsis "Vera font family derivate with additional characters")
148 (description "DejaVu provides an expanded version of the Vera font family
149aiming for quality and broader Unicode coverage while retaining the original
b4774d87 150Vera style. DejaVu currently works towards conformance to the Multilingual
72f210ea
MW
151European Standards (MES-1 and MES-2) for Unicode coverage. The DejaVu fonts
152provide serif, sans and monospaced variants.")
153 (license
154 (license:x11-style
155 "http://dejavu-fonts.org/"))))
156
5e6bdf06 157(define-public font-bitstream-vera
86f1537d 158 (package
5e6bdf06 159 (name "font-bitstream-vera")
86f1537d
AE
160 (version "1.10")
161 (source (origin
162 (method url-fetch)
163 (uri (string-append "mirror://gnome/sources/ttf-bitstream-vera/"
164 version "/ttf-bitstream-vera-"
165 version ".tar.bz2"))
166 (sha256
167 (base32
168 "1p3qs51x5327gnk71yq8cvmxc6wgx79sqxfvxcv80cdvgggjfnyv"))))
e46e0de1 169 (build-system font-build-system)
f032d0be 170 (home-page "https://www.gnome.org/fonts/")
86f1537d
AE
171 (synopsis "Bitstream Vera sans-serif typeface")
172 (description "Vera is a sans-serif typeface from Bitstream, Inc. This
173package provides the TrueType (TTF) files.")
174 (license
d5b09129
CL
175 (license:fsdg-compatible
176 "https://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts"
177 "The Font Software may be sold as part of a larger software package but
178no copy of one or more of the Font Software typefaces may be sold by
179itself."))))
86f1537d 180
71be99b8
LC
181(define-public font-cantarell
182 (package
183 (name "font-abattis-cantarell")
b18e5945 184 (version "0.0.25")
71be99b8
LC
185 (source (origin
186 (method url-fetch)
187 (uri (string-append "mirror://gnome/sources/cantarell-fonts/"
188 (version-major+minor version)
189 "/cantarell-fonts-" version ".tar.xz"))
190 (sha256
191 (base32
b18e5945 192 "0zvkd8cm1cg2919v1js9qmzwa02sjl7qajj3gcvgqvai1fm2i8hl"))))
71be99b8
LC
193 (build-system gnu-build-system)
194 (home-page "https://wiki.gnome.org/Projects/CantarellFonts")
195 (synopsis "Cantarell sans-serif typeface")
196 (description "The Cantarell font family is a contemporary Humanist
197sans-serif designed for on-screen reading. It is used by GNOME@tie{}3.")
198 (license license:silofl1.1)))
199
4eb47420 200(define-public font-lato
201 (package
202 (name "font-lato")
253a4bb2 203 (version "2.010") ; also update description
4eb47420 204 (source (origin
803b9e8b 205 (method url-fetch/zipbomb)
253a4bb2 206 (uri (string-append "https://www.latofonts.com/download/Lato2OFL.zip"))
4eb47420 207 (sha256
208 (base32
209 "1f5540g0ja1nx3ddd3ywn77xc81ssrxpq8n3gyb9sabyq2b4xda2"))))
803b9e8b 210 (build-system font-build-system)
253a4bb2 211 (home-page "https://www.latofonts.com/lato-free-fonts/")
4eb47420 212 (synopsis "Lato sans-serif typeface")
213 (description
214 "Lato is a sanserif typeface family. It covers over 3000 glyphs per style.
215The Lato 2.010 family supports more than 100 Latin-based languages, over
21650 Cyrillic-based languages as well as Greek and IPA phonetics.")
217 (license license:silofl1.1)))
218
5e6bdf06 219(define-public font-gnu-freefont-ttf
86f1537d 220 (package
5e6bdf06 221 (name "font-gnu-freefont-ttf")
47268eec 222 (version "20120503")
86f1537d
AE
223 (source (origin
224 (method url-fetch)
47268eec 225 (uri (string-append "mirror://gnu/freefont/freefont-src-"
86f1537d
AE
226 version ".tar.gz"))
227 (sha256
228 (base32
47268eec
AE
229 "0yk58blhcd4hm7nyincmqq4jrzjjk82wif2zmk1l3y2m4vif4qhd"))))
230 (build-system gnu-build-system)
86f1537d 231 (arguments
47268eec
AE
232 `(#:phases (modify-phases %standard-phases
233 (delete 'configure)
234 (replace 'install
235 (lambda _
236 (let ((doc-dir (string-append %output "/share/doc/"
237 ,name "-" ,version))
238 (font-dir (string-append %output
239 "/share/fonts/truetype")))
240 (mkdir-p doc-dir)
241 (substitute* "Makefile"
242 (("\\$\\(TMPDIR\\)") doc-dir)
243 (("sfd/\\*.ttf") ""))
244 (system* "make" "ttftar")
245 (mkdir-p font-dir)
246 (for-each (lambda (file)
8837860c 247 (install-file file font-dir))
47268eec
AE
248 (filter
249 (lambda (file) (string-suffix? "ttf" file))
250 (find-files "." "")))))))
251 #:test-target "tests"))
252 ;; replace python 3 with python 2
253 ;; python 3 support commits aren't yet released in 20120503
254 ;; so freefont needs python 2 support in fontforge
255 (native-inputs `(("fontforge" ,(package (inherit fontforge)
256 (inputs `(("python-2" ,python-2)
257 ,@(package-inputs fontforge)))))))
6fd52309 258 (home-page "https://www.gnu.org/software/freefont/")
86f1537d
AE
259 (synopsis "Unicode-encoded outline fonts")
260 (description
261 "The GNU Freefont project aims to provide a set of free outline
262 (PostScript Type0, TrueType, OpenType...) fonts covering the ISO
26310646/Unicode UCS (Universal Character Set).")
63e8bb12
LC
264 (license license:gpl3+)
265 (properties '((upstream-name . "freefont")
266 (ftp-directory . "/gnu/freefont")))))
d41bb065 267
16191117
AK
268(define-public font-liberation
269 (package
270 (name "font-liberation")
0754f29a
TGR
271 (version "2.00.5")
272 (source
273 (origin
274 (method url-fetch)
275 (uri (string-append "https://github.com/liberationfonts/liberation-fonts/"
276 "files/2926169/liberation-fonts-ttf-" version ".tar.gz"))
277 (sha256
278 (base32 "0kdjsbf0y716k1kv0i0ixdpvg7b9b8xkcsg6favaxdc7pshg0kzi"))))
45d32e24 279 (build-system font-build-system)
0754f29a
TGR
280 (home-page "https://github.com/liberationfonts")
281 (synopsis "Fonts compatible with Arial, Times New Roman, and Courier New")
16191117
AK
282 (description
283 "The Liberation font family aims at metric compatibility with
284Arial, Times New Roman, and Courier New.
16191117
AK
285There are three sets:
286
0102fba2 287@enumerate
ec460a2a 288@item Sans (a substitute for Arial, Albany, Helvetica, Nimbus Sans L, and
16191117 289Bitstream Vera Sans);
ec460a2a 290@item Serif (a substitute for Times New Roman, Thorndale, Nimbus Roman, and
16191117 291Bitstream Vera Serif);
ec460a2a 292@item Mono (a substitute for Courier New, Cumberland, Courier, Nimbus Mono L,
16191117 293and Bitstream Vera Sans Mono).
0102fba2 294@end enumerate
16191117
AK
295
296The Liberation Fonts are sponsored by Red Hat.")
297 (license license:silofl1.1)))
298
d28fa5cc
RW
299(define-public font-linuxlibertine
300 (package
301 (name "font-linuxlibertine")
302 (version "5.3.0")
303 (source (origin
304 (method url-fetch/tarbomb)
305 (uri (string-append "mirror://sourceforge/linuxlibertine/"
306 "linuxlibertine/" version
307 "/LinLibertineSRC_" version "_2012_07_02.tgz"))
308 (sha256
309 (base32
310 "0x7cz6hvhpil1rh03rax9zsfzm54bh7r4bbrq8rz673gl9h47v0v"))))
15795e07 311 (build-system font-build-system)
d28fa5cc 312 (arguments
15795e07 313 `(#:phases
d28fa5cc 314 (modify-phases %standard-phases
15795e07 315 (add-before 'install 'build
d28fa5cc
RW
316 (lambda _
317 (let ((compile
318 (lambda (name ext)
15795e07
AI
319 (invoke
320 "fontforge" "-lang=ff"
321 "-c" (string-append "Open('" name "');"
322 "Generate('"
323 (basename name "sfd") ext
324 "')")))))
325 (for-each (lambda (name)
326 (and (compile name "ttf")
327 (compile name "otf")))
328 (find-files "." "\\.sfd$"))
d28fa5cc
RW
329 #t))))))
330 (native-inputs
331 `(("fontforge" ,fontforge)))
332 (home-page "http://www.linuxlibertine.org/")
333 (synopsis "Serif and sans serif typefaces")
334 (description "The Linux Libertine fonts is a set of typefaces containing
335both a Serif version (\"Linux Libertine\") and a Sans Serif (\"Linux
336Biolinum\") designed to be used together as an alternative for Times/Times New
337Roman and Helvetica/Arial. The Serif typeface comes in two shapes and two
338weights, and with a Small Capitals version of the regular typeface. Linux
339Biolinum is available in both Regular and Bold weights.")
340 ;; The fonts are released under either of these licenses.
341 (license (list license:gpl2+ license:silofl1.1))))
342
5e6bdf06 343(define-public font-terminus
d41bb065 344 (package
5e6bdf06 345 (name "font-terminus")
73c5c482 346 (version "4.47")
d41bb065 347 (source
73c5c482
TGR
348 (origin
349 (method url-fetch)
350 (uri (string-append "mirror://sourceforge/terminus-font/terminus-font-"
351 version "/terminus-font-" version ".tar.gz"))
352 (sha256
353 (base32 "15qjcpalcxjiwsjgjg5k88vkwp56cs2nnx4ghya6mqp4i1c206qg"))))
d41bb065 354 (build-system gnu-build-system)
a431e213
TGR
355 (outputs (list "out" "pcf-8bit"))
356 (arguments
357 `(#:tests? #f ; no test target in tarball
358 #:phases
359 (modify-phases %standard-phases
360 (add-after 'build 'build-more-bits
361 ;; X11 8-bit code pages aren't installed by default (they were
362 ;; until version 4.46). Build and install them separately.
363 (lambda* (#:key make-flags #:allow-other-keys)
364 (apply invoke "make" "pcf-8bit" make-flags)))
365 (add-after 'install 'install-more-bits
366 (lambda* (#:key make-flags outputs #:allow-other-keys)
367 (let ((pcf-8bit (assoc-ref outputs "pcf-8bit")))
368 (apply invoke "make" "install-pcf-8bit" (string-append "prefix="
369 pcf-8bit)
370 make-flags)))))))
d41bb065 371 (native-inputs
73c5c482 372 `(("bdftopcf" ,bdftopcf)
b3546174 373 ("font-util" ,font-util)
73c5c482
TGR
374 ("mkfontdir" ,mkfontdir)
375 ("pkg-config" ,pkg-config)
376 ("python" ,python)))
d41bb065
JG
377 (home-page "http://terminus-font.sourceforge.net/")
378 (synopsis "Simple bitmap programming font")
b4774d87
TGR
379 (description "Terminus Font is a clean, fixed-width bitmap font, designed
380for long periods of working with computers (8 or more hours per day).")
380f2ab6 381 (license license:silofl1.1)))
692784dd
SB
382
383(define-public font-adobe-source-han-sans
384 (package
385 (name "font-adobe-source-han-sans")
2666a126 386 (version "1.004")
692784dd 387 (source (origin
8f4dccf7
EF
388 (method git-fetch)
389 (uri (git-reference
390 (url "https://github.com/adobe-fonts/source-han-sans.git")
391 (commit (string-append version "R"))))
392 (file-name (git-file-name name version))
692784dd
SB
393 (sha256
394 (base32
8f4dccf7 395 "0zm884d8fp5gvirq324050kqv7am9khyqhs9kk4r4rr3jzn61jpk"))))
2666a126 396 (outputs '("out" ; OpenType/CFF Collection (OTC), 121 MiB.
692784dd
SB
397 "cn" "jp" "kr" "tw")) ; Region-specific Subset OpenType/CFF.
398 (build-system trivial-build-system)
399 (arguments
400 `(#:modules ((guix build utils))
401 #:builder
402 (begin
403 (use-modules (guix build utils))
8f4dccf7 404 (let ((install-opentype-fonts
692784dd
SB
405 (lambda (fonts-dir out)
406 (copy-recursively fonts-dir
407 (string-append (assoc-ref %outputs out)
408 "/share/fonts/opentype")))))
8f4dccf7 409 (chdir (assoc-ref %build-inputs "source"))
692784dd
SB
410 (install-opentype-fonts "OTC" "out")
411 (install-opentype-fonts "SubsetOTF/CN" "cn")
412 (install-opentype-fonts "SubsetOTF/JP" "jp")
413 (install-opentype-fonts "SubsetOTF/KR" "kr")
2666a126 414 (install-opentype-fonts "SubsetOTF/TW" "tw")
e3cfef22
MW
415 (for-each delete-file (find-files %output "\\.zip$"))
416 #t))))
692784dd
SB
417 (home-page "https://github.com/adobe-fonts/source-han-sans")
418 (synopsis "Pan-CJK fonts")
419 (description
420 "Source Han Sans is a sans serif Pan-CJK font family that is offered in
421seven weights: ExtraLight, Light, Normal, Regular, Medium, Bold, and Heavy.
422And in several OpenType/CFF-based deployment configurations to accommodate
423various system requirements or limitations. As the name suggests, Pan-CJK
424fonts are intended to support the characters necessary to render or display
e881752c 425text in Simplified Chinese, Traditional Chinese, Japanese, and Korean.")
2666a126 426 (license license:silofl1.1)))
192b4802 427
840b7136 428(define-public font-cns11643
377fad00
BT
429 ;; Since upstream doesn't provide any version numbers, the date of the last
430 ;; edit is used, taken from https://data.gov.tw/dataset/5961
431 ;; XXX: The source is also updated in-place, so it may be desirable to mirror
432 ;; it elsewhere to avoid suddenly losing the current source file.
840b7136
BT
433 (package
434 (name "font-cns11643")
377fad00 435 (version "98.1.20180605")
840b7136
BT
436 (source (origin
437 (method url-fetch)
438 (uri "http://www.cns11643.gov.tw/AIDB/Open_Data.zip")
439 (sha256
440 (base32
377fad00 441 "000a9whrjr1cd4pjc23pbl60zwkq3wcb5g61p9qi7fn3hwkp0kyw"))))
8c5ad448 442 (build-system font-build-system)
840b7136
BT
443 (home-page "http://www.cns11643.gov.tw/AIDB/welcome.do")
444 (synopsis "CJK TrueType fonts, TW-Kai and TW-Sung")
445 (description
446 "@code{CNS 11643} character set (Chinese National Standard, or Chinese
447Standard Interchange Code) is the standard character set of the Republic of
448China (Taiwan) for Chinese Characters and other Unicode symbols. Contained
449are six TrueType fonts based on two script styles, Regular script (Kai), and
450Sung/Ming script, each with three variants:
451
452@itemize
453@item @code{CNS 11643} (@code{TW-Kai} and @code{TW-Sung}): Tens of thousands
454of CJK characters from frequency tables published by the Taiwanese
455Ministry of Education. ISO 10646 and Unicode compatible encoding.
456@item @code{Big-5 Plus}: Several thousand frequently used CJK characters
457encoded in the user defined area of the Big-5 code.
458@item @code{Big-5 Extended}: A Big-5 character set based on the
459@code{Big-5 Plus} and @code{CNS 11643} character sets.
460@end itemize\n")
461 (license (license:non-copyleft
462 "http://data.gov.tw/license")))) ; CC-BY 4.0 compatible
463
f3744a01
BT
464(define-public font-cns11643-swjz
465 (package
466 (name "font-cns11643-swjz")
467 (version "1")
468 (source
469 (origin
470 (method url-fetch)
471 (uri "https://www.moedict.tw/fonts/truetype/cns11643/ebas927.ttf")
472 (sha256
473 (base32
474 "1qkljldbmb53zp1rcmpsb8rzy67rnsqcjxi549m9743ifk4isl78"))))
a5ce48c8 475 (build-system font-build-system)
f3744a01
BT
476 (home-page
477 (string-append "http://www.cns11643.gov.tw/AIDB/download.do"
478 "?name=%E5%AD%97%E5%9E%8B%E4%B8%8B%E8%BC%89"))
479 (synopsis "TrueType seal script font")
480 (description
481 "@code{Shuowen Jiezi} is a TrueType seal script font based on the ancient
482text of the same name published by the Executive Yuan of Taiwan. 6721 glyphs
483are included, at Unicode compatible code points corresponding to their modern
484variants.")
485 ;; Original text only available in Chinese. More info at
486 ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=26703#11
487 (license (license:non-copyleft
488 "http://www.cns11643.gov.tw/AIDB/copyright.do"))))
489
192b4802
RW
490(define-public font-wqy-zenhei
491 (package
492 (name "font-wqy-zenhei")
493 (version "0.9.45")
494 (source (origin
495 (method url-fetch)
496 (uri (string-append
de67e922
LF
497 "mirror://sourceforge/wqy/wqy-zenhei/" version
498 "%20%28Fighting-state%20RC1%29/wqy-zenhei-"
192b4802 499 version ".tar.gz"))
192b4802
RW
500 (sha256
501 (base32
502 "1mkmxq8g2hjcglb3zajfqj20r4r88l78ymsp2xyl5yav8w3f7dz4"))))
371ca85f 503 (build-system font-build-system)
78cda0bc 504 (home-page "https://wenq.org/wqy2/")
192b4802
RW
505 (synopsis "CJK font")
506 (description
507 "WenQuanYi Zen Hei is a Hei-Ti style (sans-serif type) Chinese outline
508font. It is designed for general purpose text formatting and on-screen
509display of Chinese characters and symbols from many other languages.
b4774d87 510WenQuanYi Zen Hei provides a rather complete coverage of Chinese Hanzi glyphs,
192b4802
RW
511including both simplified and traditional forms. The total glyph number in
512this font is over 35,000, including over 21,000 Chinese Hanzi. This font has
b4774d87
TGR
513full coverage of the GBK (CP936) charset, CJK Unified Ideographs, as well as
514the code-points needed for zh_cn, zh_sg, zh_tw, zh_hk, zh_mo, ja (Japanese) and
515ko (Korean) locales for @code{fontconfig}.")
78cda0bc 516 ;; GPLv2 with font embedding exception.
192b4802 517 (license license:gpl2)))
3f88152d 518
12b8f6b4
FS
519(define-public font-wqy-microhei
520 (package
521 (name "font-wqy-microhei")
522 (version "0.2.0-beta")
523 (source (origin
524 (method url-fetch)
525 (uri (string-append "mirror://sourceforge/wqy/wqy-microhei/"
526 version "/wqy-microhei-" version ".tar.gz"))
527 (sha256
528 (base32
529 "0gi1yxqph8xx869ichpzzxvx6y50wda5hi77lrpacdma4f0aq0i8"))))
7fc6ce46 530 (build-system font-build-system)
12b8f6b4
FS
531 (home-page "http://wenq.org/wqy2/")
532 (synopsis "CJK font")
533 (description
534 "WenQuanYi Micro Hei is a Sans-Serif style (also known as Hei, Gothic or
535Dotum among the Chinese/Japanese/Korean users) high quality CJK outline font.
536It was derived from \"Droid Sans Fallback\" and \"Droid Sans\" released by
537Google Inc. This font contains all the unified CJK Han glyphs in the range of
538U+4E00-U+9FC3 defined in Unicode Standard 5.1, together with many other
539languages unicode blocks, including Latins, Extended Latins, Hanguls and
540Kanas. The font file is extremely compact (~4M) compared with most known CJK
541fonts.")
542 ;; This font is licensed under Apache2.0 or GPLv3 with font embedding
543 ;; exceptions.
544 (license license:gpl3)))
545
42ecb96e
MS
546(define-public font-rachana
547 (package
548 (name "font-rachana")
549 (version "7.0")
550 (source
551 (origin
552 (method url-fetch)
553 (uri (string-append
554 "https://gitlab.com/smc/rachana/repository/archive.tar.gz?ref=Version"
555 version))
556 (file-name (string-append name "-" version ".tar.gz"))
557 (sha256
558 (base32
559 "0jc091gshna6p1dd6lf507jxkgk6rsja835fc9dm71mcplq53bm1"))))
560 (build-system font-build-system)
561 (home-page "https://smc.org.in")
562 (synopsis "Malayalam font")
563 (description
564 "Rachana is a Malayalam font designed by Hussain K H. The project was
565part of Rachana Aksharavedi for the original script of Malayalam in computing.
566Rachana has about 1,200+ glyphs for Malayalam and contains glyphs required for
567printing old Malayalam books without compromising the writing style.")
568 ;; This font is licensed under SIL 1.1 or GPLv3+ with font embedding
569 ;; exceptions.
570 (license (list license:silofl1.1 license:gpl3+))))
571
3f88152d
RW
572(define-public font-tex-gyre
573 (package
574 (name "font-tex-gyre")
575 (version "2.005")
576 (source
577 (origin
c226f06c 578 (method url-fetch/zipbomb)
3f88152d
RW
579 (uri (string-append "http://www.gust.org.pl/projects/e-foundry/"
580 "tex-gyre/whole/tg-" version "otf.zip"))
581 (sha256
582 (base32
583 "0kph9l3g7jb2bpmxdbdg5zl56wacmnvdvsdn7is1gc750sqvsn31"))))
c226f06c 584 (build-system font-build-system)
3f88152d
RW
585 (home-page "http://www.gust.org.pl/projects/e-foundry/tex-gyre/")
586 (synopsis "Remake of Ghostscript fonts")
587 (description "The TeX Gyre collection of fonts is the result of an
588extensive remake and extension of the freely available base PostScript fonts
589distributed with Ghostscript version 4.00. The collection contains the
590following fonts in the OpenType format: Adventor, Bonum, Chorus, Cursor,
591Heros, Pagella, Schola, Termes.")
592 (license license:gfl1.0)))
761b3d44
LF
593
594(define-public font-anonymous-pro
595 (package
596 (name "font-anonymous-pro")
597 (version "1.002")
598 (source (origin
599 (method url-fetch)
600 (uri (string-append
bba5bb30 601 "https://www.marksimonson.com/assets/content/fonts/"
761b3d44
LF
602 "AnonymousPro-" version ".zip"))
603 (sha256
604 (base32
605 "1asj6lykvxh46czbal7ymy2k861zlcdqpz8x3s5bbpqwlm3mhrl6"))))
bbb1a1d2 606 (build-system font-build-system)
bba5bb30 607 (home-page "https://www.marksimonson.com/fonts/view/anonymous-pro")
761b3d44
LF
608 (synopsis "Fixed-width fonts designed with coding in mind")
609 (description "Anonymous Pro is a family of four fixed-width fonts designed
610with coding in mind. Anonymous Pro features an international, Unicode-based
611character set, with support for most Western and Central European Latin-based
612languages, plus Greek and Cyrillic.")
613 (license license:silofl1.1)))
d032d965
SB
614
615(define-public font-gnu-unifont
616 (package
617 (name "font-gnu-unifont")
d2b38df6 618 (version "12.0.01")
d032d965
SB
619 (source (origin
620 (method url-fetch)
621 (uri (string-append
df320991 622 "mirror://gnu/unifont/unifont-" version "/unifont-"
d032d965
SB
623 version ".tar.gz"))
624 (sha256
625 (base32
d2b38df6 626 "059j82z6z4wqyy3261ns0zg2b2vh2wvxxfbsa9hra9xasism49vb"))))
d032d965 627 (build-system gnu-build-system)
f21058dc
EF
628 (outputs '("out" ; TrueType version
629 "pcf" ; PCF (bitmap) version
630 "psf" ; PSF (console) version
631 "bin")) ; Utilities to manipulate '.hex' format
d032d965 632 (arguments
f21058dc 633 '(#:tests? #f ; no check target
d032d965
SB
634 #:phases
635 (modify-phases %standard-phases
c88bee0a
EF
636 (replace
637 'configure
638 (lambda _ (setenv "CC" "gcc") #t))
d032d965
SB
639 (replace
640 'install
641 (lambda* (#:key outputs #:allow-other-keys)
642 (let* ((ttf (string-append (assoc-ref outputs "out")
643 "/share/fonts/truetype"))
644 (pcf (string-append (assoc-ref outputs "pcf")
645 "/share/fonts/misc"))
646 (psf (string-append (assoc-ref outputs "psf")
647 "/share/consolefonts"))
648 (bin (assoc-ref outputs "bin")))
5b47ea94
EF
649 (invoke "make"
650 (string-append "PREFIX=" bin)
651 (string-append "TTFDEST=" ttf)
652 (string-append "PCFDEST=" pcf)
653 (string-append "CONSOLEDEST=" psf)
654 "install")
d032d965
SB
655 ;; Move Texinfo file to the right place.
656 (mkdir (string-append bin "/share/info"))
c1352b4b
LC
657 (invoke "gzip" "-9n" "doc/unifont.info")
658 (install-file "doc/unifont.info.gz"
659 (string-append bin "/share/info"))
d032d965
SB
660 #t))))))
661 (inputs
662 `(("perl" ,perl))) ; for utilities
663 (synopsis
664 "Large bitmap font covering Unicode's Basic Multilingual Plane")
665 (description
666 "GNU Unifont is a bitmap font covering essentially all of
667Unicode's Basic Multilingual Plane. The package also includes
668utilities to ease adding new glyphs to the font.")
669 (home-page "http://unifoundry.com/unifont.html")
fc19cee1 670 (properties '((upstream-name . "unifont")))
d032d965 671 (license license:gpl2+)))
b6ecac93
J
672
673(define-public font-google-noto
674 (package
675 (name "font-google-noto")
dd78efe3 676 (version "20170403")
b6ecac93 677 (source (origin
2f7966c8 678 (method url-fetch/zipbomb)
dd78efe3 679 (uri (string-append "https://noto-website.storage.googleapis.com/"
b6ecac93 680 "pkgs/Noto-hinted.zip"))
2f7966c8 681 (file-name (string-append name "-" version ".zip"))
b6ecac93
J
682 (sha256
683 (base32
dd78efe3 684 "1p92a6dvs7wqwjfpp1ahr9z1wz35am0l8r78521383spd77bmrfm"))))
2f7966c8 685 (build-system font-build-system)
b6ecac93 686 (home-page "https://www.google.com/get/noto/")
b4774d87
TGR
687 (synopsis "Fonts to cover all languages")
688 (description "Google Noto Fonts is a family of fonts designed to support
689all languages with a consistent look and aesthetic. Its goal is to properly
690display all Unicode symbols.")
b6ecac93 691 (license license:silofl1.1)))
aae6b4b9 692
bb0756c7 693(define-public font-google-roboto
694 (package
695 (name "font-google-roboto")
696 (version "2.136")
697 (source
698 (origin
699 (method url-fetch)
700 (uri (string-append "https://github.com/google/roboto/releases/download/"
701 "v" version "/roboto-hinted.zip"))
702 (file-name (string-append name "-" version ".zip"))
703 (sha256
704 (base32
705 "0spscx08fad7i8qs7icns96iwcapniq8lwwqqvbf7bamvs8qfln4"))))
9713b31e 706 (build-system font-build-system)
bb0756c7 707 (home-page "https://github.com/google/roboto")
708 (synopsis "The Roboto family of fonts")
709 (description
710 "Roboto is Google’s signature family of fonts, the default font on Android
711and Chrome OS, and the recommended font for the
712visual language \"Material Design\".")
713 (license license:asl2.0)))
714
aae6b4b9 715(define-public font-un
716 (package
717 (name "font-un")
718 (version "1.0.2-080608")
aae6b4b9 719 (source (origin
720 (method url-fetch)
99a61dad 721 (uri (string-append
722 "https://kldp.net/unfonts/release/2607-"
723 "un-fonts-core-" version ".tar.gz"))
aae6b4b9 724 (file-name (string-append name "-" version ".tar.gz"))
725 (sha256
726 (base32
727 "13liaz2pmww3aqabm55la5npd08m1skh334ky7qfidxaz5s742iv"))))
6084d9b4 728 (build-system font-build-system)
aae6b4b9 729 (home-page "https://kldp.net/projects/unfonts/")
730 (synopsis "Collection of Korean fonts")
731 (description
732 "Un-fonts is a family of mainly Korean fonts.
733It contains the following fonts and styles:
734
735@enumerate
736@item UnBatang, UnBatangBold: serif;
737@item UnDotum, UnDotumBold: sans-serif;
738@item UnGraphic, UnGraphicBold: sans-serif style;
739@item UnDinaru, UnDinaruBold, UnDinaruLight;
740@item UnPilgi, UnPilgiBold: script;
741@item UnGungseo: cursive, brush-stroke.
742@end enumerate\n")
743 (license license:gpl2+)))
f85cafde
EB
744
745(define-public font-fantasque-sans
746 (package
747 (name "font-fantasque-sans")
5882078e 748 (version "1.7.2")
f85cafde
EB
749 (source
750 (origin
5882078e
EB
751 (method git-fetch)
752 (uri (git-reference
753 (url "https://github.com/belluzj/fantasque-sans.git")
754 (commit (string-append "v" version))))
755 (file-name (git-file-name name version))
f85cafde
EB
756 (sha256
757 (base32
5882078e 758 "1gjranq7qf20rfxnpxsckv1hl35nzsal0rjs475nhfbpqy5wmly6"))))
f85cafde
EB
759 (build-system gnu-build-system)
760 (native-inputs
761 `(("ttfautohint" ,ttfautohint)
762 ("woff-tools" ,woff-tools)
763 ("fontforge" ,fontforge)
764 ("woff2" ,woff2)
5882078e
EB
765 ("ttf2eot" ,ttf2eot)
766 ("zip" ,zip)))
f85cafde
EB
767 (arguments
768 `(#:tests? #f ;test target intended for visual inspection
769 #:phases (modify-phases %standard-phases
770 (delete 'configure) ;no configuration
5882078e
EB
771 (add-before 'build 'xrange->range
772 ;; Rather than use a python2 fontforge, just replace the
773 ;; offending function.
774 (lambda _
775 (substitute* "Scripts/fontbuilder.py"
776 (("xrange") "range"))
777 #t))
f85cafde
EB
778 (replace 'install
779 ;; 'make install' wants to install to ~/.fonts, install to
5882078e 780 ;; output instead. Install only the "Normal" variant.
f85cafde
EB
781 (lambda* (#:key outputs #:allow-other-keys)
782 (let* ((out (assoc-ref outputs "out"))
783 (font-dir (string-append out "/share/fonts"))
784 (truetype-dir (string-append font-dir "/truetype"))
785 (opentype-dir (string-append font-dir "/opentype"))
786 (webfonts-dir (string-append font-dir "/webfonts")))
5882078e
EB
787 (with-directory-excursion "Variants/Normal"
788 (copy-recursively "OTF" opentype-dir)
789 (for-each (lambda (f) (install-file f truetype-dir))
790 (find-files "." "\\.ttf$"))
791 (copy-recursively "Webfonts" webfonts-dir)
792 #t)))))))
f85cafde
EB
793 (synopsis "Font family with a monospaced variant for programmers")
794 (description
795 "Fantasque Sans Mono is a programming font designed with functionality in
796mind. The font includes a bold version and a good italic version with new
797glyph designs, not just an added slant.")
798 (home-page "https://fontlibrary.org/en/font/fantasque-sans-mono")
799 (license license:silofl1.1)))
73c8d39c 800
801(define-public font-hack
802 (package
803 (name "font-hack")
9296d4b6 804 (version "3.003")
73c8d39c 805 (source (origin
8069f889 806 (method url-fetch/zipbomb)
73c8d39c 807 (uri (string-append
77aa706a
TGR
808 "https://github.com/source-foundry/Hack/releases/download/v"
809 version "/Hack-v" version "-ttf.zip"))
73c8d39c 810 (sha256
811 (base32
9296d4b6 812 "1b4hh8zkrx92m2v2vfkja1napb0192p0j3laqr0m018z3dih89hc"))))
8069f889 813 (build-system font-build-system)
73c8d39c 814 (home-page "https://sourcefoundry.org/hack/")
b4774d87 815 (synopsis "Typeface designed for source code")
73c8d39c 816 (description
b4774d87 817 "Hack is designed to be a workhorse typeface for code. It expands upon
d083a823 818the Bitstream Vera & DejaVu projects, provides over 1,500 glyphs, and includes
b4774d87 819Powerline support.")
77aa706a
TGR
820 (license
821 ;; See https://github.com/source-foundry/Hack/issues/271 for details.
822 (list license:expat ; the Hack modifications to...
823 license:public-domain ; ...the DejaVu modifications to...
824 (license:x11-style ; ...the Bitstream Vera typeface
825 "file://LICENSE.md" "Bitstream Vera License")))))
6e1d7aa9
MB
826
827(define-public font-adobe-source-code-pro
828 (package
829 (name "font-adobe-source-code-pro")
830 (version "2.030R-ro-1.050R-it")
831 (source (origin
832 (method url-fetch)
833 (uri (string-append
834 "https://github.com/adobe-fonts/source-code-pro/archive/"
835 (regexp-substitute/global
836 ;; The upstream tag uses "/" between the roman and italic
837 ;; versions, so substitute our "-" separator here.
838 #f "R-ro-" version 'pre "R-ro/" 'post) ".tar.gz"))
839 (file-name (string-append name "-" version ".tar.gz"))
840 (sha256
841 (base32
842 "0arhhsf3i7ss39ykn73d1j8k4n8vx7115xph6jwkd970p1cxvr54"))))
b41704cd 843 (build-system font-build-system)
6e1d7aa9
MB
844 (home-page "https://github.com/adobe-fonts/source-code-pro")
845 (synopsis
846 "Monospaced font family for user interface and coding environments")
847 (description
848 "Source Code Pro is a set of monospaced OpenType fonts that have been
849designed to work well in user interface environments.")
850 (license license:silofl1.1)))
c3e2a247 851
27e65afc
J
852(define-public font-adobe-source-sans-pro
853 (package
854 (name "font-adobe-source-sans-pro")
855 (version "2.040R-ro-1.090R-it")
856 (source (origin
857 (method url-fetch)
858 (uri (string-append
859 "https://github.com/adobe-fonts/source-sans-pro/archive/"
860 (regexp-substitute/global
861 ;; The upstream tag uses "/" between the roman and italic
862 ;; versions, so substitute our "-" separator here.
863 #f "R-ro-" version 'pre "R-ro/" 'post) ".tar.gz"))
864 (file-name (string-append name "-" version ".tar.gz"))
865 (sha256
866 (base32
867 "1wpbhd2idps53ph8rg1mhr3vz4lsgbpjprcq10nliwcxdz9d8lv0"))))
868 (build-system font-build-system)
869 (home-page "https://github.com/adobe-fonts/source-sans-pro")
870 (synopsis
871 "Sans serif font family for user interface environments")
872 (description
873 "Source Sans Pro is a set of OpenType fonts that have been designed to
874work well in user interface (UI) environments.")
875 (license license:silofl1.1)))
876
3cdd2e95
J
877(define-public font-adobe-source-serif-pro
878 (package
879 (name "font-adobe-source-serif-pro")
880 (version "2.007R-ro-1.007R-it")
881 (source (origin
882 (method url-fetch)
883 (uri (string-append
884 "https://github.com/adobe-fonts/source-serif-pro/archive/"
885 (regexp-substitute/global
886 ;; The upstream tag uses "/" between the roman and italic
887 ;; versions, so substitute our "-" separator here.
888 #f "R-ro-" version 'pre "R-ro/" 'post) ".tar.gz"))
889 (file-name (string-append name "-" version ".tar.gz"))
890 (sha256
891 (base32
892 "1sws9k26ldqk375qsigk1zv8cq1xlvadjwvv3dqrcc3qzm1c7hwc"))))
893 (build-system font-build-system)
894 (home-page "https://github.com/adobe-fonts/source-serif-pro")
895 (synopsis
896 "Serif typeface to complement Source Sans Pro for setting text")
897 (description
898 "Source Serif Pro is a set of OpenType fonts to complement the Source
899Sans Pro family.")
900 (license license:silofl1.1)))
901
c3e2a247
TR
902(define-public font-fira-mono
903 (package
904 (name "font-fira-mono")
905 (version "3.206")
906 (source (origin
907 (method url-fetch)
908 (uri (string-append "https://carrois.com/downloads/fira_mono_3_2/"
909 "FiraMonoFonts"
910 (string-replace-substring version "." "")
911 ".zip"))
912 (sha256
913 (base32
914 "1z65x0dw5dq6rs6p9wyfrir50rlh95vgzsxr8jcd40nqazw4jhpi"))))
3a722dde 915 (build-system font-build-system)
b253e7b9 916 (home-page "https://mozilla.github.io/Fira/")
c3e2a247
TR
917 (synopsis "Mozilla's monospace font")
918 (description "This is the typeface used by Mozilla in Firefox OS.")
919 (license license:silofl1.1)))
83421fc7 920
0ee27df0 921(define-public font-fira-sans
922 (package
923 (name "font-fira-sans")
924 (version "4.202")
925 (source (origin
c2426dbd
EF
926 (method git-fetch)
927 (uri (git-reference
928 (url "https://github.com/mozilla/Fira.git")
929 (commit version)))
930 (file-name (git-file-name name version))
0ee27df0 931 (sha256
932 (base32
c2426dbd 933 "116j26gdj5g1r124b4669372f7490vfjqw7apiwp2ggl0am5xd0w"))))
0ee27df0 934 (build-system font-build-system)
b253e7b9 935 (home-page "https://mozilla.github.io/Fira/")
0ee27df0 936 (synopsis "Mozilla's Fira Sans Font")
937 (description "This is the typeface used by Mozilla in Firefox OS.")
938 (license license:silofl1.1)))
939
760e34b2 940(define-public font-fira-code
941 (package
942 (name "font-fira-code")
76498783 943 (version "1.206")
760e34b2 944 (source (origin
945 (method url-fetch/zipbomb)
946 (uri (string-append "https://github.com/tonsky/FiraCode/releases/"
947 "download/" version
948 "/FiraCode_" version ".zip"))
949 (sha256
950 (base32
76498783 951 "02r1lcp0c9135ps71v66wdvbsrcxwirrp0blqsa1xbjkkq2rwgj3"))))
760e34b2 952 (build-system font-build-system)
953 (home-page "https://mozilla.github.io/Fira/")
954 (synopsis "Monospaced font with programming ligatures")
955 (description
956 "Fira Code is an extension of the Fira Mono font containing a set of ligatures
957for common programming multi-character combinations. This is just a font rendering
958feature: underlying code remains ASCII-compatible. This helps to read and understand
959code faster. For some frequent sequences like .. or //, ligatures allow us to
960correct spacing.")
961 (license license:silofl1.1)))
962
83421fc7
JMSG
963(define-public font-awesome
964 (package
965 (name "font-awesome")
848b3749
LF
966 ;; XXX The build scripts of version 5 are not freely licensed and
967 ;; so we have to stick with version 4 for now:
968 ;; <https://bugs.gnu.org/32916>
969 (version "4.7.0")
83421fc7
JMSG
970 (source (origin
971 (method url-fetch)
848b3749
LF
972 (uri (string-append "http://fontawesome.io/assets/"
973 name "-" version ".zip"))
83421fc7
JMSG
974 (sha256
975 (base32
848b3749 976 "1m1rfwm4sjkv10j3xd2dhwk286a5912b2zgvc692cmxi5gxs68jf"))))
278c608a 977 (build-system font-build-system)
848b3749 978 (home-page "http://fontawesome.io")
83421fc7
JMSG
979 (synopsis "Font that contains a rich iconset")
980 (description
981 "Font Awesome is a full suite of pictographic icons for easy scalable
982vector graphics.")
983 (license license:silofl1.1)))
446e1d51 984
f2a7ce50 985(define-public font-tamzen
986 (package
987 (name "font-tamzen")
988 (version "1.11.4")
989 (source
990 (origin
1f07550c
EF
991 (method git-fetch)
992 (uri (git-reference
993 (url "https://github.com/sunaku/tamzen-font.git")
994 (commit (string-append "Tamzen-" version))))
995 (file-name (git-file-name name version))
f2a7ce50 996 (sha256
997 (base32
1f07550c 998 "17kgmvg6q32mqhx9g44hjvzv0si0mnpprga4z7na930g2zdd8846"))))
f2a7ce50 999 (build-system trivial-build-system)
1000 (arguments
1001 `(#:modules ((guix build utils))
1002 #:builder
1003 (begin
1004 (use-modules (guix build utils))
1005
1f07550c
EF
1006 (let* ((out (assoc-ref %outputs "out"))
1007 (font-dir (string-append out "/share/fonts/misc"))
1008 (psf-dir (string-append out "/share/kbd/consolefonts")))
1009 (chdir (assoc-ref %build-inputs "source"))
f2a7ce50 1010 (mkdir-p font-dir)
1011 (mkdir-p psf-dir)
f2a7ce50 1012 (for-each (lambda (pcf)
1013 (install-file pcf font-dir))
1f07550c 1014 (find-files "pcf" "\\.pcf$"))
f2a7ce50 1015 (for-each (lambda (psf)
1016 (install-file psf psf-dir))
1f07550c 1017 (find-files "psf" "\\.psf$"))
f2a7ce50 1018 #t))))
f2a7ce50 1019 (home-page "https://github.com/sunaku/tamzen-font")
1020 (synopsis "Monospaced bitmap font for console and X11")
1021 (description
1022 "Tamzen is a fork of the @code{Tamsyn} font. It is programatically forked
1023from @code{Tamsyn} version 1.11, backporting glyphs from older versions while
1024deleting deliberately empty glyphs (which are marked as unimplemented) to
1025allow secondary/fallback fonts to provide real glyphs at those codepoints.
1026
1027The @code{TamzenForPowerline} fonts provide additional @code{Powerline} symbols,
1028which are programatically injected with @code{bitmap-font-patcher} and
1029later hand-tweaked with the gbdfed(1) editor:
1030
1031@enumerate
1032@item all icons are expanded to occupy the maximum available space
1033@item the branch of the fork icon ( U+E0A0) was made larger than the trunk
1034@item for the newline icon ( U+E0A1), the @emph{N} was made larger at the bottom
1035@item the keyhole in the padlock icon ( U+E0A2) was replaced with @emph{//} lines.
1036@end enumerate\n")
1037 (license (license:non-copyleft "file://LICENSE"))))
1038
446e1d51
AG
1039(define-public font-comic-neue
1040 (package
b963d8c2
AG
1041 (name "font-comic-neue")
1042 (version "2.3")
1043 (source (origin
1044 (method url-fetch/zipbomb)
1045 (uri (string-append
1046 "http://www.comicneue.com/comic-neue-" version ".zip"))
1047 (sha256
1048 (base32
1049 "1695hkpd8kqnr2a88p8xs496slgzxjjkzpa9aa33ml3pnh7519zk"))))
1050 (build-system font-build-system)
1051 (arguments
1052 `(#:phases
1053 (modify-phases %standard-phases
44636f57
AI
1054 ;; Delete Mac OS X specific files. If not deleted, these cause
1055 ;; several hidden files to be installed.
1056 (add-before 'install 'delete-macosx-files
1057 (lambda _
1058 (delete-file-recursively "__MACOSX")
1059 #t))
532f09df
AG
1060 (add-after 'install 'install-conf
1061 (lambda* (#:key outputs #:allow-other-keys)
1062 (let ((conf-dir (string-append (assoc-ref outputs "out")
1063 "/share/fontconfig/conf.avail")))
1064 (mkdir-p conf-dir)
1065 (call-with-output-file
1066 (string-append conf-dir "/30-comic-neue.conf")
1067 (lambda (port)
1068 (format port "<?xml version=\"1.0\"?>
1069<!DOCTYPE fontconfig SYSTEM \"fonts.dtd\">
1070<fontconfig>
1071 <!-- If Comic Sans is missing, use Comic Neue instead. -->
1072 <alias>
1073 <family>Comic Sans MS</family>
1074 <prefer>
1075 <family>Comic Neue</family>
1076 </prefer>
1077 </alias>
1078</fontconfig>\n"))))
b963d8c2
AG
1079 #t)))))
1080 (home-page "http://www.comicneue.com/")
1081 (synopsis "Font that fixes the shortcomings of Comic Sans")
1082 (description
1083 "Comic Neue is a font that attempts to create a respectable casual
446e1d51 1084typeface, by mimicking Comic Sans while fixing its most obvious shortcomings.")
b963d8c2 1085 (license license:silofl1.1)))
de191caf
AG
1086
1087(define-public font-iosevka
1088 (package
208abeca 1089 (name "font-iosevka")
785747a9
TGR
1090 (version "2.2.0")
1091 (source
1092 (origin
1093 (method url-fetch/zipbomb)
1094 (uri (string-append "https://github.com/be5invis/Iosevka"
1095 "/releases/download/v" version
1096 "/ttc-iosevka-" version ".zip"))
1097 (sha256
1098 (base32 "14jfv6pkh1w44m89z2fn44kgmmqaf0057lk71advwfbm3q313y0x"))))
4a9140b1 1099 (build-system font-build-system)
208abeca
AG
1100 (home-page "https://be5invis.github.io/Iosevka/")
1101 (synopsis "Coders' typeface, built from code")
1102 (description
1103 "Iosevka is a slender monospace sans-serif or slab-serif typeface inspired
de191caf
AG
1104by Pragmata Pro, M+, and PF DIN Mono, designed to be the ideal font for
1105programming. Iosevka is completely generated from its source code.")
208abeca
AG
1106 (license (list license:silofl1.1 ; build artifacts (i.e. the fonts)
1107 license:bsd-3)))) ; supporting code
49dbae54 1108
c948cf90
TGR
1109(define-public font-iosevka-slab
1110 (package
1111 (inherit font-iosevka)
1112 (name "font-iosevka-slab")
1113 (version (package-version font-iosevka))
1114 (source
1115 (origin
1116 (method url-fetch/zipbomb)
1117 (uri (string-append "https://github.com/be5invis/Iosevka"
1118 "/releases/download/v" version
1119 "/ttc-iosevka-slab-" version ".zip"))
1120 (sha256
1121 (base32 "186d0pl13znysll3hvzm1ixn7ad616g6dhla55sbh6ki2j04b8ml"))))))
1122
49dbae54 1123(define-public font-go
406c46e2 1124 (let ((commit "f03a046406d4d7fbfd4ed29f554da8f6114049fc")
49dbae54
AG
1125 (revision "1"))
1126 (package
b6726480
AG
1127 (name "font-go")
1128 (version (string-append "20170330-" revision "." (string-take commit 7)))
1129 (source (origin
1130 (file-name (string-append "go-image-" version "-checkout"))
1131 (method git-fetch)
1132 (uri (git-reference
1133 (url "https://go.googlesource.com/image")
1134 (commit commit)))
1135 (sha256
1136 (base32
1137 "1aq6mnjayks55gd9ahavk6jfydlq5lm4xm0xk4pd5sqa74p5p74d"))))
1138 (build-system font-build-system)
1139 (arguments
1140 `(#:phases
1141 (modify-phases %standard-phases
1142 (add-before 'install 'chdir
1143 (lambda _
1144 (chdir "font/gofont/ttfs")
1145 #t)))))
1146 (home-page "https://blog.golang.org/go-fonts")
1147 (synopsis "The Go font family")
1148 (description
1149 "The Go font family is a set of WGL4 TrueType fonts from the Bigelow &
49dbae54
AG
1150Holmes type foundry, released under the same license as the Go programming
1151language. It includes a set of proportional, sans-serif fonts, and a set of
1152monospace, slab-serif fonts.")
87f057c4 1153 (license license:bsd-3))))
824e5fe6
JMSG
1154
1155(define-public font-google-material-design-icons
1156 (package
99e9d598
AI
1157 (name "font-google-material-design-icons")
1158 (version "3.0.1")
1159 (source (origin
1e90e4b0
EF
1160 (method git-fetch)
1161 (uri (git-reference
1162 (url "https://github.com/google/material-design-icons.git")
1163 (commit version)))
1164 (file-name (git-file-name name version))
99e9d598
AI
1165 (sha256
1166 (base32
1e90e4b0 1167 "17q5brcqyyc8gbjdgpv38p89s60cwxjlwy2ljnrvas5cj0s62np0"))))
99e9d598
AI
1168 (build-system font-build-system)
1169 (home-page "http://google.github.io/material-design-icons")
1170 (synopsis "Icon font of Google Material Design icons")
1171 (description
1172 "Material design system icons are simple, modern, friendly, and sometimes
824e5fe6
JMSG
1173quirky. Each icon is created using our design guidelines to depict in simple
1174and minimal forms the universal concepts used commonly throughout a UI.
1175Ensuring readability and clarity at both large and small sizes, these icons
1176have been optimized for beautiful display on all common platforms and display
1177resolutions.")
99e9d598 1178 (license license:asl2.0)))
6bce5955 1179
abd8825f 1180(define-public font-open-dyslexic
1181 (package
1182 (name "font-open-dyslexic")
1183 (version "20160623")
1184 (source
1185 (origin
c6abe904
EF
1186 (method git-fetch)
1187 (uri (git-reference
1188 (url "https://github.com/antijingoist/open-dyslexic.git")
1189 (commit (string-append version "-Stable"))))
1190 (file-name (git-file-name name version))
abd8825f 1191 (sha256
1192 (base32
c6abe904 1193 "0nr7s92nk1kbr459154idnib977ixc70z6g9mbra3lp73nyrmyvz"))))
abd8825f 1194 (build-system font-build-system)
1195 (home-page "https://opendyslexic.org")
1196 (synopsis "Font for dyslexics and high readability")
1197 (description "OpenDyslexic is a font designed to help readability for some
1198of the symptoms of dyslexia. Letters have heavy weighted bottoms to provide
1199an indication of orientation to make it more difficult to confuse with other
1200similar letters. Consistently weighted bottoms can also help reinforce the
1201line of text. The unique shapes of each letter can help prevent flipping and
1202swapping. The italic style for OpenDyslexic has been crafted to be used for
1203emphasis while still being readable.")
1204 (license
1205 (license:fsdg-compatible
1206 "https://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts"
1207 "The Font Software may be sold as part of a larger software package but
1208no copy of one or more of the Font Software typefaces may be sold by
1209itself."))))
27a10775 1210
1211(define-public font-dosis
1212 (package
1213 (name "font-dosis")
1214 (version "1.7")
1215 (source
1216 (origin
6aa4f09e 1217 (method url-fetch/zipbomb)
27a10775 1218 (uri (string-append "http://www.impallari.com/media/releases/dosis-"
1219 "v" version ".zip"))
1220 (sha256
1221 (base32
1222 "1qhci68f68mf87jd69vjf9qjq3wydgw1q7ivn3amjb65ls1s0c4s"))))
6aa4f09e 1223 (build-system font-build-system)
27a10775 1224 (home-page "http://www.impallari.com/dosis")
1225 (synopsis "Very simple, rounded, sans serif family")
1226 (description
1227 "Dosis is a very simple, rounded, sans serif family.
1228The lighter weights are minimalist. The bolder weights have more personality.
1229The medium weight is nice and balanced. The overall result is a family
1230that's clean and modern, and can express a wide range of voices & feelings.
1231It comes in 7 incremental weights:
1232ExtraLight, Light, Book, Medium, Semibold, Bold & ExtraBold")
1233 (license license:silofl1.1)))
f8602046 1234
733d66a5 1235(define-public font-culmus
f8602046 1236 (package
733d66a5 1237 (name "font-culmus")
cebec8bd 1238 (version "0.133")
f8602046 1239 (source
733d66a5
AI
1240 (origin
1241 (method url-fetch)
1242 (uri (string-append "https://sourceforge.net/projects/"
1243 "culmus/files/culmus/" version "/culmus-src-"
1244 version ".tar.gz"))
1245 (sha256
1246 (base32
cebec8bd 1247 "02akysgsqhi15cck54xcacm16q5raf4l7shgb8fnj7xr3c1pbfyp"))))
0328c514 1248 (build-system font-build-system)
f8602046 1249 (arguments
0328c514 1250 `(#:phases
f8602046 1251 (modify-phases %standard-phases
0328c514 1252 (add-before 'install 'build
f8602046
EF
1253 (lambda _
1254 (let ((compile
1255 (lambda (name ext)
0328c514
AI
1256 (invoke
1257 "fontforge" "-lang=ff"
1258 "-c" (string-append "Open('" name "');"
1259 "Generate('"
1260 (basename name "sfd") ext
1261 "')")))))
f8602046 1262 ;; This part based on the fonts shipped in the non-source package.
0328c514
AI
1263 (for-each (lambda (name)
1264 (compile name "ttf"))
1265 (find-files "." "^[^Nachlieli].*\\.sfd$"))
1266 (for-each (lambda (name)
1267 (compile name "otf"))
1268 (find-files "." "^Nachlieli.*\\.sfd$"))
f8602046
EF
1269 #t))))))
1270 (native-inputs
1271 `(("fontforge" ,fontforge)))
1272 (home-page "http://culmus.sourceforge.net/")
1273 (synopsis "TrueType Hebrew Fonts for X11")
1274 (description "14 Hebrew trivial families. Contain ASCII glyphs from various
1275sources. Those families provide a basic set of a serif (Frank Ruehl), sans
1276serif (Nachlieli) and monospaced (Miriam Mono) trivials. Also included Miriam,
1277Drugulin, Aharoni, David, Hadasim etc. Cantillation marks support is
1278available in Keter YG.")
1279 (license license:gpl2))) ; consult the LICENSE file included
4769ef00
AI
1280
1281(define-public font-lohit
1282 (package
1283 (name "font-lohit")
1284 (version "20140220")
1285 (source
1286 (origin
1287 (method url-fetch)
1288 (uri (string-append "https://releases.pagure.org/lohit/lohit-ttf-"
1289 version ".tar.gz"))
1290 (sha256
1291 (base32
1292 "1rmgr445hw1n851ywy28csfvswz1i6hnc8mzp88qw2xk9j4dn32d"))))
1293 (build-system font-build-system)
1294 (home-page "https://pagure.io/lohit")
1295 (synopsis "Lohit TrueType Indic fonts")
1296 (description "Lohit is a font family designed to cover Indic scripts.
1297Lohit supports the Assamese, Bengali, Devanagari (Hindi, Kashmiri, Konkani,
1298Maithili, Marathi, Nepali, Sindhi, Santali, Bodo, Dogri languages), Gujarati,
1299Kannada, Malayalam, Manipuri, Oriya, Punjabi, Tamil and Telugu scripts.")
1300 (license license:silofl1.1)))
f00d66b1
LC
1301
1302(define-public font-blackfoundry-inria
1303 (package
1304 (name "font-blackfoundry-inria")
1305 (version "1.200")
1306 (home-page "https://github.com/BlackFoundry/InriaFonts")
1307 (source (origin
1308 (method git-fetch)
1309 (uri (git-reference
1310 (url home-page)
1311 (commit (string-append "v" version))))
1312 (sha256
1313 (base32
1314 "06775y99lyh6hj5hzvrx56iybdck8a8xfqkipqd5c4cldg0a9hh8"))
1315 (file-name (string-append name "-" version "-checkout"))))
1316 ;; XXX: There are .ufo directories (the "source") so in theory we should
1317 ;; be able to rebuild TTF and OTF files with FontForge. Unfortunately a
1318 ;; command like:
1319 ;;
1320 ;; fontforge -lang=ff -c "Open('InriaSans-Regular.ufo'); Generate('foo.ttf');"
1321 ;;
1322 ;; segfaults in '_UFOLoadGlyph', which calls out to libpython. :-/
1323 ;; In the meantime we ship the precompiled OTF and TTF files.
1324 (build-system font-build-system)
1325 (synopsis "Inria Sans and Inria Serif type family")
1326 (description
1327 "Inria Sans and Inria Serif are the two members of a type family designed
1328for Inria, a public research institute in computer science and mathematics.")
1329 (license license:silofl1.1)))
1d641734
LC
1330
1331(define-public font-sil-gentium
1332 (package
1333 (name "font-sil-gentium")
1334 (version "5.000")
1335 (source (origin
1336 (method url-fetch)
1337 (uri (string-append
1338 "https://software.sil.org/downloads/r/gentium/GentiumPlus-"
1339 version ".zip"))
1340 (sha256
1341 (base32
1342 "0m7189870hha217n1vgpmf89mwggrxkh679ffi1lxpnjggqi2n9k"))))
1343 ;; Note: The zip file provides TTF files only, but the developer release,
1344 ;; which contains additional files, has a 'SOURCES.txt' file that says
1345 ;; that "the primary source files for the fonts are the fonts themselves".
1346 ;; Thus it looks like the TTF can be considered source.
1347 (build-system font-build-system)
1348 (synopsis "Serif font for the Cyrillic, Greek, and Latin alphabets")
1349 (description
1350 "Gentium is a typeface family designed to enable the diverse ethnic
1351groups around the world who use the Latin, Cyrillic and Greek scripts to
1352produce readable, high-quality publications. The font comes with regular and
1353italics shapes. This package provides only TrueType files (TTF).")
1354 (home-page "https://software.sil.org/gentium/")
1355 (license license:silofl1.1)))
46e78707 1356
4b360985
NG
1357(define-public font-sil-andika
1358 (package
1359 (name "font-sil-andika")
1360 (version "5.000")
1361 (source (origin
1362 (method url-fetch)
1363 (uri (string-append
1364 "https://software.sil.org/downloads/r/andika/Andika-"
1365 version ".zip"))
1366 (sha256
1367 (base32
1368 "01zm7p32gxfwmv7h3cfj2vx59846w2y6rxqy67grn2dyjh8pljv0"))))
1369 ;; As for Gentium (see above), the TTF files are considered source.
1370 (build-system font-build-system)
1371 (synopsis "Sans serif font designed especially for literacy use")
1372 (description
1373 "Andika SIL is a sans serif, Unicode-compliant font designed especially
1374for literacy use, taking into account the needs of beginning readers. The
1375focus is on clear, easy-to-perceive letterforms that will not be readily
1376confused with one another. This package provides only TrueType files (TTF).")
1377 (home-page "https://software.sil.org/andika/")
1378 (license license:silofl1.1)))
1379
46e78707
LC
1380(define-public font-sil-charis
1381 (package
1382 (name "font-sil-charis")
1383 (version "5.000")
1384 (source (origin
1385 (method url-fetch)
1386 (uri (string-append
1387 "https://software.sil.org/downloads/r/charis/CharisSIL-"
1388 version ".zip"))
1389 (sha256
1390 (base32
1391 "1zcvw37f1a7gkml3yfm6hxh93844llm7xj4w52600qq3ndrm8gjy"))))
1392 ;; As for Gentium (see above), the TTF files are considered source.
1393 (build-system font-build-system)
1394 (synopsis "Serif font for the Cyrillic and Latin alphabets")
1395 (description
1396 "Charis SIL is a Unicode-based font family that supports the wide range
1397of languages that use the Latin and Cyrillic scripts. It is specially
1398designed to make long texts pleasant and easy to read, even in less than ideal
1399reproduction and display environments. This package provides only TrueType
1400files (TTF).")
1401 (home-page "https://software.sil.org/charis/")
1402 (license license:silofl1.1)))
3c5e1364
GH
1403
1404(define-public font-mononoki
1405 (package
1406 (name "font-mononoki")
1407 (version "1.2")
1408 (source (origin
1409 (method git-fetch)
1410 (uri (git-reference
1411 (url "https://github.com/madmalik/mononoki/")
1412 (commit version)))
1413 (sha256
1414 (base32
1415 "1rkzyxn30rn8qv2h2xz324j7q15hzg2lci8790a7cdl1dfgic4xi"))
1416 (file-name (git-file-name name version))))
1417 (build-system font-build-system)
1418 (synopsis "Font for programming and code review")
1419 (description
1420 "Mononoki is a typeface by Matthias Tellen, created to enhance code
1421formatting.")
1422 (home-page "https://madmalik.github.io/mononoki/")
1423 (license license:silofl1.1)))
245aa0e3
J
1424
1425(define-public font-public-sans
1426 (package
1427 (name "font-public-sans")
1428 (version "1.0.0")
1429 (source (origin
1430 (method git-fetch)
1431 (uri (git-reference
1432 (url "https://github.com/uswds/public-sans.git")
1433 (commit (string-append "v" version))))
1434 (file-name (git-file-name name version))
1435 (sha256
1436 (base32
1437 "12ccj7ph3pg962d52d3slbvd44gwfm6bb2846dxyf1xc5h2iwhdv"))
1438 (modules '((guix build utils)))
1439 (snippet
1440 '(begin
1441 ;; remove versions of predecessor font
1442 (delete-file-recursively "fonts/_archive")
1443 #t))))
1444 (build-system font-build-system)
1445 (home-page "https://public-sans.digital.gov/")
4c89dc35 1446 (synopsis "Neutral typeface for interfaces, text, and headings")
245aa0e3 1447 (description
4c89dc35
LC
1448 "Public Sans is a strong, neutral, sans-serif typeface for text or
1449display based on Libre Franklin.")
245aa0e3 1450 (license license:silofl1.1)))