gnu: evolution-data-server: Update to 3.22.3.
[jackhill/guix/guix.git] / gnu / packages / fonts.scm
CommitLineData
86f1537d 1;;; GNU Guix --- Functional package management for GNU
71be99b8 2;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
72f210ea 3;;; Copyright © 2014 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>
3f88152d 8;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
df320991 9;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
bb0756c7 10;;; Copyright © 2016, 2017 ng0 <ng0@libertad.pw>
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>
d7284b6a 14;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
6e1d7aa9 15;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
c3e2a247 16;;; Copyright © 2016 Toni Reina <areina@riseup.net>
8837860c 17;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
86f1537d
AE
18;;;
19;;; This file is part of GNU Guix.
20;;;
21;;; GNU Guix is free software; you can redistribute it and/or modify it
22;;; under the terms of the GNU General Public License as published by
23;;; the Free Software Foundation; either version 3 of the License, or (at
24;;; your option) any later version.
25;;;
26;;; GNU Guix is distributed in the hope that it will be useful, but
27;;; WITHOUT ANY WARRANTY; without even the implied warranty of
28;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
29;;; GNU General Public License for more details.
30;;;
31;;; You should have received a copy of the GNU General Public License
32;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
33
34(define-module (gnu packages fonts)
6e1d7aa9 35 #:use-module (ice-9 regex)
71be99b8 36 #:use-module (guix utils)
b5b73a82 37 #:use-module ((guix licenses) #:prefix license:)
86f1537d
AE
38 #:use-module (guix packages)
39 #:use-module (guix download)
d41bb065 40 #:use-module (guix build-system gnu)
86f1537d 41 #:use-module (guix build-system trivial)
56b7a338 42 #:use-module (gnu packages base)
d41bb065 43 #:use-module (gnu packages compression)
47268eec 44 #:use-module (gnu packages fontutils)
d41bb065 45 #:use-module (gnu packages perl)
47268eec
AE
46 #:use-module (gnu packages pkg-config)
47 #:use-module (gnu packages python)
d41bb065 48 #:use-module (gnu packages xorg)
47268eec 49 #:use-module (gnu packages zip))
86f1537d 50
477ac94b 51(define-public font-inconsolata
dede51a1
ED
52 (package
53 (name "font-inconsolata")
54 (version "0.80")
55 (source (origin
56 (method url-fetch)
57 (uri "http://www.levien.com/type/myfonts/Inconsolata.otf")
58 (sha256
59 (base32
60 "06js6znbcf7swn8y3b8ki416bz96ay7d3yvddqnvi88lqhbfcq8m"))))
61 (build-system trivial-build-system)
62 (arguments
63 `(#:modules ((guix build utils))
64 #:builder (begin
65 (use-modules (guix build utils))
66 (let ((font-dir (string-append %output
67 "/share/fonts/opentype"))
68 (source (assoc-ref %build-inputs "source")))
69 (mkdir-p font-dir)
70 (copy-file source
71 (string-append font-dir "/" "inconsolata.otf"))))))
72 (native-inputs `(("source" ,source)))
73 (home-page "http://levien.com/type/myfonts/inconsolata.html")
74 (synopsis "Monospace font")
75 (description "A monospace font, designed for code listings and the like,
76in print. With attention to detail for high resolution rendering.")
77 (license license:silofl1.1)))
78
e93b88f7
ED
79(define-public font-ubuntu
80 (package
81 (name "font-ubuntu")
29f9abb4 82 (version "0.83")
e93b88f7
ED
83 (source (origin
84 (method url-fetch)
29f9abb4
AK
85 (uri (string-append
86 "http://font.ubuntu.com/download/ubuntu-font-family-"
87 version ".zip"))
e93b88f7
ED
88 (sha256
89 (base32
29f9abb4 90 "0hjvq2x758dx0sfwqhzflns0ns035qm7h6ygskbx1svzg517sva5"))))
e93b88f7
ED
91 (build-system trivial-build-system)
92 (arguments
93 `(#:modules ((guix build utils))
94 #:builder (begin
95 (use-modules (guix build utils)
96 (srfi srfi-26))
97
98 (let ((PATH (string-append (assoc-ref %build-inputs
99 "unzip")
100 "/bin"))
101 (font-dir (string-append %output
102 "/share/fonts/truetype"))
103 (doc-dir (string-append %output "/share/doc/"
104 ,name "-" ,version)))
105 (setenv "PATH" PATH)
106 (system* "unzip" (assoc-ref %build-inputs "source"))
107
108 (mkdir-p font-dir)
109 (mkdir-p doc-dir)
110 (chdir (string-append "ubuntu-font-family-" ,version))
111 (for-each (lambda (ttf)
8837860c 112 (install-file ttf font-dir))
e93b88f7
ED
113 (find-files "." "\\.ttf$"))
114 (for-each (lambda (doc)
8837860c 115 (install-file doc doc-dir))
e93b88f7
ED
116 (find-files "." "\\.txt$"))))))
117 (native-inputs `(("source" ,source)
118 ("unzip" ,unzip)))
119 (home-page "http://font.ubuntu.com/")
120 (synopsis "The Ubuntu Font Family")
121 (description "The Ubuntu Font Family is a unique, custom designed font
122that has a very distinctive look and feel. This package provides the
123TrueType (TTF) files.")
124 (license
125 (license:non-copyleft
126 "http://font.ubuntu.com/ufl/ubuntu-font-licence-1.0.txt"
127 "Ubuntu Font License v1.0"))))
128
5e6bdf06 129(define-public font-dejavu
72f210ea 130 (package
5e6bdf06 131 (name "font-dejavu")
d7284b6a 132 (version "2.37")
72f210ea
MW
133 (source (origin
134 (method url-fetch)
de67e922 135 (uri (string-append "mirror://sourceforge/dejavu/dejavu/"
72f210ea
MW
136 version "/dejavu-fonts-ttf-"
137 version ".tar.bz2"))
138 (sha256
139 (base32
d7284b6a 140 "1mqpds24wfs5cmfhj57fsfs07mji2z8812i5c4pi5pbi738s977s"))))
72f210ea
MW
141 (build-system trivial-build-system)
142 (arguments
143 `(#:modules ((guix build utils))
144 #:builder (begin
145 (use-modules (guix build utils))
146
147 (let ((tar (string-append (assoc-ref %build-inputs
148 "tar")
149 "/bin/tar"))
150 (PATH (string-append (assoc-ref %build-inputs
151 "bzip2")
152 "/bin"))
153 (font-dir (string-append
154 %output "/share/fonts/truetype"))
155 (conf-dir (string-append
156 %output "/share/fontconfig/conf.avail"))
157 (doc-dir (string-append
158 %output "/share/doc/" ,name "-" ,version)))
159 (setenv "PATH" PATH)
160 (system* tar "xvf" (assoc-ref %build-inputs "source"))
161
162 (mkdir-p font-dir)
163 (mkdir-p conf-dir)
164 (mkdir-p doc-dir)
165 (chdir (string-append "dejavu-fonts-ttf-" ,version))
166 (for-each (lambda (ttf)
8837860c 167 (install-file ttf font-dir))
72f210ea
MW
168 (find-files "ttf" "\\.ttf$"))
169 (for-each (lambda (conf)
8837860c 170 (install-file conf conf-dir))
72f210ea
MW
171 (find-files "fontconfig" "\\.conf$"))
172 (for-each (lambda (doc)
8837860c 173 (install-file doc doc-dir))
72f210ea
MW
174 (find-files "." "\\.txt$|^[A-Z][A-Z]*$"))))))
175 (native-inputs `(("source" ,source)
176 ("tar" ,tar)
177 ("bzip2" ,bzip2)))
178 (home-page "http://dejavu-fonts.org/")
179 (synopsis "Vera font family derivate with additional characters")
180 (description "DejaVu provides an expanded version of the Vera font family
181aiming for quality and broader Unicode coverage while retaining the original
b4774d87 182Vera style. DejaVu currently works towards conformance to the Multilingual
72f210ea
MW
183European Standards (MES-1 and MES-2) for Unicode coverage. The DejaVu fonts
184provide serif, sans and monospaced variants.")
185 (license
186 (license:x11-style
187 "http://dejavu-fonts.org/"))))
188
5e6bdf06 189(define-public font-bitstream-vera
86f1537d 190 (package
5e6bdf06 191 (name "font-bitstream-vera")
86f1537d
AE
192 (version "1.10")
193 (source (origin
194 (method url-fetch)
195 (uri (string-append "mirror://gnome/sources/ttf-bitstream-vera/"
196 version "/ttf-bitstream-vera-"
197 version ".tar.bz2"))
198 (sha256
199 (base32
200 "1p3qs51x5327gnk71yq8cvmxc6wgx79sqxfvxcv80cdvgggjfnyv"))))
201 (build-system trivial-build-system)
202 (arguments
203 `(#:modules ((guix build utils))
204 #:builder (begin
205 (use-modules (guix build utils)
206 (srfi srfi-26))
207
208 (let ((tar (string-append (assoc-ref %build-inputs
209 "tar")
210 "/bin/tar"))
211 (PATH (string-append (assoc-ref %build-inputs
212 "bzip2")
213 "/bin"))
214 (font-dir (string-append %output
215 "/share/fonts/truetype"))
216 (doc-dir (string-append %output "/share/doc/"
217 ,name "-" ,version)))
218 (setenv "PATH" PATH)
219 (system* tar "xvf" (assoc-ref %build-inputs "source"))
220
221 (mkdir-p font-dir)
222 (mkdir-p doc-dir)
223 (chdir (string-append "ttf-bitstream-vera-" ,version))
224 (for-each (lambda (ttf)
8837860c 225 (install-file ttf font-dir))
86f1537d
AE
226 (find-files "." "\\.ttf$"))
227 (for-each (lambda (doc)
8837860c 228 (install-file doc doc-dir))
86f1537d
AE
229 (find-files "." "\\.TXT$"))))))
230 (native-inputs `(("source" ,source)
231 ("tar" ,tar)
232 ("bzip2" ,bzip2)))
07af3e5e 233 (home-page "http://www.gnome.org/fonts/")
86f1537d
AE
234 (synopsis "Bitstream Vera sans-serif typeface")
235 (description "Vera is a sans-serif typeface from Bitstream, Inc. This
236package provides the TrueType (TTF) files.")
237 (license
238 (license:x11-style
07af3e5e 239 "http://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts"))))
86f1537d 240
71be99b8
LC
241(define-public font-cantarell
242 (package
243 (name "font-abattis-cantarell")
244 (version "0.0.24")
245 (source (origin
246 (method url-fetch)
247 (uri (string-append "mirror://gnome/sources/cantarell-fonts/"
248 (version-major+minor version)
249 "/cantarell-fonts-" version ".tar.xz"))
250 (sha256
251 (base32
252 "0r4jnc2x9yncf40lixjb1pqgpq8rzbi2fz33pshlqzjgx2d69bcw"))))
253 (build-system gnu-build-system)
254 (home-page "https://wiki.gnome.org/Projects/CantarellFonts")
255 (synopsis "Cantarell sans-serif typeface")
256 (description "The Cantarell font family is a contemporary Humanist
257sans-serif designed for on-screen reading. It is used by GNOME@tie{}3.")
258 (license license:silofl1.1)))
259
5e6bdf06 260(define-public font-gnu-freefont-ttf
86f1537d 261 (package
5e6bdf06 262 (name "font-gnu-freefont-ttf")
47268eec 263 (version "20120503")
86f1537d
AE
264 (source (origin
265 (method url-fetch)
47268eec 266 (uri (string-append "mirror://gnu/freefont/freefont-src-"
86f1537d
AE
267 version ".tar.gz"))
268 (sha256
269 (base32
47268eec
AE
270 "0yk58blhcd4hm7nyincmqq4jrzjjk82wif2zmk1l3y2m4vif4qhd"))))
271 (build-system gnu-build-system)
86f1537d 272 (arguments
47268eec
AE
273 `(#:phases (modify-phases %standard-phases
274 (delete 'configure)
275 (replace 'install
276 (lambda _
277 (let ((doc-dir (string-append %output "/share/doc/"
278 ,name "-" ,version))
279 (font-dir (string-append %output
280 "/share/fonts/truetype")))
281 (mkdir-p doc-dir)
282 (substitute* "Makefile"
283 (("\\$\\(TMPDIR\\)") doc-dir)
284 (("sfd/\\*.ttf") ""))
285 (system* "make" "ttftar")
286 (mkdir-p font-dir)
287 (for-each (lambda (file)
8837860c 288 (install-file file font-dir))
47268eec
AE
289 (filter
290 (lambda (file) (string-suffix? "ttf" file))
291 (find-files "." "")))))))
292 #:test-target "tests"))
293 ;; replace python 3 with python 2
294 ;; python 3 support commits aren't yet released in 20120503
295 ;; so freefont needs python 2 support in fontforge
296 (native-inputs `(("fontforge" ,(package (inherit fontforge)
297 (inputs `(("python-2" ,python-2)
298 ,@(package-inputs fontforge)))))))
86f1537d
AE
299 (home-page "http://www.gnu.org/software/freefont/")
300 (synopsis "Unicode-encoded outline fonts")
301 (description
302 "The GNU Freefont project aims to provide a set of free outline
303 (PostScript Type0, TrueType, OpenType...) fonts covering the ISO
30410646/Unicode UCS (Universal Character Set).")
63e8bb12
LC
305 (license license:gpl3+)
306 (properties '((upstream-name . "freefont")
307 (ftp-directory . "/gnu/freefont")))))
d41bb065 308
16191117
AK
309(define-public font-liberation
310 (package
311 (name "font-liberation")
312 (version "2.00.1")
313 (source (origin
314 (method url-fetch)
315 (uri (string-append "https://fedorahosted.org/releases/l/i/"
316 "liberation-fonts/liberation-fonts-ttf-"
317 version ".tar.gz"))
318 (sha256
319 (base32
320 "010m4zfqan4w04b6bs9pm3gapn9hsb18bmwwgp2p6y6idj52g43q"))))
321 (build-system trivial-build-system)
322 (arguments
323 `(#:modules ((guix build utils))
324 #:builder
325 (begin
326 (use-modules (guix build utils))
327
328 (let ((tar (string-append (assoc-ref %build-inputs "tar")
329 "/bin/tar"))
330 (PATH (string-append (assoc-ref %build-inputs "gzip")
331 "/bin"))
332 (font-dir (string-append %output "/share/fonts/truetype"))
333 (doc-dir (string-append %output "/share/doc/" ,name)))
334 (setenv "PATH" PATH)
335 (system* tar "xvf" (assoc-ref %build-inputs "source"))
336 (mkdir-p font-dir)
337 (mkdir-p doc-dir)
338 (chdir (string-append "liberation-fonts-ttf-" ,version))
339 (for-each (lambda (ttf)
8837860c 340 (install-file ttf font-dir))
16191117
AK
341 (find-files "." "\\.ttf$"))
342 (for-each (lambda (doc)
8837860c 343 (install-file doc doc-dir))
16191117
AK
344 '("AUTHORS" "ChangeLog" "LICENSE" "README" "TODO"))))))
345 (native-inputs
346 `(("source" ,source)
347 ("tar" ,tar)
348 ("gzip" ,gzip)))
349 (home-page "https://fedorahosted.org/liberation-fonts/")
350 (synopsis
351 "Fonts compatible with Arial, Times New Roman, and Courier New")
352 (description
353 "The Liberation font family aims at metric compatibility with
354Arial, Times New Roman, and Courier New.
16191117
AK
355There are three sets:
356
0102fba2 357@enumerate
ec460a2a 358@item Sans (a substitute for Arial, Albany, Helvetica, Nimbus Sans L, and
16191117 359Bitstream Vera Sans);
ec460a2a 360@item Serif (a substitute for Times New Roman, Thorndale, Nimbus Roman, and
16191117 361Bitstream Vera Serif);
ec460a2a 362@item Mono (a substitute for Courier New, Cumberland, Courier, Nimbus Mono L,
16191117 363and Bitstream Vera Sans Mono).
0102fba2 364@end enumerate
16191117
AK
365
366The Liberation Fonts are sponsored by Red Hat.")
367 (license license:silofl1.1)))
368
5e6bdf06 369(define-public font-terminus
d41bb065 370 (package
5e6bdf06 371 (name "font-terminus")
acb38156 372 (version "4.40")
d41bb065
JG
373 (source
374 (origin
375 (method url-fetch)
376 (uri (string-append
0f971a04 377 "mirror://sourceforge/terminus-font/terminus-font-"
d41bb065
JG
378 version
379 "/terminus-font-"
380 version
381 ".tar.gz"))
382 (sha256
acb38156 383 (base32
384 "0487cyx5h1f0crbny5sg73a22gmym5vk1i7646gy7hgiscj2rxb4"))))
d41bb065
JG
385 (build-system gnu-build-system)
386 (native-inputs
387 `(("pkg-config" ,pkg-config)
388 ("perl" ,perl)
389 ("bdftopcf" ,bdftopcf)
b3546174 390 ("font-util" ,font-util)
d41bb065
JG
391 ("mkfontdir" ,mkfontdir)))
392 (arguments
393 `(#:configure-flags (list
394 ;; install fonts into subdirectory of package output
395 ;; instead of font-util-?.?.?/share/fonts/X11
396 (string-append "--with-fontrootdir="
397 %output "/share/fonts/X11"))
398 #:tests? #f)) ;; No test target in tarball
399 (home-page "http://terminus-font.sourceforge.net/")
400 (synopsis "Simple bitmap programming font")
b4774d87
TGR
401 (description "Terminus Font is a clean, fixed-width bitmap font, designed
402for long periods of working with computers (8 or more hours per day).")
380f2ab6 403 (license license:silofl1.1)))
692784dd
SB
404
405(define-public font-adobe-source-han-sans
406 (package
407 (name "font-adobe-source-han-sans")
2666a126 408 (version "1.004")
692784dd
SB
409 (source (origin
410 (method url-fetch)
411 (uri (string-append
412 "https://github.com/adobe-fonts/source-han-sans/archive/"
2666a126
SB
413 version "R.tar.gz"))
414 (file-name (string-append "source-han-sans-" version "R.tar.gz"))
692784dd
SB
415 (sha256
416 (base32
2666a126
SB
417 "1ssx0fw90sy6mj8fv8fv4dgzszpqwbmwpjnlx16g4pvaqzdmybbz"))))
418 (outputs '("out" ; OpenType/CFF Collection (OTC), 121 MiB.
692784dd
SB
419 "cn" "jp" "kr" "tw")) ; Region-specific Subset OpenType/CFF.
420 (build-system trivial-build-system)
421 (arguments
422 `(#:modules ((guix build utils))
423 #:builder
424 (begin
425 (use-modules (guix build utils))
426 (let ((tar (string-append (assoc-ref %build-inputs
427 "tar")
428 "/bin/tar"))
429 (PATH (string-append (assoc-ref %build-inputs
430 "gzip")
431 "/bin"))
432 (install-opentype-fonts
433 (lambda (fonts-dir out)
434 (copy-recursively fonts-dir
435 (string-append (assoc-ref %outputs out)
436 "/share/fonts/opentype")))))
437 (setenv "PATH" PATH)
438 (system* tar "xvf" (assoc-ref %build-inputs "source"))
2666a126 439 (chdir (string-append "source-han-sans-" ,version "R"))
692784dd
SB
440 (install-opentype-fonts "OTC" "out")
441 (install-opentype-fonts "SubsetOTF/CN" "cn")
442 (install-opentype-fonts "SubsetOTF/JP" "jp")
443 (install-opentype-fonts "SubsetOTF/KR" "kr")
2666a126
SB
444 (install-opentype-fonts "SubsetOTF/TW" "tw")
445 (for-each delete-file (find-files %output "\\.zip$"))))))
692784dd
SB
446 (native-inputs
447 `(("gzip" ,gzip)
448 ("tar" ,tar)))
449 (home-page "https://github.com/adobe-fonts/source-han-sans")
450 (synopsis "Pan-CJK fonts")
451 (description
452 "Source Han Sans is a sans serif Pan-CJK font family that is offered in
453seven weights: ExtraLight, Light, Normal, Regular, Medium, Bold, and Heavy.
454And in several OpenType/CFF-based deployment configurations to accommodate
455various system requirements or limitations. As the name suggests, Pan-CJK
456fonts are intended to support the characters necessary to render or display
e881752c 457text in Simplified Chinese, Traditional Chinese, Japanese, and Korean.")
2666a126 458 (license license:silofl1.1)))
192b4802
RW
459
460(define-public font-wqy-zenhei
461 (package
462 (name "font-wqy-zenhei")
463 (version "0.9.45")
464 (source (origin
465 (method url-fetch)
466 (uri (string-append
de67e922
LF
467 "mirror://sourceforge/wqy/wqy-zenhei/" version
468 "%20%28Fighting-state%20RC1%29/wqy-zenhei-"
192b4802
RW
469 version ".tar.gz"))
470 (file-name (string-append "wqy-zenhei-" version ".tar.gz"))
471 (sha256
472 (base32
473 "1mkmxq8g2hjcglb3zajfqj20r4r88l78ymsp2xyl5yav8w3f7dz4"))))
474 (build-system trivial-build-system)
475 (arguments
476 `(#:modules ((guix build utils))
477 #:builder
478 (begin
479 (use-modules (guix build utils))
480 (let ((PATH (string-append (assoc-ref %build-inputs "tar") "/bin:"
481 (assoc-ref %build-inputs "gzip") "/bin"))
482 (font-dir (string-append (assoc-ref %outputs "out")
483 "/share/fonts/wenquanyi/")))
484 (setenv "PATH" PATH)
485 (mkdir-p font-dir)
486 (system* "tar" "xvf" (assoc-ref %build-inputs "source"))
487 (chdir "wqy-zenhei")
8837860c 488 (install-file "wqy-zenhei.ttc" font-dir)))))
192b4802
RW
489 (native-inputs
490 `(("gzip" ,gzip)
491 ("tar" ,tar)))
492 (home-page "http://wenq.org/wqy2/")
493 (synopsis "CJK font")
494 (description
495 "WenQuanYi Zen Hei is a Hei-Ti style (sans-serif type) Chinese outline
496font. It is designed for general purpose text formatting and on-screen
497display of Chinese characters and symbols from many other languages.
b4774d87 498WenQuanYi Zen Hei provides a rather complete coverage of Chinese Hanzi glyphs,
192b4802
RW
499including both simplified and traditional forms. The total glyph number in
500this font is over 35,000, including over 21,000 Chinese Hanzi. This font has
b4774d87
TGR
501full coverage of the GBK (CP936) charset, CJK Unified Ideographs, as well as
502the code-points needed for zh_cn, zh_sg, zh_tw, zh_hk, zh_mo, ja (Japanese) and
503ko (Korean) locales for @code{fontconfig}.")
192b4802
RW
504 ;; GPLv2 with font embedding exception
505 (license license:gpl2)))
3f88152d
RW
506
507(define-public font-tex-gyre
508 (package
509 (name "font-tex-gyre")
510 (version "2.005")
511 (source
512 (origin
513 (method url-fetch)
514 (uri (string-append "http://www.gust.org.pl/projects/e-foundry/"
515 "tex-gyre/whole/tg-" version "otf.zip"))
516 (sha256
517 (base32
518 "0kph9l3g7jb2bpmxdbdg5zl56wacmnvdvsdn7is1gc750sqvsn31"))))
519 (build-system trivial-build-system)
520 (arguments
521 `(#:modules ((guix build utils))
522 #:builder
523 (begin
524 (use-modules (guix build utils))
525
526 (let ((unzip (string-append (assoc-ref %build-inputs "unzip")
527 "/bin/unzip"))
528 (font-dir (string-append %output "/share/fonts/opentype")))
529 (mkdir-p font-dir)
530 (system* unzip
531 (assoc-ref %build-inputs "source")
532 "-d" font-dir)))))
533 (native-inputs
534 `(("unzip" ,unzip)))
535 (home-page "http://www.gust.org.pl/projects/e-foundry/tex-gyre/")
536 (synopsis "Remake of Ghostscript fonts")
537 (description "The TeX Gyre collection of fonts is the result of an
538extensive remake and extension of the freely available base PostScript fonts
539distributed with Ghostscript version 4.00. The collection contains the
540following fonts in the OpenType format: Adventor, Bonum, Chorus, Cursor,
541Heros, Pagella, Schola, Termes.")
542 (license license:gfl1.0)))
761b3d44
LF
543
544(define-public font-anonymous-pro
545 (package
546 (name "font-anonymous-pro")
547 (version "1.002")
548 (source (origin
549 (method url-fetch)
550 (uri (string-append
551 "http://www.marksimonson.com/assets/content/fonts/"
552 "AnonymousPro-" version ".zip"))
553 (sha256
554 (base32
555 "1asj6lykvxh46czbal7ymy2k861zlcdqpz8x3s5bbpqwlm3mhrl6"))))
556 (build-system trivial-build-system)
557 (arguments
558 `(#:modules ((guix build utils))
559 #:builder
560 (begin
561 (use-modules (guix build utils))
562 (let ((unzip (string-append (assoc-ref %build-inputs "unzip")
563 "/bin/unzip"))
564 (font-dir (string-append %output "/share/fonts/truetype"))
565 (doc-dir (string-append %output "/share/doc/" ,name)))
566 (system* unzip (assoc-ref %build-inputs "source"))
567 (mkdir-p font-dir)
568 (mkdir-p doc-dir)
569 (chdir (string-append "AnonymousPro-" ,version ".001"))
570 (for-each (lambda (ttf)
8837860c 571 (install-file ttf font-dir))
761b3d44
LF
572 (find-files "." "\\.ttf$"))
573 (for-each (lambda (doc)
8837860c 574 (install-file doc doc-dir))
761b3d44
LF
575 (find-files "." "\\.txt$"))))))
576 (native-inputs
577 `(("unzip" ,unzip)))
578 (home-page "http://www.marksimonson.com/fonts/view/anonymous-pro")
579 (synopsis "Fixed-width fonts designed with coding in mind")
580 (description "Anonymous Pro is a family of four fixed-width fonts designed
581with coding in mind. Anonymous Pro features an international, Unicode-based
582character set, with support for most Western and Central European Latin-based
583languages, plus Greek and Cyrillic.")
584 (license license:silofl1.1)))
d032d965
SB
585
586(define-public font-gnu-unifont
587 (package
588 (name "font-gnu-unifont")
c88bee0a 589 (version "9.0.06")
d032d965
SB
590 (source (origin
591 (method url-fetch)
592 (uri (string-append
df320991 593 "mirror://gnu/unifont/unifont-" version "/unifont-"
d032d965
SB
594 version ".tar.gz"))
595 (sha256
596 (base32
c88bee0a 597 "0ybyraxi8pngibazfq4zlsqmg8kn5xlhvaiwnxb11znhfi61vi87"))))
d032d965
SB
598 (build-system gnu-build-system)
599 (outputs '("out" ; TrueType version
600 "pcf" ; PCF (bitmap) version
601 "psf" ; PSF (console) version
602 "bin" ; Utilities to manipulate '.hex' format
603 ))
604 (arguments
605 '(#:parallel-build? #f ; parallel build fails
606 #:tests? #f ; no check target
607 #:phases
608 (modify-phases %standard-phases
c88bee0a
EF
609 (replace
610 'configure
611 (lambda _ (setenv "CC" "gcc") #t))
d032d965
SB
612 (replace
613 'install
614 (lambda* (#:key outputs #:allow-other-keys)
615 (let* ((ttf (string-append (assoc-ref outputs "out")
616 "/share/fonts/truetype"))
617 (pcf (string-append (assoc-ref outputs "pcf")
618 "/share/fonts/misc"))
619 (psf (string-append (assoc-ref outputs "psf")
620 "/share/consolefonts"))
621 (bin (assoc-ref outputs "bin")))
622 (system* "make"
623 (string-append "PREFIX=" bin)
624 (string-append "TTFDEST=" ttf)
625 (string-append "PCFDEST=" pcf)
626 (string-append "CONSOLEDEST=" psf)
627 "install")
628 ;; Move Texinfo file to the right place.
629 (mkdir (string-append bin "/share/info"))
630 (rename-file (string-append bin "/share/unifont/unifont.info.gz")
631 (string-append bin "/share/info/unifont.info.gz"))
632 #t))))))
633 (inputs
634 `(("perl" ,perl))) ; for utilities
635 (synopsis
636 "Large bitmap font covering Unicode's Basic Multilingual Plane")
637 (description
638 "GNU Unifont is a bitmap font covering essentially all of
639Unicode's Basic Multilingual Plane. The package also includes
640utilities to ease adding new glyphs to the font.")
641 (home-page "http://unifoundry.com/unifont.html")
642 (license license:gpl2+)))
b6ecac93
J
643
644(define-public font-google-noto
645 (package
646 (name "font-google-noto")
647 (version "20150929")
648 (source (origin
649 (method url-fetch)
650 (uri (string-append "https://noto-website-2.storage.googleapis.com/"
651 "pkgs/Noto-hinted.zip"))
652 (sha256
653 (base32
654 "13jhpqzhsqhyby8n0ksqg155a3jyaif3nzj9anzbq8s2gn1xjyd9"))))
655 (build-system trivial-build-system)
656 (arguments
657 `(#:modules ((guix build utils))
658 #:builder (begin
659 (use-modules (guix build utils)
660 (srfi srfi-26))
661
662 (let ((PATH (string-append (assoc-ref %build-inputs
663 "unzip")
664 "/bin"))
665 (font-dir (string-append %output
666 "/share/fonts/truetype")))
667 (setenv "PATH" PATH)
668 (system* "unzip" (assoc-ref %build-inputs "source"))
669
670 (mkdir-p font-dir)
671 (for-each (lambda (ttf)
8837860c 672 (install-file ttf font-dir))
b6ecac93
J
673 (find-files "." "\\.ttf$"))
674 (for-each (lambda (otf)
8837860c 675 (install-file otf font-dir))
b6ecac93
J
676 (find-files "." "\\.otf$"))))))
677 (native-inputs `(("unzip" ,unzip)))
678 (home-page "https://www.google.com/get/noto/")
b4774d87
TGR
679 (synopsis "Fonts to cover all languages")
680 (description "Google Noto Fonts is a family of fonts designed to support
681all languages with a consistent look and aesthetic. Its goal is to properly
682display all Unicode symbols.")
b6ecac93 683 (license license:silofl1.1)))
aae6b4b9 684
bb0756c7 685(define-public font-google-roboto
686 (package
687 (name "font-google-roboto")
688 (version "2.136")
689 (source
690 (origin
691 (method url-fetch)
692 (uri (string-append "https://github.com/google/roboto/releases/download/"
693 "v" version "/roboto-hinted.zip"))
694 (file-name (string-append name "-" version ".zip"))
695 (sha256
696 (base32
697 "0spscx08fad7i8qs7icns96iwcapniq8lwwqqvbf7bamvs8qfln4"))))
698 (native-inputs `(("unzip" ,unzip)))
699 (build-system trivial-build-system)
700 (arguments
701 `(#:modules ((guix build utils))
702 #:builder (begin
703 (use-modules (guix build utils)
704 (srfi srfi-26))
705
706 (let ((PATH (string-append (assoc-ref %build-inputs
707 "unzip")
708 "/bin"))
709 (font-dir (string-append %output
710 "/share/fonts/truetype")))
711 (setenv "PATH" PATH)
712 (system* "unzip" (assoc-ref %build-inputs "source"))
713
714 (mkdir-p font-dir)
715 (chdir "roboto-hinted")
716 (for-each (lambda (ttf)
717 (copy-file ttf
718 (string-append font-dir "/" ttf)))
719 (find-files "." "\\.ttf$"))))))
720 (home-page "https://github.com/google/roboto")
721 (synopsis "The Roboto family of fonts")
722 (description
723 "Roboto is Google’s signature family of fonts, the default font on Android
724and Chrome OS, and the recommended font for the
725visual language \"Material Design\".")
726 (license license:asl2.0)))
727
aae6b4b9 728(define-public font-un
729 (package
730 (name "font-un")
731 (version "1.0.2-080608")
aae6b4b9 732 (source (origin
733 (method url-fetch)
99a61dad 734 (uri (string-append
735 "https://kldp.net/unfonts/release/2607-"
736 "un-fonts-core-" version ".tar.gz"))
aae6b4b9 737 (file-name (string-append name "-" version ".tar.gz"))
738 (sha256
739 (base32
740 "13liaz2pmww3aqabm55la5npd08m1skh334ky7qfidxaz5s742iv"))))
741 (build-system trivial-build-system)
742 (arguments
743 `(#:modules ((guix build utils))
744 #:builder
745 (begin
746 (use-modules (guix build utils))
747
748 (let ((tar (string-append (assoc-ref %build-inputs "tar")
749 "/bin/tar"))
750 (PATH (string-append (assoc-ref %build-inputs "gzip")
751 "/bin"))
752 (font-dir (string-append %output "/share/fonts/truetype"))
753 (doc-dir (string-append %output "/share/doc/" ,name)))
754 (setenv "PATH" PATH)
755 (system* tar "xvf" (assoc-ref %build-inputs "source"))
756 (mkdir-p font-dir)
757 (mkdir-p doc-dir)
758 (chdir (string-append "un-fonts"))
759 (for-each (lambda (ttf)
8837860c 760 (install-file ttf font-dir))
aae6b4b9 761 (find-files "." "\\.ttf$"))
762 (for-each (lambda (doc)
8837860c 763 (install-file doc doc-dir))
aae6b4b9 764 '("COPYING" "README"))))))
765 (native-inputs
766 `(("tar" ,tar)
767 ("gzip" ,gzip)))
768 (home-page "https://kldp.net/projects/unfonts/")
769 (synopsis "Collection of Korean fonts")
770 (description
771 "Un-fonts is a family of mainly Korean fonts.
772It contains the following fonts and styles:
773
774@enumerate
775@item UnBatang, UnBatangBold: serif;
776@item UnDotum, UnDotumBold: sans-serif;
777@item UnGraphic, UnGraphicBold: sans-serif style;
778@item UnDinaru, UnDinaruBold, UnDinaruLight;
779@item UnPilgi, UnPilgiBold: script;
780@item UnGungseo: cursive, brush-stroke.
781@end enumerate\n")
782 (license license:gpl2+)))
f85cafde
EB
783
784(define-public font-fantasque-sans
785 (package
786 (name "font-fantasque-sans")
787 (version "1.7.1")
788 (source
789 (origin
790 (method url-fetch)
791 (uri (string-append "https://github.com/belluzj/fantasque-sans/"
792 "archive/v" version ".tar.gz"))
793 (file-name (string-append name "-" version ".tar.gz"))
794 (sha256
795 (base32
796 "07fpy53k2x2nz5q61swkab6cfk9gw2kc4x4brsj6zjgbm16fap85"))))
797 (build-system gnu-build-system)
798 (native-inputs
799 `(("ttfautohint" ,ttfautohint)
800 ("woff-tools" ,woff-tools)
801 ("fontforge" ,fontforge)
802 ("woff2" ,woff2)
803 ("ttf2eot" ,ttf2eot)))
804 (arguments
805 `(#:tests? #f ;test target intended for visual inspection
806 #:phases (modify-phases %standard-phases
807 (delete 'configure) ;no configuration
808 (replace 'install
809 ;; 'make install' wants to install to ~/.fonts, install to
810 ;; output instead.
811 (lambda* (#:key outputs #:allow-other-keys)
812 (let* ((out (assoc-ref outputs "out"))
813 (font-dir (string-append out "/share/fonts"))
814 (truetype-dir (string-append font-dir "/truetype"))
815 (opentype-dir (string-append font-dir "/opentype"))
816 (webfonts-dir (string-append font-dir "/webfonts")))
817 (copy-recursively "OTF" opentype-dir)
818 (for-each (lambda (f) (install-file f truetype-dir))
819 (find-files "." "\\.ttf$"))
820 (copy-recursively "Webfonts" webfonts-dir)
821 #t))))))
822 (synopsis "Font family with a monospaced variant for programmers")
823 (description
824 "Fantasque Sans Mono is a programming font designed with functionality in
825mind. The font includes a bold version and a good italic version with new
826glyph designs, not just an added slant.")
827 (home-page "https://fontlibrary.org/en/font/fantasque-sans-mono")
828 (license license:silofl1.1)))
73c8d39c 829
830(define-public font-hack
831 (package
832 (name "font-hack")
833 (version "2.020")
834 (source (origin
835 (method url-fetch)
836 (uri (string-append
837 "https://github.com/chrissimpkins/Hack/releases/download/v"
838 version "/Hack-v"
839 (string-replace-substring version "." "_")
840 "-ttf.zip"))
841 (sha256
842 (base32
843 "16kkmc3psckw1b7k07ccn1gi5ymhlg9djh43nqjzg065g6p6d184"))))
844 (build-system trivial-build-system)
845 (arguments
846 `(#:modules ((guix build utils))
847 #:builder (begin
848 (use-modules (guix build utils)
849 (srfi srfi-26))
850
851 (let ((PATH (string-append (assoc-ref %build-inputs
852 "unzip")
853 "/bin"))
854 (font-dir (string-append %output
b94ee996 855 "/share/fonts/truetype")))
73c8d39c 856 (setenv "PATH" PATH)
857 (system* "unzip" (assoc-ref %build-inputs "source"))
858
859 (mkdir-p font-dir)
73c8d39c 860 (for-each (lambda (ttf)
8837860c 861 (install-file ttf font-dir))
b94ee996 862 (find-files "." "\\.ttf$"))))))
73c8d39c 863 (native-inputs
864 `(("source" ,source)
865 ("unzip" ,unzip)))
866 (home-page "https://sourcefoundry.org/hack/")
b4774d87 867 (synopsis "Typeface designed for source code")
73c8d39c 868 (description
b4774d87
TGR
869 "Hack is designed to be a workhorse typeface for code. It expands upon
870the Bitstream Vera & DejaVu projects, provides 1561 glyphs, and includes
871Powerline support.")
73c8d39c 872 (license (license:x11-style
873 "https://github.com/chrissimpkins/Hack/blob/master/LICENSE.md"
874 "Hack Open Font License v2.0"))))
6e1d7aa9
MB
875
876(define-public font-adobe-source-code-pro
877 (package
878 (name "font-adobe-source-code-pro")
879 (version "2.030R-ro-1.050R-it")
880 (source (origin
881 (method url-fetch)
882 (uri (string-append
883 "https://github.com/adobe-fonts/source-code-pro/archive/"
884 (regexp-substitute/global
885 ;; The upstream tag uses "/" between the roman and italic
886 ;; versions, so substitute our "-" separator here.
887 #f "R-ro-" version 'pre "R-ro/" 'post) ".tar.gz"))
888 (file-name (string-append name "-" version ".tar.gz"))
889 (sha256
890 (base32
891 "0arhhsf3i7ss39ykn73d1j8k4n8vx7115xph6jwkd970p1cxvr54"))))
892 (build-system trivial-build-system)
893 (arguments
894 `(#:modules ((guix build utils))
895 #:builder
896 (begin
897 (use-modules (guix build utils))
898 (let ((tar (string-append (assoc-ref %build-inputs "tar")
899 "/bin/tar"))
900 (PATH (string-append (assoc-ref %build-inputs "gzip")
901 "/bin"))
902 (font-dir (string-append %output "/share/fonts/opentype")))
903 (setenv "PATH" PATH)
904 (mkdir-p font-dir)
905 (zero? (system* tar "-C" font-dir "--strip-components=2"
906 "-xvf" (assoc-ref %build-inputs "source")
907 (string-append "source-code-pro-"
908 ,version "/OTF")))))))
909 (native-inputs
910 `(("gzip" ,gzip)
911 ("tar" ,tar)))
912 (home-page "https://github.com/adobe-fonts/source-code-pro")
913 (synopsis
914 "Monospaced font family for user interface and coding environments")
915 (description
916 "Source Code Pro is a set of monospaced OpenType fonts that have been
917designed to work well in user interface environments.")
918 (license license:silofl1.1)))
c3e2a247
TR
919
920(define-public font-fira-mono
921 (package
922 (name "font-fira-mono")
923 (version "3.206")
924 (source (origin
925 (method url-fetch)
926 (uri (string-append "https://carrois.com/downloads/fira_mono_3_2/"
927 "FiraMonoFonts"
928 (string-replace-substring version "." "")
929 ".zip"))
930 (sha256
931 (base32
932 "1z65x0dw5dq6rs6p9wyfrir50rlh95vgzsxr8jcd40nqazw4jhpi"))))
933 (build-system trivial-build-system)
934 (arguments
935 `(#:modules ((guix build utils))
936 #:builder
937 (begin
938 (use-modules (guix build utils))
939 (let ((unzip (string-append (assoc-ref %build-inputs "unzip")
940 "/bin/unzip"))
941 (font-dir (string-append %output "/share/fonts/opentype")))
942 (mkdir-p font-dir)
943 (system* unzip
944 "-j"
945 (assoc-ref %build-inputs "source")
946 "*.otf"
947 "-d" font-dir)))))
948 (native-inputs
949 `(("unzip" ,unzip)))
950 (home-page "http://mozilla.github.io/Fira/")
951 (synopsis "Mozilla's monospace font")
952 (description "This is the typeface used by Mozilla in Firefox OS.")
953 (license license:silofl1.1)))