gnu: qtserialbus: Add libsocketcan support.
[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>
3c986a7d 10;;; Copyright © 2016, 2017, 2018 Nikita <nikita@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>
30acf2f9 14;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
4affa918 15;;; Copyright © 2016, 2020 Marius Bakke <mbakke@fastmail.com>
c3e2a247 16;;; Copyright © 2016 Toni Reina <areina@riseup.net>
5dc8a3ad 17;;; Copyright © 2017, 2018, 2019, 2020 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>
ed248424 22;;; Copyright © 2017, 2018, 2019, 2020 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>
50867421 28;;; Copyright © 2019 Baptiste Strazzulla <bstrazzull@hotmail.fr>
93b3ef19 29;;; Copyright © 2019 Alva <alva@skogen.is>
600f680d 30;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
5d94702e 31;;; Copyright © 2020 Damien Cassou <damien@cassou.me>
c2cf286c 32;;; Copyright © 2020 Amin Bandali <bandali@gnu.org>
3bf45ff4 33;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
0161862d 34;;; Copyright © 2020 John Soo <jsoo1@asu.edu>
5483a2d0 35;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
3c102716 36;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
a8c7d4b0 37;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com>
f3396e78 38;;; Copyright © 2020 Simen Endsjø <simendsjo@gmail.com>
5abed7ca 39;;; Copyright © 2020 Tim Van den Langenbergh <tmt_vdl@gmx.com>
86f1537d
AE
40;;;
41;;; This file is part of GNU Guix.
42;;;
43;;; GNU Guix is free software; you can redistribute it and/or modify it
44;;; under the terms of the GNU General Public License as published by
45;;; the Free Software Foundation; either version 3 of the License, or (at
46;;; your option) any later version.
47;;;
48;;; GNU Guix is distributed in the hope that it will be useful, but
49;;; WITHOUT ANY WARRANTY; without even the implied warranty of
50;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
51;;; GNU General Public License for more details.
52;;;
53;;; You should have received a copy of the GNU General Public License
54;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
55
56(define-module (gnu packages fonts)
6e1d7aa9 57 #:use-module (ice-9 regex)
71be99b8 58 #:use-module (guix utils)
b5b73a82 59 #:use-module ((guix licenses) #:prefix license:)
86f1537d
AE
60 #:use-module (guix packages)
61 #:use-module (guix download)
49dbae54 62 #:use-module (guix git-download)
b2f89c19 63 #:use-module (guix build-system font)
d41bb065 64 #:use-module (guix build-system gnu)
bd15da3a 65 #:use-module (guix build-system meson)
86f1537d 66 #:use-module (guix build-system trivial)
56b7a338 67 #:use-module (gnu packages base)
5dca64fc 68 #:use-module (gnu packages bash)
d41bb065 69 #:use-module (gnu packages compression)
47268eec 70 #:use-module (gnu packages fontutils)
bd15da3a
KK
71 #:use-module (gnu packages gettext)
72 #:use-module (gnu packages glib)
ed248424 73 #:use-module (gnu packages gtk)
d41bb065 74 #:use-module (gnu packages perl)
47268eec
AE
75 #:use-module (gnu packages pkg-config)
76 #:use-module (gnu packages python)
ed248424 77 #:use-module (gnu packages python-xyz)
148585c2 78 #:use-module (gnu packages xorg))
86f1537d 79
270750d4
CR
80(define-public font-ibm-plex
81 (package
82 (name "font-ibm-plex")
57680360 83 (version "4.0.2")
270750d4
CR
84 (source (origin
85 (method url-fetch)
86 (uri (string-append
87 "https://github.com/IBM/plex/releases/download/"
88 "v" version "/OpenType.zip"))
89 (sha256
90 (base32
57680360 91 "17bd84ic7z9hkcjy4bwnh4z51bnkh2vrjzwvs9g6lwzmxjswa5b6"))))
270750d4
CR
92 (build-system font-build-system)
93 (home-page "https://github.com/IBM/plex")
94 (synopsis "IBM Plex typeface")
95 (description "This package provides the Plex font family. It comes in a
96Sans, Serif, Mono and Sans Condensed, all with roman and true italics. The
97fonts have been designed to work well in user interface (UI) environments as
98well as other mediums.")
99 (license license:silofl1.1)))
100
477ac94b 101(define-public font-inconsolata
dede51a1
ED
102 (package
103 (name "font-inconsolata")
901f2607
TGR
104 (version "3.000")
105 (source
106 (origin
107 (method url-fetch)
108 (uri (string-append "https://github.com/googlefonts/Inconsolata/"
109 "releases/download/v" version "/fonts_otf.zip"))
110 (sha256
111 (base32 "1wavvv86nwsqm5sbmnkv1bprj7l7zdrkxpvjy6w8yag93k6hrlx1"))))
b2f89c19 112 (build-system font-build-system)
fb7e50bd 113 (home-page "https://levien.com/type/myfonts/inconsolata.html")
dede51a1
ED
114 (synopsis "Monospace font")
115 (description "A monospace font, designed for code listings and the like,
116in print. With attention to detail for high resolution rendering.")
117 (license license:silofl1.1)))
118
e93b88f7
ED
119(define-public font-ubuntu
120 (package
121 (name "font-ubuntu")
29f9abb4 122 (version "0.83")
e93b88f7 123 (source (origin
96cae1b4
JN
124 (method git-fetch)
125 (uri (git-reference
126 (url "https://salsa.debian.org/fonts-team/fonts-ubuntu")
127 (commit (string-append "upstream/" version))))
128 (file-name (git-file-name name version))
e93b88f7
ED
129 (sha256
130 (base32
96cae1b4 131 "1d2xrjpxy70f3nsgqiggwv6pj06qglf5vj2847pqx60w3ygi903g"))))
59786588 132 (build-system font-build-system)
e93b88f7
ED
133 (home-page "http://font.ubuntu.com/")
134 (synopsis "The Ubuntu Font Family")
135 (description "The Ubuntu Font Family is a unique, custom designed font
136that has a very distinctive look and feel. This package provides the
137TrueType (TTF) files.")
138 (license
139 (license:non-copyleft
140 "http://font.ubuntu.com/ufl/ubuntu-font-licence-1.0.txt"
141 "Ubuntu Font License v1.0"))))
142
5e6bdf06 143(define-public font-dejavu
72f210ea 144 (package
5e6bdf06 145 (name "font-dejavu")
d7284b6a 146 (version "2.37")
72f210ea
MW
147 (source (origin
148 (method url-fetch)
de67e922 149 (uri (string-append "mirror://sourceforge/dejavu/dejavu/"
72f210ea
MW
150 version "/dejavu-fonts-ttf-"
151 version ".tar.bz2"))
152 (sha256
153 (base32
d7284b6a 154 "1mqpds24wfs5cmfhj57fsfs07mji2z8812i5c4pi5pbi738s977s"))))
2e884019 155 (build-system font-build-system)
72f210ea 156 (arguments
2e884019
AI
157 `(#:phases
158 (modify-phases %standard-phases
159 (add-after 'install 'install-conf
160 (lambda* (#:key outputs #:allow-other-keys)
161 (let ((conf-dir (string-append (assoc-ref outputs "out")
162 "/share/fontconfig/conf.avail")))
38ef437b
MW
163 (copy-recursively "fontconfig" conf-dir)
164 #t))))))
db369e91 165 (home-page "https://dejavu-fonts.github.io/")
72f210ea
MW
166 (synopsis "Vera font family derivate with additional characters")
167 (description "DejaVu provides an expanded version of the Vera font family
168aiming for quality and broader Unicode coverage while retaining the original
b4774d87 169Vera style. DejaVu currently works towards conformance to the Multilingual
72f210ea
MW
170European Standards (MES-1 and MES-2) for Unicode coverage. The DejaVu fonts
171provide serif, sans and monospaced variants.")
172 (license
173 (license:x11-style
174 "http://dejavu-fonts.org/"))))
175
5e6bdf06 176(define-public font-bitstream-vera
86f1537d 177 (package
5e6bdf06 178 (name "font-bitstream-vera")
86f1537d
AE
179 (version "1.10")
180 (source (origin
181 (method url-fetch)
182 (uri (string-append "mirror://gnome/sources/ttf-bitstream-vera/"
183 version "/ttf-bitstream-vera-"
184 version ".tar.bz2"))
185 (sha256
186 (base32
187 "1p3qs51x5327gnk71yq8cvmxc6wgx79sqxfvxcv80cdvgggjfnyv"))))
e46e0de1 188 (build-system font-build-system)
f032d0be 189 (home-page "https://www.gnome.org/fonts/")
86f1537d
AE
190 (synopsis "Bitstream Vera sans-serif typeface")
191 (description "Vera is a sans-serif typeface from Bitstream, Inc. This
192package provides the TrueType (TTF) files.")
193 (license
d5b09129
CL
194 (license:fsdg-compatible
195 "https://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts"
196 "The Font Software may be sold as part of a larger software package but
197no copy of one or more of the Font Software typefaces may be sold by
198itself."))))
86f1537d 199
71be99b8
LC
200(define-public font-cantarell
201 (package
202 (name "font-abattis-cantarell")
1ce15831 203 (version "0.201")
71be99b8
LC
204 (source (origin
205 (method url-fetch)
206 (uri (string-append "mirror://gnome/sources/cantarell-fonts/"
207 (version-major+minor version)
208 "/cantarell-fonts-" version ".tar.xz"))
209 (sha256
210 (base32
1ce15831 211 "0qwqmkczqy09fdj8l11nr841ks0dwsydqg55qyms12m4yvjn87xn"))))
bd15da3a
KK
212 (build-system meson-build-system)
213 (native-inputs
1ce15831 214 `(("gettext" ,gettext-minimal))) ; for msgfmt
71be99b8
LC
215 (home-page "https://wiki.gnome.org/Projects/CantarellFonts")
216 (synopsis "Cantarell sans-serif typeface")
217 (description "The Cantarell font family is a contemporary Humanist
218sans-serif designed for on-screen reading. It is used by GNOME@tie{}3.")
219 (license license:silofl1.1)))
220
4eb47420 221(define-public font-lato
222 (package
223 (name "font-lato")
5dc8a3ad 224 (version "2.015") ; also update description
4eb47420 225 (source (origin
803b9e8b 226 (method url-fetch/zipbomb)
253a4bb2 227 (uri (string-append "https://www.latofonts.com/download/Lato2OFL.zip"))
4eb47420 228 (sha256
229 (base32
230 "1f5540g0ja1nx3ddd3ywn77xc81ssrxpq8n3gyb9sabyq2b4xda2"))))
803b9e8b 231 (build-system font-build-system)
253a4bb2 232 (home-page "https://www.latofonts.com/lato-free-fonts/")
4eb47420 233 (synopsis "Lato sans-serif typeface")
234 (description
235 "Lato is a sanserif typeface family. It covers over 3000 glyphs per style.
236The Lato 2.010 family supports more than 100 Latin-based languages, over
23750 Cyrillic-based languages as well as Greek and IPA phonetics.")
238 (license license:silofl1.1)))
239
5483a2d0 240(define-public font-gnu-freefont
86f1537d 241 (package
5483a2d0 242 (name "font-gnu-freefont")
4affa918
MB
243 ;; Note: Remove the special FontForge input and package once the 2020
244 ;; release is out.
47268eec 245 (version "20120503")
86f1537d
AE
246 (source (origin
247 (method url-fetch)
47268eec 248 (uri (string-append "mirror://gnu/freefont/freefont-src-"
86f1537d
AE
249 version ".tar.gz"))
250 (sha256
251 (base32
47268eec
AE
252 "0yk58blhcd4hm7nyincmqq4jrzjjk82wif2zmk1l3y2m4vif4qhd"))))
253 (build-system gnu-build-system)
86f1537d 254 (arguments
47268eec
AE
255 `(#:phases (modify-phases %standard-phases
256 (delete 'configure)
257 (replace 'install
258 (lambda _
259 (let ((doc-dir (string-append %output "/share/doc/"
260 ,name "-" ,version))
5483a2d0 261 (ttf-font-dir (string-append %output
7d426c5b 262 "/share/fonts/truetype"))
5483a2d0 263 (otf-font-dir (string-append %output
7d426c5b 264 "/share/fonts/opentype"))
5483a2d0 265 (woff-font-dir (string-append %output
bb3685e8 266 "/share/fonts/webfonts")))
47268eec
AE
267 (mkdir-p doc-dir)
268 (substitute* "Makefile"
269 (("\\$\\(TMPDIR\\)") doc-dir)
5483a2d0
RG
270 (("sfd/\\*.ttf") "")
271 (("sfd/\\*.otf") "")
272 (("sfd/\\*.woff") ""))
273 ;; XXX The FreeFont Makefile tries to use the current
274 ;; time and date as names for generated files, and fails
275 ;; silently. But the fonts are still installed, so we
276 ;; leave the issue alone for now.
277 ;; See <https://bugs.gnu.org/40783>
278 (system* "make" "ttftar" "otftar" "wofftar")
279 (mkdir-p ttf-font-dir)
280 (mkdir-p otf-font-dir)
281 (mkdir-p woff-font-dir)
47268eec 282 (for-each (lambda (file)
5483a2d0 283 (install-file file ttf-font-dir))
47268eec
AE
284 (filter
285 (lambda (file) (string-suffix? "ttf" file))
5483a2d0
RG
286 (find-files "." "")))
287 (for-each (lambda (file)
288 (install-file file otf-font-dir))
289 (filter
290 (lambda (file) (string-suffix? "otf" file))
291 (find-files "." "")))
292 (for-each (lambda (file)
293 (install-file file woff-font-dir))
294 (filter
295 (lambda (file) (string-suffix? "woff" file))
47268eec
AE
296 (find-files "." "")))))))
297 #:test-target "tests"))
4affa918
MB
298 ;; FreeFont anno 2012 requires a FontForge built with Python 2.
299 (native-inputs `(("fontforge" ,fontforge-20190801)))
6fd52309 300 (home-page "https://www.gnu.org/software/freefont/")
86f1537d
AE
301 (synopsis "Unicode-encoded outline fonts")
302 (description
303 "The GNU Freefont project aims to provide a set of free outline
304 (PostScript Type0, TrueType, OpenType...) fonts covering the ISO
30510646/Unicode UCS (Universal Character Set).")
63e8bb12
LC
306 (license license:gpl3+)
307 (properties '((upstream-name . "freefont")
308 (ftp-directory . "/gnu/freefont")))))
d41bb065 309
8e2a4238
LF
310(define-public font-gnu-freefont-ttf
311 (deprecated-package "font-gnu-freefont-ttf" font-gnu-freefont))
312
16191117
AK
313(define-public font-liberation
314 (package
315 (name "font-liberation")
1fd2c00e 316 (version "2.1.1")
0754f29a
TGR
317 (source
318 (origin
319 (method url-fetch)
320 (uri (string-append "https://github.com/liberationfonts/liberation-fonts/"
1fd2c00e 321 "files/4743886/liberation-fonts-ttf-" version ".tar.gz"))
0754f29a 322 (sha256
1fd2c00e 323 (base32 "1jkg8j8jx7ffj13z5ilw7dids99dyypljm1pv06ycmghw1pw3qlf"))))
45d32e24 324 (build-system font-build-system)
0754f29a
TGR
325 (home-page "https://github.com/liberationfonts")
326 (synopsis "Fonts compatible with Arial, Times New Roman, and Courier New")
16191117
AK
327 (description
328 "The Liberation font family aims at metric compatibility with
329Arial, Times New Roman, and Courier New.
16191117
AK
330There are three sets:
331
0102fba2 332@enumerate
ec460a2a 333@item Sans (a substitute for Arial, Albany, Helvetica, Nimbus Sans L, and
16191117 334Bitstream Vera Sans);
ec460a2a 335@item Serif (a substitute for Times New Roman, Thorndale, Nimbus Roman, and
16191117 336Bitstream Vera Serif);
ec460a2a 337@item Mono (a substitute for Courier New, Cumberland, Courier, Nimbus Mono L,
16191117 338and Bitstream Vera Sans Mono).
0102fba2 339@end enumerate
16191117
AK
340
341The Liberation Fonts are sponsored by Red Hat.")
342 (license license:silofl1.1)))
343
d28fa5cc
RW
344(define-public font-linuxlibertine
345 (package
346 (name "font-linuxlibertine")
347 (version "5.3.0")
348 (source (origin
349 (method url-fetch/tarbomb)
350 (uri (string-append "mirror://sourceforge/linuxlibertine/"
351 "linuxlibertine/" version
352 "/LinLibertineSRC_" version "_2012_07_02.tgz"))
353 (sha256
354 (base32
355 "0x7cz6hvhpil1rh03rax9zsfzm54bh7r4bbrq8rz673gl9h47v0v"))))
15795e07 356 (build-system font-build-system)
d28fa5cc 357 (arguments
15795e07 358 `(#:phases
d28fa5cc 359 (modify-phases %standard-phases
15795e07 360 (add-before 'install 'build
d28fa5cc
RW
361 (lambda _
362 (let ((compile
363 (lambda (name ext)
15795e07
AI
364 (invoke
365 "fontforge" "-lang=ff"
366 "-c" (string-append "Open('" name "');"
367 "Generate('"
368 (basename name "sfd") ext
369 "')")))))
370 (for-each (lambda (name)
371 (and (compile name "ttf")
372 (compile name "otf")))
373 (find-files "." "\\.sfd$"))
d28fa5cc
RW
374 #t))))))
375 (native-inputs
376 `(("fontforge" ,fontforge)))
377 (home-page "http://www.linuxlibertine.org/")
378 (synopsis "Serif and sans serif typefaces")
379 (description "The Linux Libertine fonts is a set of typefaces containing
380both a Serif version (\"Linux Libertine\") and a Sans Serif (\"Linux
381Biolinum\") designed to be used together as an alternative for Times/Times New
382Roman and Helvetica/Arial. The Serif typeface comes in two shapes and two
383weights, and with a Small Capitals version of the regular typeface. Linux
384Biolinum is available in both Regular and Bold weights.")
385 ;; The fonts are released under either of these licenses.
386 (license (list license:gpl2+ license:silofl1.1))))
387
5abed7ca
TVL
388(define-public font-libertinus
389 (package
390 (name "font-libertinus")
391 (version "6.12")
392 (source
393 (origin
394 (method url-fetch)
395 (uri (string-append "https://github.com/alerque/libertinus/releases"
396 "/download/v" version "/libertinus-" version
397 ".zip"))
398 (sha256
399 (base32 "06pcsd5pijjid7xjxak35jla089krm5hqnbglv8ldncq475q7kb2"))))
400 (build-system font-build-system)
401 (home-page "https://github.com/alerque/libertinus")
402 (synopsis "Font family based on Linux Libertine")
403 (description
404 "The Libertinus font family is a fork of Linux Libertine that addresses
405many bugs in the unmaintained original and adds a new mathematical companion
406font for use with OpenType math-capable applications like LuaTex or XeTeX.
407
408The unified Libertinus family consists of:
409@enumerate
410@item Libertinus Serif, forked from Linux Libertine;
411@item Libertinus Sans Serif, forked from Linux Biolinum;
412@item Libertinus Mono, forked from Linux Libertine Mono; and
413@item Libertinus Math, an original matching OpenType math font.
414@end enumerate\n")
415 (license license:silofl1.1)))
416
5e6bdf06 417(define-public font-terminus
d41bb065 418 (package
5e6bdf06 419 (name "font-terminus")
3fd67ec6 420 (version "4.48")
d41bb065 421 (source
73c5c482
TGR
422 (origin
423 (method url-fetch)
424 (uri (string-append "mirror://sourceforge/terminus-font/terminus-font-"
425 version "/terminus-font-" version ".tar.gz"))
426 (sha256
3fd67ec6 427 (base32 "1bwlkj39rqbyq57v5yssayav6hzv1n11b9ml2s0dpiyfsn6rqy9l"))))
d41bb065 428 (build-system gnu-build-system)
a431e213
TGR
429 (outputs (list "out" "pcf-8bit"))
430 (arguments
431 `(#:tests? #f ; no test target in tarball
432 #:phases
433 (modify-phases %standard-phases
434 (add-after 'build 'build-more-bits
435 ;; X11 8-bit code pages aren't installed by default (they were
436 ;; until version 4.46). Build and install them separately.
437 (lambda* (#:key make-flags #:allow-other-keys)
438 (apply invoke "make" "pcf-8bit" make-flags)))
439 (add-after 'install 'install-more-bits
440 (lambda* (#:key make-flags outputs #:allow-other-keys)
441 (let ((pcf-8bit (assoc-ref outputs "pcf-8bit")))
442 (apply invoke "make" "install-pcf-8bit" (string-append "prefix="
443 pcf-8bit)
444 make-flags)))))))
d41bb065 445 (native-inputs
73c5c482 446 `(("bdftopcf" ,bdftopcf)
b3546174 447 ("font-util" ,font-util)
73c5c482
TGR
448 ("mkfontdir" ,mkfontdir)
449 ("pkg-config" ,pkg-config)
450 ("python" ,python)))
d41bb065
JG
451 (home-page "http://terminus-font.sourceforge.net/")
452 (synopsis "Simple bitmap programming font")
b4774d87
TGR
453 (description "Terminus Font is a clean, fixed-width bitmap font, designed
454for long periods of working with computers (8 or more hours per day).")
380f2ab6 455 (license license:silofl1.1)))
692784dd
SB
456
457(define-public font-adobe-source-han-sans
458 (package
459 (name "font-adobe-source-han-sans")
2666a126 460 (version "1.004")
692784dd 461 (source (origin
8f4dccf7
EF
462 (method git-fetch)
463 (uri (git-reference
b0e7b699 464 (url "https://github.com/adobe-fonts/source-han-sans")
8f4dccf7
EF
465 (commit (string-append version "R"))))
466 (file-name (git-file-name name version))
692784dd
SB
467 (sha256
468 (base32
8f4dccf7 469 "0zm884d8fp5gvirq324050kqv7am9khyqhs9kk4r4rr3jzn61jpk"))))
2666a126 470 (outputs '("out" ; OpenType/CFF Collection (OTC), 121 MiB.
692784dd
SB
471 "cn" "jp" "kr" "tw")) ; Region-specific Subset OpenType/CFF.
472 (build-system trivial-build-system)
473 (arguments
474 `(#:modules ((guix build utils))
475 #:builder
476 (begin
477 (use-modules (guix build utils))
8f4dccf7 478 (let ((install-opentype-fonts
692784dd
SB
479 (lambda (fonts-dir out)
480 (copy-recursively fonts-dir
481 (string-append (assoc-ref %outputs out)
482 "/share/fonts/opentype")))))
8f4dccf7 483 (chdir (assoc-ref %build-inputs "source"))
692784dd
SB
484 (install-opentype-fonts "OTC" "out")
485 (install-opentype-fonts "SubsetOTF/CN" "cn")
486 (install-opentype-fonts "SubsetOTF/JP" "jp")
487 (install-opentype-fonts "SubsetOTF/KR" "kr")
2666a126 488 (install-opentype-fonts "SubsetOTF/TW" "tw")
e3cfef22
MW
489 (for-each delete-file (find-files %output "\\.zip$"))
490 #t))))
692784dd
SB
491 (home-page "https://github.com/adobe-fonts/source-han-sans")
492 (synopsis "Pan-CJK fonts")
493 (description
494 "Source Han Sans is a sans serif Pan-CJK font family that is offered in
495seven weights: ExtraLight, Light, Normal, Regular, Medium, Bold, and Heavy.
496And in several OpenType/CFF-based deployment configurations to accommodate
497various system requirements or limitations. As the name suggests, Pan-CJK
498fonts are intended to support the characters necessary to render or display
e881752c 499text in Simplified Chinese, Traditional Chinese, Japanese, and Korean.")
2666a126 500 (license license:silofl1.1)))
192b4802 501
840b7136 502(define-public font-cns11643
377fad00
BT
503 ;; Since upstream doesn't provide any version numbers, the date of the last
504 ;; edit is used, taken from https://data.gov.tw/dataset/5961
505 ;; XXX: The source is also updated in-place, so it may be desirable to mirror
506 ;; it elsewhere to avoid suddenly losing the current source file.
840b7136
BT
507 (package
508 (name "font-cns11643")
377fad00 509 (version "98.1.20180605")
840b7136
BT
510 (source (origin
511 (method url-fetch)
512 (uri "http://www.cns11643.gov.tw/AIDB/Open_Data.zip")
513 (sha256
514 (base32
377fad00 515 "000a9whrjr1cd4pjc23pbl60zwkq3wcb5g61p9qi7fn3hwkp0kyw"))))
8c5ad448 516 (build-system font-build-system)
840b7136
BT
517 (home-page "http://www.cns11643.gov.tw/AIDB/welcome.do")
518 (synopsis "CJK TrueType fonts, TW-Kai and TW-Sung")
519 (description
520 "@code{CNS 11643} character set (Chinese National Standard, or Chinese
521Standard Interchange Code) is the standard character set of the Republic of
522China (Taiwan) for Chinese Characters and other Unicode symbols. Contained
523are six TrueType fonts based on two script styles, Regular script (Kai), and
524Sung/Ming script, each with three variants:
525
526@itemize
527@item @code{CNS 11643} (@code{TW-Kai} and @code{TW-Sung}): Tens of thousands
528of CJK characters from frequency tables published by the Taiwanese
529Ministry of Education. ISO 10646 and Unicode compatible encoding.
530@item @code{Big-5 Plus}: Several thousand frequently used CJK characters
531encoded in the user defined area of the Big-5 code.
532@item @code{Big-5 Extended}: A Big-5 character set based on the
533@code{Big-5 Plus} and @code{CNS 11643} character sets.
534@end itemize\n")
535 (license (license:non-copyleft
536 "http://data.gov.tw/license")))) ; CC-BY 4.0 compatible
537
f3744a01
BT
538(define-public font-cns11643-swjz
539 (package
540 (name "font-cns11643-swjz")
541 (version "1")
542 (source
543 (origin
544 (method url-fetch)
545 (uri "https://www.moedict.tw/fonts/truetype/cns11643/ebas927.ttf")
546 (sha256
547 (base32
548 "1qkljldbmb53zp1rcmpsb8rzy67rnsqcjxi549m9743ifk4isl78"))))
a5ce48c8 549 (build-system font-build-system)
f3744a01
BT
550 (home-page
551 (string-append "http://www.cns11643.gov.tw/AIDB/download.do"
552 "?name=%E5%AD%97%E5%9E%8B%E4%B8%8B%E8%BC%89"))
553 (synopsis "TrueType seal script font")
554 (description
555 "@code{Shuowen Jiezi} is a TrueType seal script font based on the ancient
556text of the same name published by the Executive Yuan of Taiwan. 6721 glyphs
557are included, at Unicode compatible code points corresponding to their modern
558variants.")
559 ;; Original text only available in Chinese. More info at
560 ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=26703#11
561 (license (license:non-copyleft
562 "http://www.cns11643.gov.tw/AIDB/copyright.do"))))
563
192b4802
RW
564(define-public font-wqy-zenhei
565 (package
566 (name "font-wqy-zenhei")
567 (version "0.9.45")
568 (source (origin
569 (method url-fetch)
570 (uri (string-append
de67e922
LF
571 "mirror://sourceforge/wqy/wqy-zenhei/" version
572 "%20%28Fighting-state%20RC1%29/wqy-zenhei-"
192b4802 573 version ".tar.gz"))
192b4802
RW
574 (sha256
575 (base32
576 "1mkmxq8g2hjcglb3zajfqj20r4r88l78ymsp2xyl5yav8w3f7dz4"))))
371ca85f 577 (build-system font-build-system)
332cc03b 578 (home-page "http://wenq.org/wqy2/")
192b4802
RW
579 (synopsis "CJK font")
580 (description
581 "WenQuanYi Zen Hei is a Hei-Ti style (sans-serif type) Chinese outline
582font. It is designed for general purpose text formatting and on-screen
583display of Chinese characters and symbols from many other languages.
b4774d87 584WenQuanYi Zen Hei provides a rather complete coverage of Chinese Hanzi glyphs,
192b4802
RW
585including both simplified and traditional forms. The total glyph number in
586this font is over 35,000, including over 21,000 Chinese Hanzi. This font has
b4774d87
TGR
587full coverage of the GBK (CP936) charset, CJK Unified Ideographs, as well as
588the code-points needed for zh_cn, zh_sg, zh_tw, zh_hk, zh_mo, ja (Japanese) and
589ko (Korean) locales for @code{fontconfig}.")
78cda0bc 590 ;; GPLv2 with font embedding exception.
192b4802 591 (license license:gpl2)))
3f88152d 592
12b8f6b4
FS
593(define-public font-wqy-microhei
594 (package
595 (name "font-wqy-microhei")
596 (version "0.2.0-beta")
597 (source (origin
598 (method url-fetch)
599 (uri (string-append "mirror://sourceforge/wqy/wqy-microhei/"
600 version "/wqy-microhei-" version ".tar.gz"))
601 (sha256
602 (base32
603 "0gi1yxqph8xx869ichpzzxvx6y50wda5hi77lrpacdma4f0aq0i8"))))
7fc6ce46 604 (build-system font-build-system)
12b8f6b4
FS
605 (home-page "http://wenq.org/wqy2/")
606 (synopsis "CJK font")
607 (description
608 "WenQuanYi Micro Hei is a Sans-Serif style (also known as Hei, Gothic or
609Dotum among the Chinese/Japanese/Korean users) high quality CJK outline font.
610It was derived from \"Droid Sans Fallback\" and \"Droid Sans\" released by
611Google Inc. This font contains all the unified CJK Han glyphs in the range of
612U+4E00-U+9FC3 defined in Unicode Standard 5.1, together with many other
613languages unicode blocks, including Latins, Extended Latins, Hanguls and
614Kanas. The font file is extremely compact (~4M) compared with most known CJK
615fonts.")
616 ;; This font is licensed under Apache2.0 or GPLv3 with font embedding
617 ;; exceptions.
618 (license license:gpl3)))
619
42ecb96e
MS
620(define-public font-rachana
621 (package
622 (name "font-rachana")
0736d973 623 (version "7.0.3")
42ecb96e
MS
624 (source
625 (origin
61e079d6
TGR
626 (method git-fetch)
627 (uri (git-reference
628 (url "https://gitlab.com/smc/fonts/rachana")
629 (commit (string-append "Version" version))))
42ecb96e 630 (sha256
61e079d6
TGR
631 (base32 "0r100pvk56y1s38nbv24d78s8nd7dkblgasbn8s887dzj6dps23d"))
632 (file-name (git-file-name name version))))
42ecb96e
MS
633 (build-system font-build-system)
634 (home-page "https://smc.org.in")
635 (synopsis "Malayalam font")
636 (description
637 "Rachana is a Malayalam font designed by Hussain K H. The project was
638part of Rachana Aksharavedi for the original script of Malayalam in computing.
639Rachana has about 1,200+ glyphs for Malayalam and contains glyphs required for
640printing old Malayalam books without compromising the writing style.")
641 ;; This font is licensed under SIL 1.1 or GPLv3+ with font embedding
642 ;; exceptions.
643 (license (list license:silofl1.1 license:gpl3+))))
644
3f88152d
RW
645(define-public font-tex-gyre
646 (package
647 (name "font-tex-gyre")
648 (version "2.005")
649 (source
650 (origin
c226f06c 651 (method url-fetch/zipbomb)
3f88152d
RW
652 (uri (string-append "http://www.gust.org.pl/projects/e-foundry/"
653 "tex-gyre/whole/tg-" version "otf.zip"))
654 (sha256
655 (base32
656 "0kph9l3g7jb2bpmxdbdg5zl56wacmnvdvsdn7is1gc750sqvsn31"))))
c226f06c 657 (build-system font-build-system)
3f88152d
RW
658 (home-page "http://www.gust.org.pl/projects/e-foundry/tex-gyre/")
659 (synopsis "Remake of Ghostscript fonts")
660 (description "The TeX Gyre collection of fonts is the result of an
661extensive remake and extension of the freely available base PostScript fonts
662distributed with Ghostscript version 4.00. The collection contains the
663following fonts in the OpenType format: Adventor, Bonum, Chorus, Cursor,
664Heros, Pagella, Schola, Termes.")
665 (license license:gfl1.0)))
761b3d44
LF
666
667(define-public font-anonymous-pro
668 (package
669 (name "font-anonymous-pro")
670 (version "1.002")
671 (source (origin
672 (method url-fetch)
673 (uri (string-append
bba5bb30 674 "https://www.marksimonson.com/assets/content/fonts/"
761b3d44
LF
675 "AnonymousPro-" version ".zip"))
676 (sha256
677 (base32
678 "1asj6lykvxh46czbal7ymy2k861zlcdqpz8x3s5bbpqwlm3mhrl6"))))
bbb1a1d2 679 (build-system font-build-system)
bba5bb30 680 (home-page "https://www.marksimonson.com/fonts/view/anonymous-pro")
761b3d44
LF
681 (synopsis "Fixed-width fonts designed with coding in mind")
682 (description "Anonymous Pro is a family of four fixed-width fonts designed
683with coding in mind. Anonymous Pro features an international, Unicode-based
684character set, with support for most Western and Central European Latin-based
685languages, plus Greek and Cyrillic.")
686 (license license:silofl1.1)))
d032d965 687
4fce1ff1
TGR
688(define-public font-anonymous-pro-minus
689 (package
690 (inherit font-anonymous-pro)
691 (name "font-anonymous-pro-minus")
692 ;; The -Minus variant doesn't necessarily track the regular version above.
693 (version "1.003")
694 (source
695 (origin
696 (method url-fetch)
697 (uri (string-append "https://www.marksimonson.com/assets/content/fonts/"
698 "AnonymousProMinus-" version ".zip"))
699 (sha256
700 (base32 "1p2n91jja37d2cshp5pjwld9lq0v7gnpk7ywwn2blq7k46q6vq38"))))
701 (synopsis "Fixed-width fonts designed with coding in mind, without bitmaps")
702 (description "Anonymous Pro is a family of four fixed-width fonts designed
703with coding in mind. Anonymous Pro features an international, Unicode-based
704character set, with support for most Western and Central European Latin-based
705languages, plus Greek and Cyrillic.
706
707Anonymous Pro Minus is identical to Anonymous Pro, minus its embedded bitmaps
708for use at smaller text sizes")))
709
d032d965
SB
710(define-public font-gnu-unifont
711 (package
712 (name "font-gnu-unifont")
c319c895 713 (version "13.0.03")
f990bda4
TGR
714 (source
715 (origin
716 (method url-fetch)
717 (uri (list
718 (string-append "http://unifoundry.com/pub/unifont/unifont-"
719 version "/unifont-" version ".tar.gz")
720 (string-append "mirror://gnu/unifont/unifont-"
721 version "/unifont-" version ".tar.gz")))
722 (sha256
c319c895 723 (base32 "04l2sbg6il78qsj3jxqfbz5k1xzihvw8vdlckgkp4zfr0nh2q7h7"))))
d032d965 724 (build-system gnu-build-system)
f21058dc
EF
725 (outputs '("out" ; TrueType version
726 "pcf" ; PCF (bitmap) version
727 "psf" ; PSF (console) version
728 "bin")) ; Utilities to manipulate '.hex' format
d032d965 729 (arguments
f21058dc 730 '(#:tests? #f ; no check target
d032d965
SB
731 #:phases
732 (modify-phases %standard-phases
c88bee0a
EF
733 (replace
734 'configure
735 (lambda _ (setenv "CC" "gcc") #t))
d032d965
SB
736 (replace
737 'install
738 (lambda* (#:key outputs #:allow-other-keys)
739 (let* ((ttf (string-append (assoc-ref outputs "out")
740 "/share/fonts/truetype"))
741 (pcf (string-append (assoc-ref outputs "pcf")
742 "/share/fonts/misc"))
743 (psf (string-append (assoc-ref outputs "psf")
744 "/share/consolefonts"))
745 (bin (assoc-ref outputs "bin")))
5b47ea94
EF
746 (invoke "make"
747 (string-append "PREFIX=" bin)
748 (string-append "TTFDEST=" ttf)
749 (string-append "PCFDEST=" pcf)
750 (string-append "CONSOLEDEST=" psf)
751 "install")
d032d965
SB
752 ;; Move Texinfo file to the right place.
753 (mkdir (string-append bin "/share/info"))
c1352b4b
LC
754 (invoke "gzip" "-9n" "doc/unifont.info")
755 (install-file "doc/unifont.info.gz"
756 (string-append bin "/share/info"))
d032d965
SB
757 #t))))))
758 (inputs
759 `(("perl" ,perl))) ; for utilities
760 (synopsis
761 "Large bitmap font covering Unicode's Basic Multilingual Plane")
762 (description
763 "GNU Unifont is a bitmap font covering essentially all of
764Unicode's Basic Multilingual Plane. The package also includes
765utilities to ease adding new glyphs to the font.")
dbb58f28 766 (home-page "http://unifoundry.com/unifont/index.html")
fc19cee1 767 (properties '((upstream-name . "unifont")))
d032d965 768 (license license:gpl2+)))
b6ecac93
J
769
770(define-public font-google-noto
771 (package
772 (name "font-google-noto")
66d6b7c3
TGR
773 (version "20171025")
774 (source
775 (origin
776 (method url-fetch/zipbomb)
777 (uri (string-append "https://noto-website-2.storage.googleapis.com/"
778 "pkgs/Noto-hinted.zip"))
779 (file-name (string-append name "-" version ".zip"))
780 (sha256
781 (base32 "1bp42whyin7xcgmrbnfvz3rvd98xmxaz3ywqybbjmqzwaa9llyw3"))))
2f7966c8 782 (build-system font-build-system)
b6ecac93 783 (home-page "https://www.google.com/get/noto/")
b4774d87
TGR
784 (synopsis "Fonts to cover all languages")
785 (description "Google Noto Fonts is a family of fonts designed to support
786all languages with a consistent look and aesthetic. Its goal is to properly
787display all Unicode symbols.")
b6ecac93 788 (license license:silofl1.1)))
aae6b4b9 789
bb0756c7 790(define-public font-google-roboto
791 (package
792 (name "font-google-roboto")
793 (version "2.136")
794 (source
795 (origin
796 (method url-fetch)
797 (uri (string-append "https://github.com/google/roboto/releases/download/"
798 "v" version "/roboto-hinted.zip"))
799 (file-name (string-append name "-" version ".zip"))
800 (sha256
801 (base32
802 "0spscx08fad7i8qs7icns96iwcapniq8lwwqqvbf7bamvs8qfln4"))))
9713b31e 803 (build-system font-build-system)
bb0756c7 804 (home-page "https://github.com/google/roboto")
805 (synopsis "The Roboto family of fonts")
806 (description
807 "Roboto is Google’s signature family of fonts, the default font on Android
808and Chrome OS, and the recommended font for the
809visual language \"Material Design\".")
810 (license license:asl2.0)))
811
aae6b4b9 812(define-public font-un
813 (package
814 (name "font-un")
815 (version "1.0.2-080608")
aae6b4b9 816 (source (origin
817 (method url-fetch)
99a61dad 818 (uri (string-append
819 "https://kldp.net/unfonts/release/2607-"
820 "un-fonts-core-" version ".tar.gz"))
aae6b4b9 821 (file-name (string-append name "-" version ".tar.gz"))
822 (sha256
823 (base32
824 "13liaz2pmww3aqabm55la5npd08m1skh334ky7qfidxaz5s742iv"))))
6084d9b4 825 (build-system font-build-system)
aae6b4b9 826 (home-page "https://kldp.net/projects/unfonts/")
827 (synopsis "Collection of Korean fonts")
828 (description
829 "Un-fonts is a family of mainly Korean fonts.
830It contains the following fonts and styles:
831
832@enumerate
833@item UnBatang, UnBatangBold: serif;
834@item UnDotum, UnDotumBold: sans-serif;
835@item UnGraphic, UnGraphicBold: sans-serif style;
836@item UnDinaru, UnDinaruBold, UnDinaruLight;
837@item UnPilgi, UnPilgiBold: script;
838@item UnGungseo: cursive, brush-stroke.
839@end enumerate\n")
840 (license license:gpl2+)))
f85cafde
EB
841
842(define-public font-fantasque-sans
843 (package
844 (name "font-fantasque-sans")
0d197a63 845 (version "1.8.0")
f85cafde
EB
846 (source
847 (origin
5882078e
EB
848 (method git-fetch)
849 (uri (git-reference
b0e7b699 850 (url "https://github.com/belluzj/fantasque-sans")
5882078e
EB
851 (commit (string-append "v" version))))
852 (file-name (git-file-name name version))
f85cafde 853 (sha256
0d197a63 854 (base32 "17l18488qyl9gdj80r8pcym3gp3jkgsdikwalnrp5rgvwidqx507"))))
f85cafde
EB
855 (build-system gnu-build-system)
856 (native-inputs
857 `(("ttfautohint" ,ttfautohint)
858 ("woff-tools" ,woff-tools)
859 ("fontforge" ,fontforge)
860 ("woff2" ,woff2)
5882078e 861 ("zip" ,zip)))
f85cafde
EB
862 (arguments
863 `(#:tests? #f ;test target intended for visual inspection
864 #:phases (modify-phases %standard-phases
865 (delete 'configure) ;no configuration
0d197a63
TGR
866 (add-before 'build 'support-python@3
867 ;; Rather than use a Python 2 fontforge, replace Python-2-
868 ;; specific code with a passable Python 3 equivalent.
5882078e
EB
869 (lambda _
870 (substitute* "Scripts/fontbuilder.py"
871 (("xrange") "range"))
0d197a63
TGR
872 (substitute* "Scripts/features.py"
873 (("f\\.write\\(fea_code\\)")
874 "f.write(str.encode(fea_code))"))
5882078e 875 #t))
f85cafde
EB
876 (replace 'install
877 ;; 'make install' wants to install to ~/.fonts, install to
5882078e 878 ;; output instead. Install only the "Normal" variant.
f85cafde
EB
879 (lambda* (#:key outputs #:allow-other-keys)
880 (let* ((out (assoc-ref outputs "out"))
881 (font-dir (string-append out "/share/fonts"))
882 (truetype-dir (string-append font-dir "/truetype"))
883 (opentype-dir (string-append font-dir "/opentype"))
884 (webfonts-dir (string-append font-dir "/webfonts")))
5882078e
EB
885 (with-directory-excursion "Variants/Normal"
886 (copy-recursively "OTF" opentype-dir)
887 (for-each (lambda (f) (install-file f truetype-dir))
888 (find-files "." "\\.ttf$"))
889 (copy-recursively "Webfonts" webfonts-dir)
890 #t)))))))
f85cafde
EB
891 (synopsis "Font family with a monospaced variant for programmers")
892 (description
893 "Fantasque Sans Mono is a programming font designed with functionality in
894mind. The font includes a bold version and a good italic version with new
895glyph designs, not just an added slant.")
896 (home-page "https://fontlibrary.org/en/font/fantasque-sans-mono")
897 (license license:silofl1.1)))
73c8d39c 898
899(define-public font-hack
900 (package
901 (name "font-hack")
9296d4b6 902 (version "3.003")
73c8d39c 903 (source (origin
8069f889 904 (method url-fetch/zipbomb)
73c8d39c 905 (uri (string-append
77aa706a
TGR
906 "https://github.com/source-foundry/Hack/releases/download/v"
907 version "/Hack-v" version "-ttf.zip"))
73c8d39c 908 (sha256
909 (base32
9296d4b6 910 "1b4hh8zkrx92m2v2vfkja1napb0192p0j3laqr0m018z3dih89hc"))))
8069f889 911 (build-system font-build-system)
73c8d39c 912 (home-page "https://sourcefoundry.org/hack/")
b4774d87 913 (synopsis "Typeface designed for source code")
73c8d39c 914 (description
b4774d87 915 "Hack is designed to be a workhorse typeface for code. It expands upon
d083a823 916the Bitstream Vera & DejaVu projects, provides over 1,500 glyphs, and includes
b4774d87 917Powerline support.")
77aa706a
TGR
918 (license
919 ;; See https://github.com/source-foundry/Hack/issues/271 for details.
920 (list license:expat ; the Hack modifications to...
921 license:public-domain ; ...the DejaVu modifications to...
922 (license:x11-style ; ...the Bitstream Vera typeface
923 "file://LICENSE.md" "Bitstream Vera License")))))
6e1d7aa9
MB
924
925(define-public font-adobe-source-code-pro
926 (package
927 (name "font-adobe-source-code-pro")
928 (version "2.030R-ro-1.050R-it")
9aee5c45
TGR
929 (source
930 (origin
931 (method git-fetch)
932 (uri (git-reference
b0e7b699 933 (url "https://github.com/adobe-fonts/source-code-pro")
9aee5c45
TGR
934 (commit (regexp-substitute/global
935 ;; The upstream tag uses "/" between the roman and italic
936 ;; versions, so substitute our "-" separator here.
937 #f "R-ro-" version 'pre "R-ro/" 'post))))
938 (file-name (git-file-name name version))
939 (sha256
940 (base32 "0hc5kflr8xzqgdm0c3gbgb1paygznxmnivkylid69ipc7wnicx1n"))))
b41704cd 941 (build-system font-build-system)
6e1d7aa9
MB
942 (home-page "https://github.com/adobe-fonts/source-code-pro")
943 (synopsis
944 "Monospaced font family for user interface and coding environments")
945 (description
946 "Source Code Pro is a set of monospaced OpenType fonts that have been
947designed to work well in user interface environments.")
948 (license license:silofl1.1)))
c3e2a247 949
27e65afc
J
950(define-public font-adobe-source-sans-pro
951 (package
952 (name "font-adobe-source-sans-pro")
953 (version "2.040R-ro-1.090R-it")
ed08e4ec
TGR
954 (source
955 (origin
956 (method git-fetch)
957 (uri (git-reference
b0e7b699 958 (url "https://github.com/adobe-fonts/source-sans-pro")
ed08e4ec
TGR
959 (commit (regexp-substitute/global
960 ;; The upstream tag uses "/" between the roman and italic
961 ;; versions, so substitute our "-" separator here.
962 #f "R-ro-" version 'pre "R-ro/" 'post))))
963 (file-name (git-file-name name version))
964 (sha256
965 (base32 "1lzin2hfwidbvhps7shs201p1bpxy6220xmhhprv9fc8bknd4c45"))))
27e65afc
J
966 (build-system font-build-system)
967 (home-page "https://github.com/adobe-fonts/source-sans-pro")
968 (synopsis
969 "Sans serif font family for user interface environments")
970 (description
971 "Source Sans Pro is a set of OpenType fonts that have been designed to
972work well in user interface (UI) environments.")
973 (license license:silofl1.1)))
974
3cdd2e95
J
975(define-public font-adobe-source-serif-pro
976 (package
977 (name "font-adobe-source-serif-pro")
978 (version "2.007R-ro-1.007R-it")
31f41dbc
TGR
979 (source
980 (origin
981 (method git-fetch)
982 (uri (git-reference
b0e7b699 983 (url "https://github.com/adobe-fonts/source-serif-pro")
31f41dbc
TGR
984 (commit (regexp-substitute/global
985 ;; The upstream tag uses "/" between the roman and italic
986 ;; versions, so substitute our "-" separator here.
987 #f "R-ro-" version 'pre "R-ro/" 'post))))
988 (file-name (git-file-name name version))
989 (sha256
990 (base32 "1vvzfhjpi47m84bzkapylkd5fri8bdm8qng2hiylmmlw0wk4gpas"))))
3cdd2e95
J
991 (build-system font-build-system)
992 (home-page "https://github.com/adobe-fonts/source-serif-pro")
993 (synopsis
994 "Serif typeface to complement Source Sans Pro for setting text")
995 (description
996 "Source Serif Pro is a set of OpenType fonts to complement the Source
997Sans Pro family.")
998 (license license:silofl1.1)))
999
c3e2a247
TR
1000(define-public font-fira-mono
1001 (package
1002 (name "font-fira-mono")
1003 (version "3.206")
1004 (source (origin
1005 (method url-fetch)
1006 (uri (string-append "https://carrois.com/downloads/fira_mono_3_2/"
1007 "FiraMonoFonts"
1008 (string-replace-substring version "." "")
1009 ".zip"))
1010 (sha256
1011 (base32
1012 "1z65x0dw5dq6rs6p9wyfrir50rlh95vgzsxr8jcd40nqazw4jhpi"))))
3a722dde 1013 (build-system font-build-system)
b253e7b9 1014 (home-page "https://mozilla.github.io/Fira/")
c3e2a247
TR
1015 (synopsis "Mozilla's monospace font")
1016 (description "This is the typeface used by Mozilla in Firefox OS.")
1017 (license license:silofl1.1)))
83421fc7 1018
0ee27df0 1019(define-public font-fira-sans
1020 (package
1021 (name "font-fira-sans")
1022 (version "4.202")
1023 (source (origin
c2426dbd
EF
1024 (method git-fetch)
1025 (uri (git-reference
b0e7b699 1026 (url "https://github.com/mozilla/Fira")
c2426dbd
EF
1027 (commit version)))
1028 (file-name (git-file-name name version))
0ee27df0 1029 (sha256
1030 (base32
c2426dbd 1031 "116j26gdj5g1r124b4669372f7490vfjqw7apiwp2ggl0am5xd0w"))))
0ee27df0 1032 (build-system font-build-system)
b253e7b9 1033 (home-page "https://mozilla.github.io/Fira/")
0ee27df0 1034 (synopsis "Mozilla's Fira Sans Font")
1035 (description "This is the typeface used by Mozilla in Firefox OS.")
1036 (license license:silofl1.1)))
1037
760e34b2 1038(define-public font-fira-code
1039 (package
1040 (name "font-fira-code")
76498783 1041 (version "1.206")
760e34b2 1042 (source (origin
1043 (method url-fetch/zipbomb)
1044 (uri (string-append "https://github.com/tonsky/FiraCode/releases/"
1045 "download/" version
1046 "/FiraCode_" version ".zip"))
1047 (sha256
1048 (base32
76498783 1049 "02r1lcp0c9135ps71v66wdvbsrcxwirrp0blqsa1xbjkkq2rwgj3"))))
760e34b2 1050 (build-system font-build-system)
1051 (home-page "https://mozilla.github.io/Fira/")
1052 (synopsis "Monospaced font with programming ligatures")
1053 (description
1054 "Fira Code is an extension of the Fira Mono font containing a set of ligatures
1055for common programming multi-character combinations. This is just a font rendering
1056feature: underlying code remains ASCII-compatible. This helps to read and understand
1057code faster. For some frequent sequences like .. or //, ligatures allow us to
1058correct spacing.")
1059 (license license:silofl1.1)))
1060
83421fc7
JMSG
1061(define-public font-awesome
1062 (package
1063 (name "font-awesome")
848b3749
LF
1064 ;; XXX The build scripts of version 5 are not freely licensed and
1065 ;; so we have to stick with version 4 for now:
1066 ;; <https://bugs.gnu.org/32916>
1067 (version "4.7.0")
83421fc7 1068 (source (origin
6fc9c6f7
EF
1069 (method git-fetch)
1070 (uri (git-reference
b0e7b699 1071 (url "https://github.com/FortAwesome/Font-Awesome")
6fc9c6f7
EF
1072 (commit (string-append "v" version))))
1073 (file-name (git-file-name name version))
83421fc7
JMSG
1074 (sha256
1075 (base32
6fc9c6f7 1076 "0w30y26jp8nvxa3iiw7ayl6rkza1rz62msl9xw3srvxya1c77grc"))))
278c608a 1077 (build-system font-build-system)
6fc9c6f7
EF
1078 (arguments
1079 '(#:phases
1080 (modify-phases %standard-phases
1081 (replace 'install
1082 (lambda* (#:key outputs #:allow-other-keys)
1083 (let* ((out (assoc-ref outputs "out"))
1084 (source (string-append (getcwd) "/fonts"))
1085 (fonts (string-append out "/share/fonts")))
1086 (for-each (lambda (file)
1087 (install-file file (string-append fonts "/truetype")))
1088 (find-files source "\\.(ttf|ttc)$"))
1089 (for-each (lambda (file)
1090 (install-file file (string-append fonts "/opentype")))
1091 (find-files source "\\.(otf|otc)$"))
1092 #t))))))
1093 (home-page "https://fontawesome.com/")
83421fc7
JMSG
1094 (synopsis "Font that contains a rich iconset")
1095 (description
1096 "Font Awesome is a full suite of pictographic icons for easy scalable
1097vector graphics.")
1098 (license license:silofl1.1)))
446e1d51 1099
f2a7ce50 1100(define-public font-tamzen
1101 (package
1102 (name "font-tamzen")
eaf98d92 1103 (version "1.11.5")
f2a7ce50 1104 (source
1105 (origin
1f07550c
EF
1106 (method git-fetch)
1107 (uri (git-reference
b0e7b699 1108 (url "https://github.com/sunaku/tamzen-font")
1f07550c
EF
1109 (commit (string-append "Tamzen-" version))))
1110 (file-name (git-file-name name version))
f2a7ce50 1111 (sha256
eaf98d92 1112 (base32 "00x5fipzqimglvshhqwycdhaqslbvn3rl06jnswhyxfvz16ymj7s"))))
f2a7ce50 1113 (build-system trivial-build-system)
1114 (arguments
1115 `(#:modules ((guix build utils))
1116 #:builder
1117 (begin
1118 (use-modules (guix build utils))
1119
1f07550c
EF
1120 (let* ((out (assoc-ref %outputs "out"))
1121 (font-dir (string-append out "/share/fonts/misc"))
1122 (psf-dir (string-append out "/share/kbd/consolefonts")))
1123 (chdir (assoc-ref %build-inputs "source"))
f2a7ce50 1124 (mkdir-p font-dir)
1125 (mkdir-p psf-dir)
f2a7ce50 1126 (for-each (lambda (pcf)
1127 (install-file pcf font-dir))
1f07550c 1128 (find-files "pcf" "\\.pcf$"))
f2a7ce50 1129 (for-each (lambda (psf)
1130 (install-file psf psf-dir))
1f07550c 1131 (find-files "psf" "\\.psf$"))
f2a7ce50 1132 #t))))
f2a7ce50 1133 (home-page "https://github.com/sunaku/tamzen-font")
1134 (synopsis "Monospaced bitmap font for console and X11")
1135 (description
e16b44a2 1136 "Tamzen is a fork of the @code{Tamsyn} font. It is programmatically forked
f2a7ce50 1137from @code{Tamsyn} version 1.11, backporting glyphs from older versions while
1138deleting deliberately empty glyphs (which are marked as unimplemented) to
1139allow secondary/fallback fonts to provide real glyphs at those codepoints.
1140
1141The @code{TamzenForPowerline} fonts provide additional @code{Powerline} symbols,
e16b44a2 1142which are programmatically injected with @code{bitmap-font-patcher} and
f2a7ce50 1143later hand-tweaked with the gbdfed(1) editor:
1144
1145@enumerate
1146@item all icons are expanded to occupy the maximum available space
1147@item the branch of the fork icon ( U+E0A0) was made larger than the trunk
1148@item for the newline icon ( U+E0A1), the @emph{N} was made larger at the bottom
1149@item the keyhole in the padlock icon ( U+E0A2) was replaced with @emph{//} lines.
1150@end enumerate\n")
1151 (license (license:non-copyleft "file://LICENSE"))))
1152
446e1d51
AG
1153(define-public font-comic-neue
1154 (package
b963d8c2 1155 (name "font-comic-neue")
b21d1735 1156 (version "2.5")
b963d8c2
AG
1157 (source (origin
1158 (method url-fetch/zipbomb)
1159 (uri (string-append
1160 "http://www.comicneue.com/comic-neue-" version ".zip"))
1161 (sha256
1162 (base32
b21d1735 1163 "1ng0m0zs7qr91qy5ff0l01l27npr76961c6zfkxnhxf68zpwz5k4"))))
b963d8c2
AG
1164 (build-system font-build-system)
1165 (arguments
1166 `(#:phases
1167 (modify-phases %standard-phases
44636f57
AI
1168 ;; Delete Mac OS X specific files. If not deleted, these cause
1169 ;; several hidden files to be installed.
1170 (add-before 'install 'delete-macosx-files
1171 (lambda _
1172 (delete-file-recursively "__MACOSX")
1173 #t))
532f09df
AG
1174 (add-after 'install 'install-conf
1175 (lambda* (#:key outputs #:allow-other-keys)
1176 (let ((conf-dir (string-append (assoc-ref outputs "out")
1177 "/share/fontconfig/conf.avail")))
1178 (mkdir-p conf-dir)
1179 (call-with-output-file
1180 (string-append conf-dir "/30-comic-neue.conf")
1181 (lambda (port)
1182 (format port "<?xml version=\"1.0\"?>
1183<!DOCTYPE fontconfig SYSTEM \"fonts.dtd\">
1184<fontconfig>
1185 <!-- If Comic Sans is missing, use Comic Neue instead. -->
1186 <alias>
1187 <family>Comic Sans MS</family>
1188 <prefer>
1189 <family>Comic Neue</family>
1190 </prefer>
1191 </alias>
1192</fontconfig>\n"))))
b963d8c2
AG
1193 #t)))))
1194 (home-page "http://www.comicneue.com/")
1195 (synopsis "Font that fixes the shortcomings of Comic Sans")
1196 (description
1197 "Comic Neue is a font that attempts to create a respectable casual
446e1d51 1198typeface, by mimicking Comic Sans while fixing its most obvious shortcomings.")
b963d8c2 1199 (license license:silofl1.1)))
de191caf
AG
1200
1201(define-public font-iosevka
1202 (package
208abeca 1203 (name "font-iosevka")
a4893b38 1204 ;; When updating, also update the hash of the Iosevka variant(s) below.
09502e02 1205 (version "3.2.2")
785747a9
TGR
1206 (source
1207 (origin
1208 (method url-fetch/zipbomb)
1209 (uri (string-append "https://github.com/be5invis/Iosevka"
1210 "/releases/download/v" version
1211 "/ttc-iosevka-" version ".zip"))
1212 (sha256
09502e02 1213 (base32 "16iqr4zjlshrgzcs3sjp3gz777gpi069r7p7scqi6vap9acqjvph"))))
4a9140b1 1214 (build-system font-build-system)
208abeca
AG
1215 (home-page "https://be5invis.github.io/Iosevka/")
1216 (synopsis "Coders' typeface, built from code")
1217 (description
1218 "Iosevka is a slender monospace sans-serif or slab-serif typeface inspired
de191caf
AG
1219by Pragmata Pro, M+, and PF DIN Mono, designed to be the ideal font for
1220programming. Iosevka is completely generated from its source code.")
208abeca
AG
1221 (license (list license:silofl1.1 ; build artifacts (i.e. the fonts)
1222 license:bsd-3)))) ; supporting code
49dbae54 1223
c948cf90
TGR
1224(define-public font-iosevka-slab
1225 (package
1226 (inherit font-iosevka)
1227 (name "font-iosevka-slab")
1228 (version (package-version font-iosevka))
1229 (source
1230 (origin
1231 (method url-fetch/zipbomb)
1232 (uri (string-append "https://github.com/be5invis/Iosevka"
1233 "/releases/download/v" version
1234 "/ttc-iosevka-slab-" version ".zip"))
1235 (sha256
09502e02 1236 (base32 "0knsb1b0wqv50r7f9128xvq344x7hnvgm7kh1dxaahlck910z62x"))))))
c948cf90 1237
0673d55d
JS
1238(define-public font-iosevka-term
1239 (package
1240 (inherit font-iosevka)
1241 (name "font-iosevka-term")
1242 (version (package-version font-iosevka))
1243 (source
1244 (origin
1245 (method url-fetch/zipbomb)
1246 (uri (string-append "https://github.com/be5invis/Iosevka"
1247 "/releases/download/v" version
f3396e78 1248 "/ttf-iosevka-term-" version ".zip"))
0673d55d
JS
1249 (sha256
1250 (base32
09502e02 1251 "0nyq6iq9xjn9nqwh1fh4v0pvblycmm8ssw7y3vcjv1ymbkdqfqhr"))))
0673d55d
JS
1252 (arguments
1253 `(#:phases
1254 (modify-phases %standard-phases
1255 (add-before 'install 'make-files-writable
1256 (lambda _
1257 (for-each make-file-writable (find-files "." ".*"))
1258 #t)))))))
1259
0161862d
JS
1260(define-public font-iosevka-term-slab
1261 (package
1262 (inherit font-iosevka)
1263 (name "font-iosevka-term-slab")
1264 (version (package-version font-iosevka))
1265 (source
1266 (origin
1267 (method url-fetch/zipbomb)
1268 (uri (string-append "https://github.com/be5invis/Iosevka"
1269 "/releases/download/v" version
f3396e78 1270 "/ttf-iosevka-term-slab-" version ".zip"))
0161862d
JS
1271 (sha256
1272 (base32
09502e02 1273 "1blhhbnk2hyaxjrz88icd2gwyniq5idxd0h6rqx6vjcack6094z0"))))
0161862d
JS
1274 (arguments
1275 `(#:phases
1276 (modify-phases %standard-phases
1277 (add-before 'install 'make-files-writable
1278 (lambda _
1279 (for-each make-file-writable (find-files "." ".*"))
1280 #t)))))))
1281
7fd5f901
SE
1282(define-public font-iosevka-aile
1283 (package
1284 (inherit font-iosevka)
1285 (name "font-iosevka-aile")
1286 (version (package-version font-iosevka))
1287 (source
1288 (origin
1289 (method url-fetch/zipbomb)
1290 (uri (string-append "https://github.com/be5invis/Iosevka"
1291 "/releases/download/v" version
1292 "/ttc-iosevka-aile-" version ".zip"))
1293 (sha256
09502e02 1294 (base32 "1zg0gn4gcf3w8n8jzf93y9ninyn3bci31c5zss3mxzz1lzfm8zd5"))))))
7fd5f901
SE
1295
1296(define-public font-iosevka-etoile
1297 (package
1298 (inherit font-iosevka)
1299 (name "font-iosevka-etoile")
1300 (version (package-version font-iosevka))
1301 (source
1302 (origin
1303 (method url-fetch/zipbomb)
1304 (uri (string-append "https://github.com/be5invis/Iosevka"
1305 "/releases/download/v" version
1306 "/ttc-iosevka-etoile-" version ".zip"))
1307 (sha256
09502e02 1308 (base32 "1061yaf35f19dcym4k552q1yzbsbc98r3glm9frslirra9f33sl2"))))))
7fd5f901
SE
1309
1310(define-public font-iosevka-sparkle
1311 (package
1312 (inherit font-iosevka)
1313 (name "font-iosevka-sparkle")
1314 (version (package-version font-iosevka))
1315 (source
1316 (origin
1317 (method url-fetch/zipbomb)
1318 (uri (string-append "https://github.com/be5invis/Iosevka"
1319 "/releases/download/v" version
1320 "/ttc-iosevka-sparkle-" version ".zip"))
1321 (sha256
09502e02 1322 (base32 "1c1s9j6qgyhn4md0kql0x2201nbs5jx3612jf8q020gm484xqq03"))))))
7fd5f901 1323
839dba3a
ZZ
1324(define-public font-sarasa-gothic
1325 (package
1326 (name "font-sarasa-gothic")
94e72b75 1327 (version "0.12.7")
839dba3a
ZZ
1328 (source
1329 (origin
1330 (method url-fetch)
1331 (uri (string-append "https://github.com/be5invis/Sarasa-Gothic"
1332 "/releases/download/v" version
1333 "/sarasa-gothic-ttc-" version ".7z"))
1334 (sha256
94e72b75 1335 (base32 "09v65k00g8m953s6riz9xjzb2jgr6v5pdhcllalzzl7c1cn2xl3k"))))
839dba3a
ZZ
1336 (build-system font-build-system)
1337 (arguments
1338 `(#:phases (modify-phases %standard-phases
1339 (replace 'unpack
1340 (lambda* (#:key source #:allow-other-keys)
1341 (mkdir "source")
1342 (chdir "source")
1343 (invoke "7z" "x" source))))))
1344 (native-inputs `(("p7zip" ,p7zip)))
1345 (home-page "https://github.com/be5invis/Sarasa-Gothic")
1346 (license license:silofl1.1)
1347 (synopsis "Sarasa Gothic / 更纱黑体 / 更紗黑體 / 更紗ゴシック / 사라사 고딕")
1348 (description
1349 "Sarasa Gothic is a programming font based on Iosevka and Source Han Sans,
1350most CJK characters are same height, and double width as ASCII characters.")))
1351
49dbae54 1352(define-public font-go
406c46e2 1353 (let ((commit "f03a046406d4d7fbfd4ed29f554da8f6114049fc")
49dbae54
AG
1354 (revision "1"))
1355 (package
b6726480
AG
1356 (name "font-go")
1357 (version (string-append "20170330-" revision "." (string-take commit 7)))
1358 (source (origin
1359 (file-name (string-append "go-image-" version "-checkout"))
1360 (method git-fetch)
1361 (uri (git-reference
1362 (url "https://go.googlesource.com/image")
1363 (commit commit)))
1364 (sha256
1365 (base32
1366 "1aq6mnjayks55gd9ahavk6jfydlq5lm4xm0xk4pd5sqa74p5p74d"))))
1367 (build-system font-build-system)
1368 (arguments
1369 `(#:phases
1370 (modify-phases %standard-phases
1371 (add-before 'install 'chdir
1372 (lambda _
1373 (chdir "font/gofont/ttfs")
1374 #t)))))
1375 (home-page "https://blog.golang.org/go-fonts")
1376 (synopsis "The Go font family")
1377 (description
1378 "The Go font family is a set of WGL4 TrueType fonts from the Bigelow &
49dbae54
AG
1379Holmes type foundry, released under the same license as the Go programming
1380language. It includes a set of proportional, sans-serif fonts, and a set of
1381monospace, slab-serif fonts.")
87f057c4 1382 (license license:bsd-3))))
824e5fe6
JMSG
1383
1384(define-public font-google-material-design-icons
1385 (package
99e9d598
AI
1386 (name "font-google-material-design-icons")
1387 (version "3.0.1")
1388 (source (origin
1e90e4b0
EF
1389 (method git-fetch)
1390 (uri (git-reference
b0e7b699 1391 (url "https://github.com/google/material-design-icons")
1e90e4b0
EF
1392 (commit version)))
1393 (file-name (git-file-name name version))
99e9d598
AI
1394 (sha256
1395 (base32
1e90e4b0 1396 "17q5brcqyyc8gbjdgpv38p89s60cwxjlwy2ljnrvas5cj0s62np0"))))
99e9d598 1397 (build-system font-build-system)
4fed9452 1398 (home-page "https://google.github.io/material-design-icons")
99e9d598
AI
1399 (synopsis "Icon font of Google Material Design icons")
1400 (description
1401 "Material design system icons are simple, modern, friendly, and sometimes
824e5fe6
JMSG
1402quirky. Each icon is created using our design guidelines to depict in simple
1403and minimal forms the universal concepts used commonly throughout a UI.
1404Ensuring readability and clarity at both large and small sizes, these icons
1405have been optimized for beautiful display on all common platforms and display
1406resolutions.")
99e9d598 1407 (license license:asl2.0)))
6bce5955 1408
30acf2f9 1409(define-public font-opendyslexic
abd8825f 1410 (package
30acf2f9
EF
1411 (name "font-opendyslexic")
1412 (version "0.91.12")
abd8825f 1413 (source
30acf2f9
EF
1414 (origin
1415 (method url-fetch/zipbomb)
1416 (uri (string-append "https://github.com/antijingoist/opendyslexic/"
1417 "releases/download/v" version
1418 "/opendyslexic-0.910.12-rc2-2019.10.17.zip"))
1419 (sha256
1420 (base32
1421 "11ml7v4iyf3hr0fbnkwz8afb8vi58wbcfnmn4gyvrwh9jk5pybdr"))))
abd8825f 1422 (build-system font-build-system)
30acf2f9
EF
1423 (native-inputs `(("unzip" ,unzip)))
1424 (home-page "https://opendyslexic.org/")
abd8825f 1425 (synopsis "Font for dyslexics and high readability")
1426 (description "OpenDyslexic is a font designed to help readability for some
1427of the symptoms of dyslexia. Letters have heavy weighted bottoms to provide
1428an indication of orientation to make it more difficult to confuse with other
1429similar letters. Consistently weighted bottoms can also help reinforce the
1430line of text. The unique shapes of each letter can help prevent flipping and
1431swapping. The italic style for OpenDyslexic has been crafted to be used for
1432emphasis while still being readable.")
30acf2f9
EF
1433 (license license:silofl1.1)))
1434
1435(define-public font-open-dyslexic
1436 (deprecated-package "font-open-dyslexic" font-opendyslexic))
27a10775 1437
1438(define-public font-dosis
1439 (package
1440 (name "font-dosis")
1441 (version "1.7")
1442 (source
1443 (origin
6aa4f09e 1444 (method url-fetch/zipbomb)
e48ae0bc
TGR
1445 (uri (string-append "https://web.archive.org/web/20180228233737/"
1446 "https://www.impallari.com/media/releases/dosis-"
27a10775 1447 "v" version ".zip"))
1448 (sha256
e48ae0bc 1449 (base32 "1qhci68f68mf87jd69vjf9qjq3wydgw1q7ivn3amjb65ls1s0c4s"))))
6aa4f09e 1450 (build-system font-build-system)
e48ae0bc
TGR
1451 (home-page (string-append "https://web.archive.org/web/20180228233737/"
1452 "https://www.impallari.com/dosis"))
27a10775 1453 (synopsis "Very simple, rounded, sans serif family")
1454 (description
1455 "Dosis is a very simple, rounded, sans serif family.
1456The lighter weights are minimalist. The bolder weights have more personality.
1457The medium weight is nice and balanced. The overall result is a family
1458that's clean and modern, and can express a wide range of voices & feelings.
1459It comes in 7 incremental weights:
1460ExtraLight, Light, Book, Medium, Semibold, Bold & ExtraBold")
1461 (license license:silofl1.1)))
f8602046 1462
733d66a5 1463(define-public font-culmus
f8602046 1464 (package
733d66a5 1465 (name "font-culmus")
cebec8bd 1466 (version "0.133")
f8602046 1467 (source
733d66a5
AI
1468 (origin
1469 (method url-fetch)
1470 (uri (string-append "https://sourceforge.net/projects/"
1471 "culmus/files/culmus/" version "/culmus-src-"
1472 version ".tar.gz"))
1473 (sha256
1474 (base32
cebec8bd 1475 "02akysgsqhi15cck54xcacm16q5raf4l7shgb8fnj7xr3c1pbfyp"))))
0328c514 1476 (build-system font-build-system)
f8602046 1477 (arguments
0328c514 1478 `(#:phases
f8602046 1479 (modify-phases %standard-phases
0328c514 1480 (add-before 'install 'build
f8602046
EF
1481 (lambda _
1482 (let ((compile
1483 (lambda (name ext)
0328c514
AI
1484 (invoke
1485 "fontforge" "-lang=ff"
1486 "-c" (string-append "Open('" name "');"
1487 "Generate('"
1488 (basename name "sfd") ext
1489 "')")))))
f8602046 1490 ;; This part based on the fonts shipped in the non-source package.
0328c514
AI
1491 (for-each (lambda (name)
1492 (compile name "ttf"))
1493 (find-files "." "^[^Nachlieli].*\\.sfd$"))
1494 (for-each (lambda (name)
1495 (compile name "otf"))
1496 (find-files "." "^Nachlieli.*\\.sfd$"))
f8602046
EF
1497 #t))))))
1498 (native-inputs
1499 `(("fontforge" ,fontforge)))
1500 (home-page "http://culmus.sourceforge.net/")
1501 (synopsis "TrueType Hebrew Fonts for X11")
1502 (description "14 Hebrew trivial families. Contain ASCII glyphs from various
1503sources. Those families provide a basic set of a serif (Frank Ruehl), sans
1504serif (Nachlieli) and monospaced (Miriam Mono) trivials. Also included Miriam,
1505Drugulin, Aharoni, David, Hadasim etc. Cantillation marks support is
1506available in Keter YG.")
1507 (license license:gpl2))) ; consult the LICENSE file included
4769ef00
AI
1508
1509(define-public font-lohit
1510 (package
1511 (name "font-lohit")
1512 (version "20140220")
1513 (source
1514 (origin
1515 (method url-fetch)
1516 (uri (string-append "https://releases.pagure.org/lohit/lohit-ttf-"
1517 version ".tar.gz"))
1518 (sha256
1519 (base32
1520 "1rmgr445hw1n851ywy28csfvswz1i6hnc8mzp88qw2xk9j4dn32d"))))
1521 (build-system font-build-system)
1522 (home-page "https://pagure.io/lohit")
1523 (synopsis "Lohit TrueType Indic fonts")
1524 (description "Lohit is a font family designed to cover Indic scripts.
1525Lohit supports the Assamese, Bengali, Devanagari (Hindi, Kashmiri, Konkani,
1526Maithili, Marathi, Nepali, Sindhi, Santali, Bodo, Dogri languages), Gujarati,
1527Kannada, Malayalam, Manipuri, Oriya, Punjabi, Tamil and Telugu scripts.")
1528 (license license:silofl1.1)))
f00d66b1
LC
1529
1530(define-public font-blackfoundry-inria
1531 (package
1532 (name "font-blackfoundry-inria")
1533 (version "1.200")
1534 (home-page "https://github.com/BlackFoundry/InriaFonts")
1535 (source (origin
1536 (method git-fetch)
1537 (uri (git-reference
1538 (url home-page)
1539 (commit (string-append "v" version))))
1540 (sha256
1541 (base32
1542 "06775y99lyh6hj5hzvrx56iybdck8a8xfqkipqd5c4cldg0a9hh8"))
1543 (file-name (string-append name "-" version "-checkout"))))
1544 ;; XXX: There are .ufo directories (the "source") so in theory we should
1545 ;; be able to rebuild TTF and OTF files with FontForge. Unfortunately a
1546 ;; command like:
1547 ;;
1548 ;; fontforge -lang=ff -c "Open('InriaSans-Regular.ufo'); Generate('foo.ttf');"
1549 ;;
1550 ;; segfaults in '_UFOLoadGlyph', which calls out to libpython. :-/
1551 ;; In the meantime we ship the precompiled OTF and TTF files.
1552 (build-system font-build-system)
1553 (synopsis "Inria Sans and Inria Serif type family")
1554 (description
1555 "Inria Sans and Inria Serif are the two members of a type family designed
1556for Inria, a public research institute in computer science and mathematics.")
1557 (license license:silofl1.1)))
1d641734
LC
1558
1559(define-public font-sil-gentium
1560 (package
1561 (name "font-sil-gentium")
1562 (version "5.000")
1563 (source (origin
1564 (method url-fetch)
1565 (uri (string-append
1566 "https://software.sil.org/downloads/r/gentium/GentiumPlus-"
1567 version ".zip"))
1568 (sha256
1569 (base32
1570 "0m7189870hha217n1vgpmf89mwggrxkh679ffi1lxpnjggqi2n9k"))))
1571 ;; Note: The zip file provides TTF files only, but the developer release,
1572 ;; which contains additional files, has a 'SOURCES.txt' file that says
1573 ;; that "the primary source files for the fonts are the fonts themselves".
1574 ;; Thus it looks like the TTF can be considered source.
1575 (build-system font-build-system)
1576 (synopsis "Serif font for the Cyrillic, Greek, and Latin alphabets")
1577 (description
1578 "Gentium is a typeface family designed to enable the diverse ethnic
1579groups around the world who use the Latin, Cyrillic and Greek scripts to
1580produce readable, high-quality publications. The font comes with regular and
1581italics shapes. This package provides only TrueType files (TTF).")
1582 (home-page "https://software.sil.org/gentium/")
1583 (license license:silofl1.1)))
46e78707 1584
4b360985
NG
1585(define-public font-sil-andika
1586 (package
1587 (name "font-sil-andika")
1588 (version "5.000")
1589 (source (origin
1590 (method url-fetch)
1591 (uri (string-append
1592 "https://software.sil.org/downloads/r/andika/Andika-"
1593 version ".zip"))
1594 (sha256
1595 (base32
1596 "01zm7p32gxfwmv7h3cfj2vx59846w2y6rxqy67grn2dyjh8pljv0"))))
1597 ;; As for Gentium (see above), the TTF files are considered source.
1598 (build-system font-build-system)
1599 (synopsis "Sans serif font designed especially for literacy use")
1600 (description
1601 "Andika SIL is a sans serif, Unicode-compliant font designed especially
1602for literacy use, taking into account the needs of beginning readers. The
1603focus is on clear, easy-to-perceive letterforms that will not be readily
1604confused with one another. This package provides only TrueType files (TTF).")
1605 (home-page "https://software.sil.org/andika/")
1606 (license license:silofl1.1)))
1607
46e78707
LC
1608(define-public font-sil-charis
1609 (package
1610 (name "font-sil-charis")
1611 (version "5.000")
1612 (source (origin
1613 (method url-fetch)
1614 (uri (string-append
1615 "https://software.sil.org/downloads/r/charis/CharisSIL-"
1616 version ".zip"))
1617 (sha256
1618 (base32
1619 "1zcvw37f1a7gkml3yfm6hxh93844llm7xj4w52600qq3ndrm8gjy"))))
1620 ;; As for Gentium (see above), the TTF files are considered source.
1621 (build-system font-build-system)
1622 (synopsis "Serif font for the Cyrillic and Latin alphabets")
1623 (description
1624 "Charis SIL is a Unicode-based font family that supports the wide range
1625of languages that use the Latin and Cyrillic scripts. It is specially
1626designed to make long texts pleasant and easy to read, even in less than ideal
1627reproduction and display environments. This package provides only TrueType
1628files (TTF).")
1629 (home-page "https://software.sil.org/charis/")
1630 (license license:silofl1.1)))
3c5e1364
GH
1631
1632(define-public font-mononoki
1633 (package
1634 (name "font-mononoki")
1635 (version "1.2")
1636 (source (origin
1637 (method git-fetch)
1638 (uri (git-reference
1639 (url "https://github.com/madmalik/mononoki/")
1640 (commit version)))
1641 (sha256
1642 (base32
1643 "1rkzyxn30rn8qv2h2xz324j7q15hzg2lci8790a7cdl1dfgic4xi"))
1644 (file-name (git-file-name name version))))
1645 (build-system font-build-system)
1646 (synopsis "Font for programming and code review")
1647 (description
1648 "Mononoki is a typeface by Matthias Tellen, created to enhance code
1649formatting.")
1650 (home-page "https://madmalik.github.io/mononoki/")
1651 (license license:silofl1.1)))
245aa0e3
J
1652
1653(define-public font-public-sans
1654 (package
1655 (name "font-public-sans")
6677f33d
TGR
1656 (version "1.008")
1657 (source
1658 (origin
1659 (method git-fetch)
1660 (uri (git-reference
b0e7b699 1661 (url "https://github.com/uswds/public-sans")
6677f33d
TGR
1662 (commit (string-append "v" version))))
1663 (file-name (git-file-name name version))
1664 (sha256
1665 (base32 "1qhyxbjv1rnydfpqzd18fbiyz75p4sabphy8yj07hyq0hidp5xsf"))))
245aa0e3
J
1666 (build-system font-build-system)
1667 (home-page "https://public-sans.digital.gov/")
4c89dc35 1668 (synopsis "Neutral typeface for interfaces, text, and headings")
245aa0e3 1669 (description
4c89dc35
LC
1670 "Public Sans is a strong, neutral, sans-serif typeface for text or
1671display based on Libre Franklin.")
245aa0e3 1672 (license license:silofl1.1)))
50867421
Z
1673
1674(define-public font-hermit
1675 (package
1676 (name "font-hermit")
1677 (version "2.0")
1678 (source (origin
1731b297 1679 (method url-fetch/tarbomb)
50867421
Z
1680 (uri (string-append "https://pcaro.es/d/otf-hermit-" version
1681 ".tar.gz"))
1682 (sha256
1683 (base32
1684 "09rmy3sbf1j1hr8zidighjgqc8kp0wsra115y27vrnlf10ml6jy0"))))
1685 (build-system font-build-system)
1686 (arguments
1731b297 1687 `(#:tests? #f))
50867421
Z
1688 (home-page "https://pcaro.es/p/hermit/")
1689 (synopsis "Monospace font")
1690 (description
1691 "Hermit is a monospace font designed to be clear, pragmatic and very
1692readable. Its creation has been focused on programming. Every glyph was
1693carefully planned and calculated, according to defined principles and rules.
1694For this reason, Hermit is coherent and regular.
1695
1696Symbols stand out from common text. Dots and commas are easily seen, and
1697operators are clear even when not surrounded by spaces. Similar characters
1698have been designed to be very distinguishable from each other.")
1699 (license license:silofl1.1)))
600f680d
AT
1700
1701(define-public font-dseg
1702 (package
1703 (name "font-dseg")
1704 (version "0.45")
1705 (source
1706 (origin
1707 (method url-fetch/zipbomb)
1708 (uri
1709 (string-append "https://github.com/keshikan/DSEG/"
1710 "releases/download/v" version
1711 "/fonts-DSEG_v"
1712 (string-concatenate (string-split version #\.))
1713 ".zip"))
1714 (sha256
1715 (base32
1716 "0v8sghh4vl286faf8pvi74znz07pyf0qii8z4wjllisqwc35sx72"))))
1717 (build-system font-build-system)
1718 (arguments
1719 `(#:phases
1720 (modify-phases %standard-phases
1721 (replace 'install
1722 (lambda* (#:key outputs #:allow-other-keys)
1723 (let* ((out (assoc-ref outputs "out"))
1724 (font-dir (string-append out "/share/fonts"))
1725 (truetype-dir (string-append font-dir "/truetype")))
1726 (with-directory-excursion
1727 (string-append "fonts-DSEG_v"
1728 (apply string-append (string-split ,version
1729 #\.)))
1730 (for-each (lambda (f) (install-file f truetype-dir))
1731 (find-files "." "\\.ttf$"))
1732 #t)))))))
1733 (home-page "https://www.keshikan.net/fonts-e.html")
1734 (synopsis "DSEG: 7-segment and 14-segment fonts")
1735 (description
1736 "DSEG is a font family that imitates seven- and fourteen-segment LCD
1737displays (7SEG, 14SEG). DSEG includes the roman alphabet and symbol glyphs.
1738This package provides the TrueType fonts.")
1739 (license license:silofl1.1)))
200514cd
DC
1740
1741(define-public font-jetbrains-mono
1742 (package
1743 (name "font-jetbrains-mono")
dc4adbf6 1744 (version "2.001")
200514cd
DC
1745 (source
1746 (origin
1747 (method url-fetch)
1748 (uri
1749 (string-append "https://download.jetbrains.com/fonts/"
1750 "JetBrainsMono-" version ".zip"))
1751 (sha256
dc4adbf6 1752 (base32 "0r3dk3kn536rik4mvpcjin9mwmifl3v8mawvb4a5l59pww0vcxzq"))))
200514cd 1753 (build-system font-build-system)
dc4adbf6
MR
1754 (arguments
1755 `(#:phases
1756 (modify-phases %standard-phases
1757 (replace 'install-license-files
1758 (lambda* (#:key outputs #:allow-other-keys)
1759 (let* ((out (assoc-ref outputs "out"))
1760 (doc (string-append out "/share/doc/" ,name "-" ,version)))
1761 (install-file "../LICENSE" doc)
1762 #t))))))
200514cd
DC
1763 (home-page "https://www.jetbrains.com/lp/mono/")
1764 (synopsis "Mono typeface for developers")
1765 (description
1766 "JetBrains Mono is a font family dedicated to developers. JetBrains
1767Mono’s typeface forms are simple and free from unnecessary details. Rendered
1768in small sizes, the text looks crisper.")
1769 (license license:asl2.0)))
76a8dc3e
AB
1770
1771(define-public font-vazir
1772 (package
1773 (name "font-vazir")
1774 (version "22.1.0")
1775 (source
1776 (origin
1777 (method url-fetch/zipbomb)
1778 (uri
1779 (string-append "https://github.com/rastikerdar/vazir-font/"
1780 "releases/download/v" version
1781 "/vazir-font-v" version ".zip"))
1782 (sha256
1783 (base32
1784 "0w3gwb5q33x5llw7cfs8qhaxr4ssg6rsx4b9day3993zn24xq031"))))
1785 (build-system font-build-system)
1786 (home-page "https://rastikerdar.github.io/vazir-font/")
1787 (synopsis "Vazir Persian typeface")
1788 (description
1789 "Vazir is a beautiful and elegant Persian typeface originally based on
1790DejaVu, and comes in six variants: Thin, Light, Normal, Medium, Bold, and
1791Black. This package provides four versions of Vazir:
1792
1793@itemize
1794@item @code{Vazir}: The main version; includes Latin glyphs from Roboto.
1795@item @code{Vazir-FD}: Like @code{Vazir}, but (always) uses Farsi digit glyphs
1796instead of Latin ones.
1797@item @code{Vazir-WOL}: Like @code{Vazir}, but without Roboto's Latin glyphs.
1798@item @code{Vazir-FD-WOL}: Combination of @code{Vazir-FD} and @code{Vazir-WOL}:
1799always uses Farsi digits, and does not include Latin glyphs from Roboto.
1800@end itemize\n")
1801 (license
1802 ;; See https://github.com/rastikerdar/vazir-font/blob/master/LICENSE for
1803 ;; details.
1804 (list license:public-domain ; the Vazir modifications to DejaVu
1805 ; and the DejaVu modifications to...
1806 (license:x11-style ; ...the Bitstream Vera typeface
1807 "file://LICENSE" "Bitstream Vera License")
1808 license:asl2.0)))) ; Latin glyphs from Roboto
ed248424
AI
1809
1810(define-public font-meera-inimai
1811 (package
1812 (name "font-meera-inimai")
1813 (version "2.0")
1814 (source
1815 (origin
1816 (method git-fetch)
1817 (uri (git-reference
1818 (url "https://gitlab.com/smc/meera-inimai")
1819 (commit "0f39cdd7dbf1b6d1bed7df85834d33789dce20a7")))
1820 (file-name (git-file-name name version))
1821 (sha256
1822 (base32
1823 "1x5mhrpx24imh0r4l83mkaiszxgwi1q4ppyyvq63h3ddwk20cwdg"))))
1824 (build-system gnu-build-system)
1825 (native-inputs
1826 `(("fontforge" ,fontforge)
1827 ("harfbuzz" ,harfbuzz "bin")
1828 ("python" ,python-minimal)
1829 ("python-fonttools" ,python-fonttools)
1830 ("python-google-brotli" ,python-google-brotli)))
1831 (arguments
1832 `(#:make-flags (list "PY=python3"
1833 (string-append "DESTDIR=" %output)
1834 "fontpath=/share/fonts/truetype")
1835 #:test-target "test"
1836 #:phases
1837 (modify-phases %standard-phases
1838 (delete 'configure))))
1839 (home-page "https://gitlab.com/smc/meera-inimai")
1840 (synopsis "Meera Inimai Tamil font")
1841 (description "Meera Inimai is a Unicode font for the Tamil Script. Meera
1842Inimai is a san-serif typeface. It is best used as a screen font for body
1843text. It is also useful for body text of printed pamphlets or single page
1844designs. Meera Inimai can be thought of as similar to Helvetica and its
1845variation Arial. Tamil characters are inherently vertically-elliptical. The
1846orthography of Roman glyphs of Meera Inimai are also based on this
1847characteristic so that they sit smoothly with the Tamil glyphs.")
1848 (license license:silofl1.1)))
3c102716
JL
1849
1850(define-public font-ipa-mj-mincho
1851 (package
1852 (name "font-ipa-mj-mincho")
1853 (version "006.01")
1854 (source (origin
1855 (method url-fetch/zipbomb)
1856 (uri (string-append "https://mojikiban.ipa.go.jp/OSCDL/IPAmjMincho"
1857 "/ipamjm" (string-join (string-split version #\.) "")
1858 ".zip"))
1859 (sha256
1860 (base32
1861 "0s2vs9p7vd7ajnn6c2icli069sjwi4d45a39fczqpwwn507lwj9m"))))
1862 (build-system font-build-system)
1863 (arguments
1864 `(#:phases
1865 (modify-phases %standard-phases
1866 (add-after 'install 'install-doc
1867 (lambda* (#:key outputs #:allow-other-keys)
1868 (let ((doc-dir (string-append (assoc-ref outputs "out")
1869 "/share/doc/font-ipa-mj-mincho")))
1870 (mkdir-p doc-dir)
1871 (copy-file "Readme.txt" (string-append doc-dir "/README"))
1872 (copy-file "IPA_Font_License_Agreement_v1.0.txt"
1873 (string-append doc-dir "/LICENSE"))
1874 #t))))))
1875 (home-page "https://mojikiban.ipa.go.jp/1300.html")
1876 (synopsis "Japanese font from the Information-technology Promotion Agency")
1877 (description "MJM Mincho is a font that aims at, for example, allowing you
1878to write people's name, or for formal business situations where it is necessary
1879to have a detailed and proper character style.")
1880 (license license:ipa)))
5dca64fc
JL
1881
1882(define-public font-fontna-yasashisa-antique
1883 (package
1884 (name "font-fontna-yasashisa-antique")
1885 (version "0")
1886 (source (origin
1887 (method url-fetch)
1888 (uri (string-append "http://flop.sakura.ne.jp/font/fontna-op/"
1889 "YasashisaAntiqueFont.zip"))
1890 (sha256
1891 (base32
1892 "1hl2qk3lzmh9h2vv5647vhlslkn3vqbq9rqgp4wzybajafx8c6nj"))))
1893 (build-system font-build-system)
1894 (arguments
1895 `(#:phases
1896 (modify-phases %standard-phases
1897 ;; encoding issues cause many phases to fail
1898 (add-after 'unpack 'fix-encoding
1899 (lambda _
1900 ;; This directory, TrueType(サポート外), is not properly encoded,
1901 ;; which makes rename-file fail. Instead, use shell globbing to
1902 ;; select and rename the directory.
1903 (invoke "sh" "-c" "mv TrueType* TrueType")
1904 #t)))))
1905 (native-inputs
1906 `(("bash" ,bash-minimal)
1907 ("coreutils" ,coreutils)))
1908 (home-page "http://www.fontna.com/blog/1122/")
1909 (synopsis "Mix font of gothic kanji and minchou kana")
1910 (description "Antique is a font that is popular to write manga bubbles,
1911dictionary headwords and picture books. This font reduces the thickness
1912differences in characters compared to other antique fonts.")
1913 (license (list license:ipa
1914 (license:non-copyleft "mplus-TESTFLIGHT-057/LICENSE_E")))))
3f3c61b8
JL
1915
1916(define-public font-mplus-testflight
1917 (package
1918 (name "font-mplus-testflight")
1919 (version "063a")
1920 (source (origin
1921 (method url-fetch)
1922 (uri (string-append "https://osdn.net/frs/redir.php?"
1923 "m=gigenet&f=mplus-fonts%2F62344%2Fmplus-TESTFLIGHT-"
1924 version ".tar.xz"))
1925 (file-name (string-append name "-" version ".tar.xz"))
1926 (sha256
1927 (base32
1928 "0yfx9i77638yrgclnwwl4af79ri3vifi1nslwi6mgzva9cxrgss4"))))
1929 (build-system font-build-system)
1930 (home-page "https://mplus-fonts.osdn.jp/index.html")
1931 (synopsis "Japanese font collection")
1932 (description "M+ is a collection of Japanese fonts with all Latin glyph
1933sets, with Basic Latin, Latin-1 Supplement, Latin Extended-A, and IPA
1934Extensions. In addition to European letters used in many Western European
1935languages, it contains Japanese characters, including Kana glyphs and more
1936than 5,300 Kanji glyphs, as well major international phonetic symbols,
1937operators and special symbols.")
1938 (license (license:non-copyleft "file:///LICENSE_E"))))
eb404f30
AI
1939
1940(define-public font-catamaran
1941 (let ((commit "7559b4906f9c9148fb22c6f89508c3053a78a296")
1942 (revision "1"))
1943 (package
1944 (name "font-catamaran")
1945 (version (git-version "0.0.0" revision commit))
1946 (source
1947 (origin
1948 (method git-fetch)
1949 (uri (git-reference
1950 (url "https://github.com/VanillaandCream/Catamaran-Tamil")
1951 (commit commit)))
1952 (file-name (git-file-name name version))
1953 (sha256
1954 (base32
1955 "1wpp41l7j2kpgnyavhgxcc5wp852a4wqsnwravn39gp980s84yxw"))))
1956 (build-system font-build-system)
1957 (home-page "https://github.com/VanillaandCream/Catamaran-Tamil")
1958 (synopsis "9 weight Tamil and Latin type")
1959 (description "Catamaran is a 9 weight Tamil and Latin type. Catamaran
1960is a stylish type with a polished yet relaxed feel. Its versatility makes it
1961suitable for a wide range of uses.")
1962 (license license:silofl1.1))))