gnu-maintenance: Move FTP directory info to 'properties' fields.
[jackhill/guix/guix.git] / gnu / packages / fonts.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
3 ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
4 ;;; Copyright © 2014 Joshua Grant <tadni@riseup.net>
5 ;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
6 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
7 ;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
8 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
9 ;;; Copyright © 2016 Nils Gillmann <niasterisk@grrlz.net>
10 ;;; Copyright © 2016 Jookia <166291@gmail.com>
11 ;;;
12 ;;; This file is part of GNU Guix.
13 ;;;
14 ;;; GNU Guix is free software; you can redistribute it and/or modify it
15 ;;; under the terms of the GNU General Public License as published by
16 ;;; the Free Software Foundation; either version 3 of the License, or (at
17 ;;; your option) any later version.
18 ;;;
19 ;;; GNU Guix is distributed in the hope that it will be useful, but
20 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
21 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 ;;; GNU General Public License for more details.
23 ;;;
24 ;;; You should have received a copy of the GNU General Public License
25 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
26
27 (define-module (gnu packages fonts)
28 #:use-module (guix utils)
29 #:use-module ((guix licenses) #:prefix license:)
30 #:use-module (guix packages)
31 #:use-module (guix download)
32 #:use-module (guix build-system gnu)
33 #:use-module (guix build-system trivial)
34 #:use-module (gnu packages base)
35 #:use-module (gnu packages compression)
36 #:use-module (gnu packages fontutils)
37 #:use-module (gnu packages perl)
38 #:use-module (gnu packages pkg-config)
39 #:use-module (gnu packages python)
40 #:use-module (gnu packages xorg)
41 #:use-module (gnu packages zip))
42
43 (define-public font-inconsolata
44 (package
45 (name "font-inconsolata")
46 (version "0.80")
47 (source (origin
48 (method url-fetch)
49 (uri "http://www.levien.com/type/myfonts/Inconsolata.otf")
50 (sha256
51 (base32
52 "06js6znbcf7swn8y3b8ki416bz96ay7d3yvddqnvi88lqhbfcq8m"))))
53 (build-system trivial-build-system)
54 (arguments
55 `(#:modules ((guix build utils))
56 #:builder (begin
57 (use-modules (guix build utils))
58 (let ((font-dir (string-append %output
59 "/share/fonts/opentype"))
60 (source (assoc-ref %build-inputs "source")))
61 (mkdir-p font-dir)
62 (copy-file source
63 (string-append font-dir "/" "inconsolata.otf"))))))
64 (native-inputs `(("source" ,source)))
65 (home-page "http://levien.com/type/myfonts/inconsolata.html")
66 (synopsis "Monospace font")
67 (description "A monospace font, designed for code listings and the like,
68 in print. With attention to detail for high resolution rendering.")
69 (license license:silofl1.1)))
70
71 (define-public font-ubuntu
72 (package
73 (name "font-ubuntu")
74 (version "0.83")
75 (source (origin
76 (method url-fetch)
77 (uri (string-append
78 "http://font.ubuntu.com/download/ubuntu-font-family-"
79 version ".zip"))
80 (sha256
81 (base32
82 "0hjvq2x758dx0sfwqhzflns0ns035qm7h6ygskbx1svzg517sva5"))))
83 (build-system trivial-build-system)
84 (arguments
85 `(#:modules ((guix build utils))
86 #:builder (begin
87 (use-modules (guix build utils)
88 (srfi srfi-26))
89
90 (let ((PATH (string-append (assoc-ref %build-inputs
91 "unzip")
92 "/bin"))
93 (font-dir (string-append %output
94 "/share/fonts/truetype"))
95 (doc-dir (string-append %output "/share/doc/"
96 ,name "-" ,version)))
97 (setenv "PATH" PATH)
98 (system* "unzip" (assoc-ref %build-inputs "source"))
99
100 (mkdir-p font-dir)
101 (mkdir-p doc-dir)
102 (chdir (string-append "ubuntu-font-family-" ,version))
103 (for-each (lambda (ttf)
104 (copy-file ttf
105 (string-append font-dir "/" ttf)))
106 (find-files "." "\\.ttf$"))
107 (for-each (lambda (doc)
108 (copy-file doc
109 (string-append doc-dir "/" doc)))
110 (find-files "." "\\.txt$"))))))
111 (native-inputs `(("source" ,source)
112 ("unzip" ,unzip)))
113 (home-page "http://font.ubuntu.com/")
114 (synopsis "The Ubuntu Font Family")
115 (description "The Ubuntu Font Family is a unique, custom designed font
116 that has a very distinctive look and feel. This package provides the
117 TrueType (TTF) files.")
118 (license
119 (license:non-copyleft
120 "http://font.ubuntu.com/ufl/ubuntu-font-licence-1.0.txt"
121 "Ubuntu Font License v1.0"))))
122
123 (define-public font-dejavu
124 (package
125 (name "font-dejavu")
126 (version "2.34")
127 (source (origin
128 (method url-fetch)
129 (uri (string-append "mirror://sourceforge/dejavu/"
130 version "/dejavu-fonts-ttf-"
131 version ".tar.bz2"))
132 (sha256
133 (base32
134 "0pgb0a3ngamidacmrvasg51ck3gp8gn93w6sf1s8snwzx4x2r9yh"))))
135 (build-system trivial-build-system)
136 (arguments
137 `(#:modules ((guix build utils))
138 #:builder (begin
139 (use-modules (guix build utils))
140
141 (let ((tar (string-append (assoc-ref %build-inputs
142 "tar")
143 "/bin/tar"))
144 (PATH (string-append (assoc-ref %build-inputs
145 "bzip2")
146 "/bin"))
147 (font-dir (string-append
148 %output "/share/fonts/truetype"))
149 (conf-dir (string-append
150 %output "/share/fontconfig/conf.avail"))
151 (doc-dir (string-append
152 %output "/share/doc/" ,name "-" ,version)))
153 (setenv "PATH" PATH)
154 (system* tar "xvf" (assoc-ref %build-inputs "source"))
155
156 (mkdir-p font-dir)
157 (mkdir-p conf-dir)
158 (mkdir-p doc-dir)
159 (chdir (string-append "dejavu-fonts-ttf-" ,version))
160 (for-each (lambda (ttf)
161 (copy-file ttf
162 (string-append font-dir "/"
163 (basename ttf))))
164 (find-files "ttf" "\\.ttf$"))
165 (for-each (lambda (conf)
166 (copy-file conf
167 (string-append conf-dir "/"
168 (basename conf))))
169 (find-files "fontconfig" "\\.conf$"))
170 (for-each (lambda (doc)
171 (copy-file doc
172 (string-append doc-dir "/"
173 (basename doc))))
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
181 aiming for quality and broader Unicode coverage while retaining the original
182 Vera style. DejaVu currently works towards conformance with the Multilingual
183 European Standards (MES-1 and MES-2) for Unicode coverage. The DejaVu fonts
184 provide serif, sans and monospaced variants.")
185 (license
186 (license:x11-style
187 "http://dejavu-fonts.org/"))))
188
189 (define-public font-bitstream-vera
190 (package
191 (name "font-bitstream-vera")
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)
225 (copy-file ttf
226 (string-append font-dir "/" ttf)))
227 (find-files "." "\\.ttf$"))
228 (for-each (lambda (doc)
229 (copy-file doc
230 (string-append doc-dir "/" doc)))
231 (find-files "." "\\.TXT$"))))))
232 (native-inputs `(("source" ,source)
233 ("tar" ,tar)
234 ("bzip2" ,bzip2)))
235 (home-page "http://www.gnome.org/fonts/")
236 (synopsis "Bitstream Vera sans-serif typeface")
237 (description "Vera is a sans-serif typeface from Bitstream, Inc. This
238 package provides the TrueType (TTF) files.")
239 (license
240 (license:x11-style
241 "http://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts"))))
242
243 (define-public font-cantarell
244 (package
245 (name "font-abattis-cantarell")
246 (version "0.0.24")
247 (source (origin
248 (method url-fetch)
249 (uri (string-append "mirror://gnome/sources/cantarell-fonts/"
250 (version-major+minor version)
251 "/cantarell-fonts-" version ".tar.xz"))
252 (sha256
253 (base32
254 "0r4jnc2x9yncf40lixjb1pqgpq8rzbi2fz33pshlqzjgx2d69bcw"))))
255 (build-system gnu-build-system)
256 (home-page "https://wiki.gnome.org/Projects/CantarellFonts")
257 (synopsis "Cantarell sans-serif typeface")
258 (description "The Cantarell font family is a contemporary Humanist
259 sans-serif designed for on-screen reading. It is used by GNOME@tie{}3.")
260 (license license:silofl1.1)))
261
262 (define-public font-gnu-freefont-ttf
263 (package
264 (name "font-gnu-freefont-ttf")
265 (version "20120503")
266 (source (origin
267 (method url-fetch)
268 (uri (string-append "mirror://gnu/freefont/freefont-src-"
269 version ".tar.gz"))
270 (sha256
271 (base32
272 "0yk58blhcd4hm7nyincmqq4jrzjjk82wif2zmk1l3y2m4vif4qhd"))))
273 (build-system gnu-build-system)
274 (arguments
275 `(#:phases (modify-phases %standard-phases
276 (delete 'configure)
277 (replace 'install
278 (lambda _
279 (let ((doc-dir (string-append %output "/share/doc/"
280 ,name "-" ,version))
281 (font-dir (string-append %output
282 "/share/fonts/truetype")))
283 (mkdir-p doc-dir)
284 (substitute* "Makefile"
285 (("\\$\\(TMPDIR\\)") doc-dir)
286 (("sfd/\\*.ttf") ""))
287 (system* "make" "ttftar")
288 (mkdir-p font-dir)
289 (for-each (lambda (file)
290 (copy-file file
291 (string-append font-dir "/"
292 (basename file))))
293 (filter
294 (lambda (file) (string-suffix? "ttf" file))
295 (find-files "." "")))))))
296 #:test-target "tests"))
297 ;; replace python 3 with python 2
298 ;; python 3 support commits aren't yet released in 20120503
299 ;; so freefont needs python 2 support in fontforge
300 (native-inputs `(("fontforge" ,(package (inherit fontforge)
301 (inputs `(("python-2" ,python-2)
302 ,@(package-inputs fontforge)))))))
303 (home-page "http://www.gnu.org/software/freefont/")
304 (synopsis "Unicode-encoded outline fonts")
305 (description
306 "The GNU Freefont project aims to provide a set of free outline
307 (PostScript Type0, TrueType, OpenType...) fonts covering the ISO
308 10646/Unicode UCS (Universal Character Set).")
309 (license license:gpl3+)
310 (properties '((upstream-name . "freefont")
311 (ftp-directory . "/gnu/freefont")))))
312
313 (define-public font-liberation
314 (package
315 (name "font-liberation")
316 (version "2.00.1")
317 (source (origin
318 (method url-fetch)
319 (uri (string-append "https://fedorahosted.org/releases/l/i/"
320 "liberation-fonts/liberation-fonts-ttf-"
321 version ".tar.gz"))
322 (sha256
323 (base32
324 "010m4zfqan4w04b6bs9pm3gapn9hsb18bmwwgp2p6y6idj52g43q"))))
325 (build-system trivial-build-system)
326 (arguments
327 `(#:modules ((guix build utils))
328 #:builder
329 (begin
330 (use-modules (guix build utils))
331
332 (let ((tar (string-append (assoc-ref %build-inputs "tar")
333 "/bin/tar"))
334 (PATH (string-append (assoc-ref %build-inputs "gzip")
335 "/bin"))
336 (font-dir (string-append %output "/share/fonts/truetype"))
337 (doc-dir (string-append %output "/share/doc/" ,name)))
338 (setenv "PATH" PATH)
339 (system* tar "xvf" (assoc-ref %build-inputs "source"))
340 (mkdir-p font-dir)
341 (mkdir-p doc-dir)
342 (chdir (string-append "liberation-fonts-ttf-" ,version))
343 (for-each (lambda (ttf)
344 (copy-file ttf
345 (string-append font-dir "/"
346 (basename ttf))))
347 (find-files "." "\\.ttf$"))
348 (for-each (lambda (doc)
349 (copy-file doc
350 (string-append doc-dir "/"
351 (basename doc))))
352 '("AUTHORS" "ChangeLog" "LICENSE" "README" "TODO"))))))
353 (native-inputs
354 `(("source" ,source)
355 ("tar" ,tar)
356 ("gzip" ,gzip)))
357 (home-page "https://fedorahosted.org/liberation-fonts/")
358 (synopsis
359 "Fonts compatible with Arial, Times New Roman, and Courier New")
360 (description
361 "The Liberation font family aims at metric compatibility with
362 Arial, Times New Roman, and Courier New.
363
364 There are three sets:
365
366 - Sans (a substitute for Arial, Albany, Helvetica, Nimbus Sans L, and
367 Bitstream Vera Sans);
368
369 - Serif (a substitute for Times New Roman, Thorndale, Nimbus Roman, and
370 Bitstream Vera Serif);
371
372 - Mono (a substitute for Courier New, Cumberland, Courier, Nimbus Mono L,
373 and Bitstream Vera Sans Mono).
374
375 The Liberation Fonts are sponsored by Red Hat.")
376 (license license:silofl1.1)))
377
378 (define-public font-terminus
379 (package
380 (name "font-terminus")
381 (version "4.40")
382 (source
383 (origin
384 (method url-fetch)
385 (uri (string-append
386 "mirror://sourceforge/project/terminus-font/terminus-font-"
387 version
388 "/terminus-font-"
389 version
390 ".tar.gz"))
391 (sha256
392 (base32
393 "0487cyx5h1f0crbny5sg73a22gmym5vk1i7646gy7hgiscj2rxb4"))))
394 (build-system gnu-build-system)
395 (native-inputs
396 `(("pkg-config" ,pkg-config)
397 ("perl" ,perl)
398 ("bdftopcf" ,bdftopcf)
399 ("font-util" ,font-util)
400 ("mkfontdir" ,mkfontdir)))
401 (arguments
402 `(#:configure-flags (list
403 ;; install fonts into subdirectory of package output
404 ;; instead of font-util-?.?.?/share/fonts/X11
405 (string-append "--with-fontrootdir="
406 %output "/share/fonts/X11"))
407 #:tests? #f)) ;; No test target in tarball
408 (home-page "http://terminus-font.sourceforge.net/")
409 (synopsis "Simple bitmap programming font")
410 (description "Terminus Font is a clean, fixed width bitmap font, designed
411 for long (8 and more hours per day) work with computers.")
412 (license license:silofl1.1)))
413
414 (define-public font-adobe-source-han-sans
415 (package
416 (name "font-adobe-source-han-sans")
417 (version "1.004")
418 (source (origin
419 (method url-fetch)
420 (uri (string-append
421 "https://github.com/adobe-fonts/source-han-sans/archive/"
422 version "R.tar.gz"))
423 (file-name (string-append "source-han-sans-" version "R.tar.gz"))
424 (sha256
425 (base32
426 "1ssx0fw90sy6mj8fv8fv4dgzszpqwbmwpjnlx16g4pvaqzdmybbz"))))
427 (outputs '("out" ; OpenType/CFF Collection (OTC), 121 MiB.
428 "cn" "jp" "kr" "tw")) ; Region-specific Subset OpenType/CFF.
429 (build-system trivial-build-system)
430 (arguments
431 `(#:modules ((guix build utils))
432 #:builder
433 (begin
434 (use-modules (guix build utils))
435 (let ((tar (string-append (assoc-ref %build-inputs
436 "tar")
437 "/bin/tar"))
438 (PATH (string-append (assoc-ref %build-inputs
439 "gzip")
440 "/bin"))
441 (install-opentype-fonts
442 (lambda (fonts-dir out)
443 (copy-recursively fonts-dir
444 (string-append (assoc-ref %outputs out)
445 "/share/fonts/opentype")))))
446 (setenv "PATH" PATH)
447 (system* tar "xvf" (assoc-ref %build-inputs "source"))
448 (chdir (string-append "source-han-sans-" ,version "R"))
449 (install-opentype-fonts "OTC" "out")
450 (install-opentype-fonts "SubsetOTF/CN" "cn")
451 (install-opentype-fonts "SubsetOTF/JP" "jp")
452 (install-opentype-fonts "SubsetOTF/KR" "kr")
453 (install-opentype-fonts "SubsetOTF/TW" "tw")
454 (for-each delete-file (find-files %output "\\.zip$"))))))
455 (native-inputs
456 `(("gzip" ,gzip)
457 ("tar" ,tar)))
458 (home-page "https://github.com/adobe-fonts/source-han-sans")
459 (synopsis "Pan-CJK fonts")
460 (description
461 "Source Han Sans is a sans serif Pan-CJK font family that is offered in
462 seven weights: ExtraLight, Light, Normal, Regular, Medium, Bold, and Heavy.
463 And in several OpenType/CFF-based deployment configurations to accommodate
464 various system requirements or limitations. As the name suggests, Pan-CJK
465 fonts are intended to support the characters necessary to render or display
466 text in Simplified Chinese, Traditional Chinese, Japanese, and Korean.")
467 (license license:silofl1.1)))
468
469 (define-public font-wqy-zenhei
470 (package
471 (name "font-wqy-zenhei")
472 (version "0.9.45")
473 (source (origin
474 (method url-fetch)
475 (uri (string-append
476 "mirror://sourceforge/wqy/wqy-zenhei-"
477 version ".tar.gz"))
478 (file-name (string-append "wqy-zenhei-" version ".tar.gz"))
479 (sha256
480 (base32
481 "1mkmxq8g2hjcglb3zajfqj20r4r88l78ymsp2xyl5yav8w3f7dz4"))))
482 (build-system trivial-build-system)
483 (arguments
484 `(#:modules ((guix build utils))
485 #:builder
486 (begin
487 (use-modules (guix build utils))
488 (let ((PATH (string-append (assoc-ref %build-inputs "tar") "/bin:"
489 (assoc-ref %build-inputs "gzip") "/bin"))
490 (font-dir (string-append (assoc-ref %outputs "out")
491 "/share/fonts/wenquanyi/")))
492 (setenv "PATH" PATH)
493 (mkdir-p font-dir)
494 (system* "tar" "xvf" (assoc-ref %build-inputs "source"))
495 (chdir "wqy-zenhei")
496 (copy-file "wqy-zenhei.ttc"
497 (string-append font-dir "wqy-zenhei.ttc"))))))
498 (native-inputs
499 `(("gzip" ,gzip)
500 ("tar" ,tar)))
501 (home-page "http://wenq.org/wqy2/")
502 (synopsis "CJK font")
503 (description
504 "WenQuanYi Zen Hei is a Hei-Ti style (sans-serif type) Chinese outline
505 font. It is designed for general purpose text formatting and on-screen
506 display of Chinese characters and symbols from many other languages.
507 WenQuanYi Zen Hei provides a rather complete coverage to Chinese Hanzi glyphs,
508 including both simplified and traditional forms. The total glyph number in
509 this font is over 35,000, including over 21,000 Chinese Hanzi. This font has
510 full coverage to GBK(CP936) charset, CJK Unified Ideographs, as well as the
511 code-points needed for zh_cn, zh_sg, zh_tw, zh_hk, zh_mo, ja (Japanese) and
512 ko (Korean) locales for fontconfig.")
513 ;; GPLv2 with font embedding exception
514 (license license:gpl2)))
515
516 (define-public font-tex-gyre
517 (package
518 (name "font-tex-gyre")
519 (version "2.005")
520 (source
521 (origin
522 (method url-fetch)
523 (uri (string-append "http://www.gust.org.pl/projects/e-foundry/"
524 "tex-gyre/whole/tg-" version "otf.zip"))
525 (sha256
526 (base32
527 "0kph9l3g7jb2bpmxdbdg5zl56wacmnvdvsdn7is1gc750sqvsn31"))))
528 (build-system trivial-build-system)
529 (arguments
530 `(#:modules ((guix build utils))
531 #:builder
532 (begin
533 (use-modules (guix build utils))
534
535 (let ((unzip (string-append (assoc-ref %build-inputs "unzip")
536 "/bin/unzip"))
537 (font-dir (string-append %output "/share/fonts/opentype")))
538 (mkdir-p font-dir)
539 (system* unzip
540 (assoc-ref %build-inputs "source")
541 "-d" font-dir)))))
542 (native-inputs
543 `(("unzip" ,unzip)))
544 (home-page "http://www.gust.org.pl/projects/e-foundry/tex-gyre/")
545 (synopsis "Remake of Ghostscript fonts")
546 (description "The TeX Gyre collection of fonts is the result of an
547 extensive remake and extension of the freely available base PostScript fonts
548 distributed with Ghostscript version 4.00. The collection contains the
549 following fonts in the OpenType format: Adventor, Bonum, Chorus, Cursor,
550 Heros, Pagella, Schola, Termes.")
551 (license license:gfl1.0)))
552
553 (define-public font-anonymous-pro
554 (package
555 (name "font-anonymous-pro")
556 (version "1.002")
557 (source (origin
558 (method url-fetch)
559 (uri (string-append
560 "http://www.marksimonson.com/assets/content/fonts/"
561 "AnonymousPro-" version ".zip"))
562 (sha256
563 (base32
564 "1asj6lykvxh46czbal7ymy2k861zlcdqpz8x3s5bbpqwlm3mhrl6"))))
565 (build-system trivial-build-system)
566 (arguments
567 `(#:modules ((guix build utils))
568 #:builder
569 (begin
570 (use-modules (guix build utils))
571 (let ((unzip (string-append (assoc-ref %build-inputs "unzip")
572 "/bin/unzip"))
573 (font-dir (string-append %output "/share/fonts/truetype"))
574 (doc-dir (string-append %output "/share/doc/" ,name)))
575 (system* unzip (assoc-ref %build-inputs "source"))
576 (mkdir-p font-dir)
577 (mkdir-p doc-dir)
578 (chdir (string-append "AnonymousPro-" ,version ".001"))
579 (for-each (lambda (ttf)
580 (copy-file ttf
581 (string-append font-dir "/" ttf)))
582 (find-files "." "\\.ttf$"))
583 (for-each (lambda (doc)
584 (copy-file doc
585 (string-append doc-dir "/" doc)))
586 (find-files "." "\\.txt$"))))))
587 (native-inputs
588 `(("unzip" ,unzip)))
589 (home-page "http://www.marksimonson.com/fonts/view/anonymous-pro")
590 (synopsis "Fixed-width fonts designed with coding in mind")
591 (description "Anonymous Pro is a family of four fixed-width fonts designed
592 with coding in mind. Anonymous Pro features an international, Unicode-based
593 character set, with support for most Western and Central European Latin-based
594 languages, plus Greek and Cyrillic.")
595 (license license:silofl1.1)))
596
597 (define-public font-gnu-unifont
598 (package
599 (name "font-gnu-unifont")
600 (version "8.0.01")
601 (source (origin
602 (method url-fetch)
603 (uri (string-append
604 "mirror://gnu/unifont/unifont-8.0.01/unifont-"
605 version ".tar.gz"))
606 (sha256
607 (base32
608 "176bzc2y3i49xavrmbyyz5lkqp0qq3bkj7rjrl197kib873by82b"))))
609 (build-system gnu-build-system)
610 (outputs '("out" ; TrueType version
611 "pcf" ; PCF (bitmap) version
612 "psf" ; PSF (console) version
613 "bin" ; Utilities to manipulate '.hex' format
614 ))
615 (arguments
616 '(#:parallel-build? #f ; parallel build fails
617 #:tests? #f ; no check target
618 #:phases
619 (modify-phases %standard-phases
620 (replace 'configure
621 (lambda _
622 (setenv "CC" "gcc")))
623 (replace
624 'install
625 (lambda* (#:key outputs #:allow-other-keys)
626 (let* ((ttf (string-append (assoc-ref outputs "out")
627 "/share/fonts/truetype"))
628 (pcf (string-append (assoc-ref outputs "pcf")
629 "/share/fonts/misc"))
630 (psf (string-append (assoc-ref outputs "psf")
631 "/share/consolefonts"))
632 (bin (assoc-ref outputs "bin")))
633 (system* "make"
634 (string-append "PREFIX=" bin)
635 (string-append "TTFDEST=" ttf)
636 (string-append "PCFDEST=" pcf)
637 (string-append "CONSOLEDEST=" psf)
638 "install")
639 ;; Move Texinfo file to the right place.
640 (mkdir (string-append bin "/share/info"))
641 (rename-file (string-append bin "/share/unifont/unifont.info.gz")
642 (string-append bin "/share/info/unifont.info.gz"))
643 #t))))))
644 (inputs
645 `(("perl" ,perl))) ; for utilities
646 (synopsis
647 "Large bitmap font covering Unicode's Basic Multilingual Plane")
648 (description
649 "GNU Unifont is a bitmap font covering essentially all of
650 Unicode's Basic Multilingual Plane. The package also includes
651 utilities to ease adding new glyphs to the font.")
652 (home-page "http://unifoundry.com/unifont.html")
653 (license license:gpl2+)))
654
655 (define-public font-google-noto
656 (package
657 (name "font-google-noto")
658 (version "20150929")
659 (source (origin
660 (method url-fetch)
661 (uri (string-append "https://noto-website-2.storage.googleapis.com/"
662 "pkgs/Noto-hinted.zip"))
663 (sha256
664 (base32
665 "13jhpqzhsqhyby8n0ksqg155a3jyaif3nzj9anzbq8s2gn1xjyd9"))))
666 (build-system trivial-build-system)
667 (arguments
668 `(#:modules ((guix build utils))
669 #:builder (begin
670 (use-modules (guix build utils)
671 (srfi srfi-26))
672
673 (let ((PATH (string-append (assoc-ref %build-inputs
674 "unzip")
675 "/bin"))
676 (font-dir (string-append %output
677 "/share/fonts/truetype")))
678 (setenv "PATH" PATH)
679 (system* "unzip" (assoc-ref %build-inputs "source"))
680
681 (mkdir-p font-dir)
682 (for-each (lambda (ttf)
683 (copy-file ttf
684 (string-append font-dir "/" ttf)))
685 (find-files "." "\\.ttf$"))
686 (for-each (lambda (otf)
687 (copy-file otf
688 (string-append font-dir "/" otf)))
689 (find-files "." "\\.otf$"))))))
690 (native-inputs `(("unzip" ,unzip)))
691 (home-page "https://www.google.com/get/noto/")
692 (synopsis "Fonts aimed to cover all languages")
693 (description "Googe Noto Fonts is a family of fonts aimed to support all
694 languages with a consistent look and aesthetic. It's goal is to have no Unicode
695 symbols unable to be displayed properly.")
696 (license license:silofl1.1)))
697
698 (define-public font-un
699 (package
700 (name "font-un")
701 (version "1.0.2-080608")
702 ;; The upstream server at kldp.net is serving us broken MIME.
703 ;; See <http://bugs.gnu.org/22908>.
704 (source (origin
705 (method url-fetch)
706 (uri (list
707 (string-append
708 "http://krosos.sdf.org/static/unix/"
709 "un-fonts-core-" version ".tar.gz")
710 ;; XXX: The upstream server at kldp.net
711 (string-append
712 "https://kldp.net/projects/unfonts/download/4695?filename="
713 "un-fonts-core-" version ".tar.gz")))
714 (file-name (string-append name "-" version ".tar.gz"))
715 (sha256
716 (base32
717 "13liaz2pmww3aqabm55la5npd08m1skh334ky7qfidxaz5s742iv"))))
718 (build-system trivial-build-system)
719 (arguments
720 `(#:modules ((guix build utils))
721 #:builder
722 (begin
723 (use-modules (guix build utils))
724
725 (let ((tar (string-append (assoc-ref %build-inputs "tar")
726 "/bin/tar"))
727 (PATH (string-append (assoc-ref %build-inputs "gzip")
728 "/bin"))
729 (font-dir (string-append %output "/share/fonts/truetype"))
730 (doc-dir (string-append %output "/share/doc/" ,name)))
731 (setenv "PATH" PATH)
732 (system* tar "xvf" (assoc-ref %build-inputs "source"))
733 (mkdir-p font-dir)
734 (mkdir-p doc-dir)
735 (chdir (string-append "un-fonts"))
736 (for-each (lambda (ttf)
737 (copy-file ttf
738 (string-append font-dir "/"
739 (basename ttf))))
740 (find-files "." "\\.ttf$"))
741 (for-each (lambda (doc)
742 (copy-file doc
743 (string-append doc-dir "/"
744 (basename doc))))
745 '("COPYING" "README"))))))
746 (native-inputs
747 `(("tar" ,tar)
748 ("gzip" ,gzip)))
749 (home-page "https://kldp.net/projects/unfonts/")
750 (synopsis "Collection of Korean fonts")
751 (description
752 "Un-fonts is a family of mainly Korean fonts.
753 It contains the following fonts and styles:
754
755 @enumerate
756 @item UnBatang, UnBatangBold: serif;
757 @item UnDotum, UnDotumBold: sans-serif;
758 @item UnGraphic, UnGraphicBold: sans-serif style;
759 @item UnDinaru, UnDinaruBold, UnDinaruLight;
760 @item UnPilgi, UnPilgiBold: script;
761 @item UnGungseo: cursive, brush-stroke.
762 @end enumerate\n")
763 (license license:gpl2+)))