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