Mirror of GNU Guix
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

866 lines
37 KiB

Use #:prefix instead of #:renamer with 'symbol-prefix-proc'. * gnu/packages/abiword.scm, gnu/packages/admin.scm, gnu/packages/aidc.scm, gnu/packages/backup.scm, gnu/packages/bittorrent.scm, gnu/packages/boost.scm, gnu/packages/compression.scm, gnu/packages/cryptsetup.scm, gnu/packages/curl.scm, gnu/packages/cyrus-sasl.scm, gnu/packages/dc.scm, gnu/packages/emacs.scm, gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm, gnu/packages/gimp.scm, gnu/packages/gkrellm.scm, gnu/packages/gl.scm, gnu/packages/glib.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm, gnu/packages/gnutls.scm, gnu/packages/gnuzilla.scm, gnu/packages/gsasl.scm, gnu/packages/gtk.scm, gnu/packages/gv.scm, gnu/packages/image.scm, gnu/packages/indent.scm, gnu/packages/inkscape.scm, gnu/packages/lesstif.scm, gnu/packages/links.scm, gnu/packages/lisp.scm, gnu/packages/lsh.scm, gnu/packages/lsof.scm, gnu/packages/maths.scm, gnu/packages/mp3.scm, gnu/packages/openssl.scm, gnu/packages/ots.scm, gnu/packages/pciutils.scm, gnu/packages/pcre.scm, gnu/packages/pdf.scm, gnu/packages/pulseaudio.scm, gnu/packages/python.scm, gnu/packages/slim.scm, gnu/packages/ssh.scm, gnu/packages/texlive.scm, gnu/packages/vim.scm, gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wv.scm, gnu/packages/xiph.scm, gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/packages/yasm.scm, gnu/packages/zip.scm, guix/build/cmake-build-system.scm, guix/build/perl-build-system.scm, guix/build/python-build-system.scm, guix/download.scm: Replaces uses of #:renamer and 'symbol-prefix-proc' with #:prefix.
7 years ago
gnu packages: Clean up synopses and descriptions. * gnu/packages/admin.scm, gnu/packages/algebra.scm, gnu/packages/audio.scm, gnu/packages/backup.scm, gnu/packages/base.scm, gnu/packages/bittorrent.scm, gnu/packages/code.scm, gnu/packages/compression.scm, gnu/packages/databases.scm, gnu/packages/enchant.scm, gnu/packages/firmware.scm, gnu/packages/fonts.scm, gnu/packages/freedesktop.scm, gnu/packages/games.scm, gnu/packages/gd.scm, gnu/packages/gl.scm, gnu/packages/gnome.scm, gnu/packages/gsasl.scm, gnu/packages/gstreamer.scm, gnu/packages/gtk.scm, gnu/packages/guile.scm, gnu/packages/haskell.scm, gnu/packages/language.scm, gnu/packages/lesstif.scm, gnu/packages/libreoffice.scm, gnu/packages/linux.scm, gnu/packages/llvm.scm, gnu/packages/maths.scm, gnu/packages/mcrypt.scm, gnu/packages/mit-krb5.scm, gnu/packages/mp3.scm, gnu/packages/ncdu.scm, gnu/packages/networking.scm, gnu/packages/ntp.scm, gnu/packages/ocaml.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm, gnu/packages/perl.scm, gnu/packages/pretty-print.scm, gnu/packages/pulseaudio.scm, gnu/packages/python.scm, gnu/packages/rdesktop.scm, gnu/packages/rdf.scm, gnu/packages/ruby.scm, gnu/packages/slang.scm, gnu/packages/slim.scm, gnu/packages/telephony.scm, gnu/packages/tls.scm, gnu/packages/tmux.scm, gnu/packages/tre.scm, gnu/packages/unrtf.scm, gnu/packages/version-control.scm, gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wget.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm, gnu/packages/xiph.scm: Fix typos. Trim long lines. Add missing periods in the end of sentences. Use double spaces between sentences. Remove trailing whitespaces.
7 years ago
  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 © 2015, 2016 Leo Famulari <leo@famulari.name>
  10. ;;; Copyright © 2016 Nils Gillmann <niasterisk@grrlz.net>
  11. ;;; Copyright © 2016 Jookia <166291@gmail.com>
  12. ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
  13. ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
  14. ;;;
  15. ;;; This file is part of GNU Guix.
  16. ;;;
  17. ;;; GNU Guix is free software; you can redistribute it and/or modify it
  18. ;;; under the terms of the GNU General Public License as published by
  19. ;;; the Free Software Foundation; either version 3 of the License, or (at
  20. ;;; your option) any later version.
  21. ;;;
  22. ;;; GNU Guix is distributed in the hope that it will be useful, but
  23. ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
  24. ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  25. ;;; GNU General Public License for more details.
  26. ;;;
  27. ;;; You should have received a copy of the GNU General Public License
  28. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
  29. (define-module (gnu packages fonts)
  30. #:use-module (guix utils)
  31. #:use-module ((guix licenses) #:prefix license:)
  32. #:use-module (guix packages)
  33. #:use-module (guix download)
  34. #:use-module (guix build-system gnu)
  35. #:use-module (guix build-system trivial)
  36. #:use-module (gnu packages base)
  37. #:use-module (gnu packages compression)
  38. #:use-module (gnu packages fontutils)
  39. #:use-module (gnu packages perl)
  40. #:use-module (gnu packages pkg-config)
  41. #:use-module (gnu packages python)
  42. #:use-module (gnu packages xorg)
  43. #:use-module (gnu packages zip))
  44. (define-public font-inconsolata
  45. (package
  46. (name "font-inconsolata")
  47. (version "0.80")
  48. (source (origin
  49. (method url-fetch)
  50. (uri "http://www.levien.com/type/myfonts/Inconsolata.otf")
  51. (sha256
  52. (base32
  53. "06js6znbcf7swn8y3b8ki416bz96ay7d3yvddqnvi88lqhbfcq8m"))))
  54. (build-system trivial-build-system)
  55. (arguments
  56. `(#:modules ((guix build utils))
  57. #:builder (begin
  58. (use-modules (guix build utils))
  59. (let ((font-dir (string-append %output
  60. "/share/fonts/opentype"))
  61. (source (assoc-ref %build-inputs "source")))
  62. (mkdir-p font-dir)
  63. (copy-file source
  64. (string-append font-dir "/" "inconsolata.otf"))))))
  65. (native-inputs `(("source" ,source)))
  66. (home-page "http://levien.com/type/myfonts/inconsolata.html")
  67. (synopsis "Monospace font")
  68. (description "A monospace font, designed for code listings and the like,
  69. in print. With attention to detail for high resolution rendering.")
  70. (license license:silofl1.1)))
  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. (let ((PATH (string-append (assoc-ref %build-inputs
  90. "unzip")
  91. "/bin"))
  92. (font-dir (string-append %output
  93. "/share/fonts/truetype"))
  94. (doc-dir (string-append %output "/share/doc/"
  95. ,name "-" ,version)))
  96. (setenv "PATH" PATH)
  97. (system* "unzip" (assoc-ref %build-inputs "source"))
  98. (mkdir-p font-dir)
  99. (mkdir-p doc-dir)
  100. (chdir (string-append "ubuntu-font-family-" ,version))
  101. (for-each (lambda (ttf)
  102. (copy-file ttf
  103. (string-append font-dir "/" ttf)))
  104. (find-files "." "\\.ttf$"))
  105. (for-each (lambda (doc)
  106. (copy-file doc
  107. (string-append doc-dir "/" doc)))
  108. (find-files "." "\\.txt$"))))))
  109. (native-inputs `(("source" ,source)
  110. ("unzip" ,unzip)))
  111. (home-page "http://font.ubuntu.com/")
  112. (synopsis "The Ubuntu Font Family")
  113. (description "The Ubuntu Font Family is a unique, custom designed font
  114. that has a very distinctive look and feel. This package provides the
  115. TrueType (TTF) files.")
  116. (license
  117. (license:non-copyleft
  118. "http://font.ubuntu.com/ufl/ubuntu-font-licence-1.0.txt"
  119. "Ubuntu Font License v1.0"))))
  120. (define-public font-dejavu
  121. (package
  122. (name "font-dejavu")
  123. (version "2.34")
  124. (source (origin
  125. (method url-fetch)
  126. (uri (string-append "mirror://sourceforge/dejavu/"
  127. version "/dejavu-fonts-ttf-"
  128. version ".tar.bz2"))
  129. (sha256
  130. (base32
  131. "0pgb0a3ngamidacmrvasg51ck3gp8gn93w6sf1s8snwzx4x2r9yh"))))
  132. (build-system trivial-build-system)
  133. (arguments
  134. `(#:modules ((guix build utils))
  135. #:builder (begin
  136. (use-modules (guix build utils))
  137. (let ((tar (string-append (assoc-ref %build-inputs
  138. "tar")
  139. "/bin/tar"))
  140. (PATH (string-append (assoc-ref %build-inputs
  141. "bzip2")
  142. "/bin"))
  143. (font-dir (string-append
  144. %output "/share/fonts/truetype"))
  145. (conf-dir (string-append
  146. %output "/share/fontconfig/conf.avail"))
  147. (doc-dir (string-append
  148. %output "/share/doc/" ,name "-" ,version)))
  149. (setenv "PATH" PATH)
  150. (system* tar "xvf" (assoc-ref %build-inputs "source"))
  151. (mkdir-p font-dir)
  152. (mkdir-p conf-dir)
  153. (mkdir-p doc-dir)
  154. (chdir (string-append "dejavu-fonts-ttf-" ,version))
  155. (for-each (lambda (ttf)
  156. (copy-file ttf
  157. (string-append font-dir "/"
  158. (basename ttf))))
  159. (find-files "ttf" "\\.ttf$"))
  160. (for-each (lambda (conf)
  161. (copy-file conf
  162. (string-append conf-dir "/"
  163. (basename conf))))
  164. (find-files "fontconfig" "\\.conf$"))
  165. (for-each (lambda (doc)
  166. (copy-file doc
  167. (string-append doc-dir "/"
  168. (basename doc))))
  169. (find-files "." "\\.txt$|^[A-Z][A-Z]*$"))))))
  170. (native-inputs `(("source" ,source)
  171. ("tar" ,tar)
  172. ("bzip2" ,bzip2)))
  173. (home-page "http://dejavu-fonts.org/")
  174. (synopsis "Vera font family derivate with additional characters")
  175. (description "DejaVu provides an expanded version of the Vera font family
  176. aiming for quality and broader Unicode coverage while retaining the original
  177. Vera style. DejaVu currently works towards conformance with the Multilingual
  178. European Standards (MES-1 and MES-2) for Unicode coverage. The DejaVu fonts
  179. provide serif, sans and monospaced variants.")
  180. (license
  181. (license:x11-style
  182. "http://dejavu-fonts.org/"))))
  183. (define-public font-bitstream-vera
  184. (package
  185. (name "font-bitstream-vera")
  186. (version "1.10")
  187. (source (origin
  188. (method url-fetch)
  189. (uri (string-append "mirror://gnome/sources/ttf-bitstream-vera/"
  190. version "/ttf-bitstream-vera-"
  191. version ".tar.bz2"))
  192. (sha256
  193. (base32
  194. "1p3qs51x5327gnk71yq8cvmxc6wgx79sqxfvxcv80cdvgggjfnyv"))))
  195. (build-system trivial-build-system)
  196. (arguments
  197. `(#:modules ((guix build utils))
  198. #:builder (begin
  199. (use-modules (guix build utils)
  200. (srfi srfi-26))
  201. (let ((tar (string-append (assoc-ref %build-inputs
  202. "tar")
  203. "/bin/tar"))
  204. (PATH (string-append (assoc-ref %build-inputs
  205. "bzip2")
  206. "/bin"))
  207. (font-dir (string-append %output
  208. "/share/fonts/truetype"))
  209. (doc-dir (string-append %output "/share/doc/"
  210. ,name "-" ,version)))
  211. (setenv "PATH" PATH)
  212. (system* tar "xvf" (assoc-ref %build-inputs "source"))
  213. (mkdir-p font-dir)
  214. (mkdir-p doc-dir)
  215. (chdir (string-append "ttf-bitstream-vera-" ,version))
  216. (for-each (lambda (ttf)
  217. (copy-file ttf
  218. (string-append font-dir "/" ttf)))
  219. (find-files "." "\\.ttf$"))
  220. (for-each (lambda (doc)
  221. (copy-file doc
  222. (string-append doc-dir "/" doc)))
  223. (find-files "." "\\.TXT$"))))))
  224. (native-inputs `(("source" ,source)
  225. ("tar" ,tar)
  226. ("bzip2" ,bzip2)))
  227. (home-page "http://www.gnome.org/fonts/")
  228. (synopsis "Bitstream Vera sans-serif typeface")
  229. (description "Vera is a sans-serif typeface from Bitstream, Inc. This
  230. package provides the TrueType (TTF) files.")
  231. (license
  232. (license:x11-style
  233. "http://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts"))))
  234. (define-public font-cantarell
  235. (package
  236. (name "font-abattis-cantarell")
  237. (version "0.0.24")
  238. (source (origin
  239. (method url-fetch)
  240. (uri (string-append "mirror://gnome/sources/cantarell-fonts/"
  241. (version-major+minor version)
  242. "/cantarell-fonts-" version ".tar.xz"))
  243. (sha256
  244. (base32
  245. "0r4jnc2x9yncf40lixjb1pqgpq8rzbi2fz33pshlqzjgx2d69bcw"))))
  246. (build-system gnu-build-system)
  247. (home-page "https://wiki.gnome.org/Projects/CantarellFonts")
  248. (synopsis "Cantarell sans-serif typeface")
  249. (description "The Cantarell font family is a contemporary Humanist
  250. sans-serif designed for on-screen reading. It is used by GNOME@tie{}3.")
  251. (license license:silofl1.1)))
  252. (define-public font-gnu-freefont-ttf
  253. (package
  254. (name "font-gnu-freefont-ttf")
  255. (version "20120503")
  256. (source (origin
  257. (method url-fetch)
  258. (uri (string-append "mirror://gnu/freefont/freefont-src-"
  259. version ".tar.gz"))
  260. (sha256
  261. (base32
  262. "0yk58blhcd4hm7nyincmqq4jrzjjk82wif2zmk1l3y2m4vif4qhd"))))
  263. (build-system gnu-build-system)
  264. (arguments
  265. `(#:phases (modify-phases %standard-phases
  266. (delete 'configure)
  267. (replace 'install
  268. (lambda _
  269. (let ((doc-dir (string-append %output "/share/doc/"
  270. ,name "-" ,version))
  271. (font-dir (string-append %output
  272. "/share/fonts/truetype")))
  273. (mkdir-p doc-dir)
  274. (substitute* "Makefile"
  275. (("\\$\\(TMPDIR\\)") doc-dir)
  276. (("sfd/\\*.ttf") ""))
  277. (system* "make" "ttftar")
  278. (mkdir-p font-dir)
  279. (for-each (lambda (file)
  280. (copy-file file
  281. (string-append font-dir "/"
  282. (basename file))))
  283. (filter
  284. (lambda (file) (string-suffix? "ttf" file))
  285. (find-files "." "")))))))
  286. #:test-target "tests"))
  287. ;; replace python 3 with python 2
  288. ;; python 3 support commits aren't yet released in 20120503
  289. ;; so freefont needs python 2 support in fontforge
  290. (native-inputs `(("fontforge" ,(package (inherit fontforge)
  291. (inputs `(("python-2" ,python-2)
  292. ,@(package-inputs fontforge)))))))
  293. (home-page "http://www.gnu.org/software/freefont/")
  294. (synopsis "Unicode-encoded outline fonts")
  295. (description
  296. "The GNU Freefont project aims to provide a set of free outline
  297. (PostScript Type0, TrueType, OpenType...) fonts covering the ISO
  298. 10646/Unicode UCS (Universal Character Set).")
  299. (license license:gpl3+)
  300. (properties '((upstream-name . "freefont")
  301. (ftp-directory . "/gnu/freefont")))))
  302. (define-public font-liberation
  303. (package
  304. (name "font-liberation")
  305. (version "2.00.1")
  306. (source (origin
  307. (method url-fetch)
  308. (uri (string-append "https://fedorahosted.org/releases/l/i/"
  309. "liberation-fonts/liberation-fonts-ttf-"
  310. version ".tar.gz"))
  311. (sha256
  312. (base32
  313. "010m4zfqan4w04b6bs9pm3gapn9hsb18bmwwgp2p6y6idj52g43q"))))
  314. (build-system trivial-build-system)
  315. (arguments
  316. `(#:modules ((guix build utils))
  317. #:builder
  318. (begin
  319. (use-modules (guix build utils))
  320. (let ((tar (string-append (assoc-ref %build-inputs "tar")
  321. "/bin/tar"))
  322. (PATH (string-append (assoc-ref %build-inputs "gzip")
  323. "/bin"))
  324. (font-dir (string-append %output "/share/fonts/truetype"))
  325. (doc-dir (string-append %output "/share/doc/" ,name)))
  326. (setenv "PATH" PATH)
  327. (system* tar "xvf" (assoc-ref %build-inputs "source"))
  328. (mkdir-p font-dir)
  329. (mkdir-p doc-dir)
  330. (chdir (string-append "liberation-fonts-ttf-" ,version))
  331. (for-each (lambda (ttf)
  332. (copy-file ttf
  333. (string-append font-dir "/"
  334. (basename ttf))))
  335. (find-files "." "\\.ttf$"))
  336. (for-each (lambda (doc)
  337. (copy-file doc
  338. (string-append doc-dir "/"
  339. (basename doc))))
  340. '("AUTHORS" "ChangeLog" "LICENSE" "README" "TODO"))))))
  341. (native-inputs
  342. `(("source" ,source)
  343. ("tar" ,tar)
  344. ("gzip" ,gzip)))
  345. (home-page "https://fedorahosted.org/liberation-fonts/")
  346. (synopsis
  347. "Fonts compatible with Arial, Times New Roman, and Courier New")
  348. (description
  349. "The Liberation font family aims at metric compatibility with
  350. Arial, Times New Roman, and Courier New.
  351. There are three sets:
  352. - Sans (a substitute for Arial, Albany, Helvetica, Nimbus Sans L, and
  353. Bitstream Vera Sans);
  354. - Serif (a substitute for Times New Roman, Thorndale, Nimbus Roman, and
  355. Bitstream Vera Serif);
  356. - Mono (a substitute for Courier New, Cumberland, Courier, Nimbus Mono L,
  357. and Bitstream Vera Sans Mono).
  358. The Liberation Fonts are sponsored by Red Hat.")
  359. (license license:silofl1.1)))
  360. (define-public font-terminus
  361. (package
  362. (name "font-terminus")
  363. (version "4.40")
  364. (source
  365. (origin
  366. (method url-fetch)
  367. (uri (string-append
  368. "mirror://sourceforge/project/terminus-font/terminus-font-"
  369. version
  370. "/terminus-font-"
  371. version
  372. ".tar.gz"))
  373. (sha256
  374. (base32
  375. "0487cyx5h1f0crbny5sg73a22gmym5vk1i7646gy7hgiscj2rxb4"))))
  376. (build-system gnu-build-system)
  377. (native-inputs
  378. `(("pkg-config" ,pkg-config)
  379. ("perl" ,perl)
  380. ("bdftopcf" ,bdftopcf)
  381. ("font-util" ,font-util)
  382. ("mkfontdir" ,mkfontdir)))
  383. (arguments
  384. `(#:configure-flags (list
  385. ;; install fonts into subdirectory of package output
  386. ;; instead of font-util-?.?.?/share/fonts/X11
  387. (string-append "--with-fontrootdir="
  388. %output "/share/fonts/X11"))
  389. #:tests? #f)) ;; No test target in tarball
  390. (home-page "http://terminus-font.sourceforge.net/")
  391. (synopsis "Simple bitmap programming font")
  392. (description "Terminus Font is a clean, fixed width bitmap font, designed
  393. for long (8 and more hours per day) work with computers.")
  394. (license license:silofl1.1)))
  395. (define-public font-adobe-source-han-sans
  396. (package
  397. (name "font-adobe-source-han-sans")
  398. (version "1.004")
  399. (source (origin
  400. (method url-fetch)
  401. (uri (string-append
  402. "https://github.com/adobe-fonts/source-han-sans/archive/"
  403. version "R.tar.gz"))
  404. (file-name (string-append "source-han-sans-" version "R.tar.gz"))
  405. (sha256
  406. (base32
  407. "1ssx0fw90sy6mj8fv8fv4dgzszpqwbmwpjnlx16g4pvaqzdmybbz"))))
  408. (outputs '("out" ; OpenType/CFF Collection (OTC), 121 MiB.
  409. "cn" "jp" "kr" "tw")) ; Region-specific Subset OpenType/CFF.
  410. (build-system trivial-build-system)
  411. (arguments
  412. `(#:modules ((guix build utils))
  413. #:builder
  414. (begin
  415. (use-modules (guix build utils))
  416. (let ((tar (string-append (assoc-ref %build-inputs
  417. "tar")
  418. "/bin/tar"))
  419. (PATH (string-append (assoc-ref %build-inputs
  420. "gzip")
  421. "/bin"))
  422. (install-opentype-fonts
  423. (lambda (fonts-dir out)
  424. (copy-recursively fonts-dir
  425. (string-append (assoc-ref %outputs out)
  426. "/share/fonts/opentype")))))
  427. (setenv "PATH" PATH)
  428. (system* tar "xvf" (assoc-ref %build-inputs "source"))
  429. (chdir (string-append "source-han-sans-" ,version "R"))
  430. (install-opentype-fonts "OTC" "out")
  431. (install-opentype-fonts "SubsetOTF/CN" "cn")
  432. (install-opentype-fonts "SubsetOTF/JP" "jp")
  433. (install-opentype-fonts "SubsetOTF/KR" "kr")
  434. (install-opentype-fonts "SubsetOTF/TW" "tw")
  435. (for-each delete-file (find-files %output "\\.zip$"))))))
  436. (native-inputs
  437. `(("gzip" ,gzip)
  438. ("tar" ,tar)))
  439. (home-page "https://github.com/adobe-fonts/source-han-sans")
  440. (synopsis "Pan-CJK fonts")
  441. (description
  442. "Source Han Sans is a sans serif Pan-CJK font family that is offered in
  443. seven weights: ExtraLight, Light, Normal, Regular, Medium, Bold, and Heavy.
  444. And in several OpenType/CFF-based deployment configurations to accommodate
  445. various system requirements or limitations. As the name suggests, Pan-CJK
  446. fonts are intended to support the characters necessary to render or display
  447. text in Simplified Chinese, Traditional Chinese, Japanese, and Korean.")
  448. (license license:silofl1.1)))
  449. (define-public font-wqy-zenhei
  450. (package
  451. (name "font-wqy-zenhei")
  452. (version "0.9.45")
  453. (source (origin
  454. (method url-fetch)
  455. (uri (string-append
  456. "mirror://sourceforge/wqy/wqy-zenhei-"
  457. version ".tar.gz"))
  458. (file-name (string-append "wqy-zenhei-" version ".tar.gz"))
  459. (sha256
  460. (base32
  461. "1mkmxq8g2hjcglb3zajfqj20r4r88l78ymsp2xyl5yav8w3f7dz4"))))
  462. (build-system trivial-build-system)
  463. (arguments
  464. `(#:modules ((guix build utils))
  465. #:builder
  466. (begin
  467. (use-modules (guix build utils))
  468. (let ((PATH (string-append (assoc-ref %build-inputs "tar") "/bin:"
  469. (assoc-ref %build-inputs "gzip") "/bin"))
  470. (font-dir (string-append (assoc-ref %outputs "out")
  471. "/share/fonts/wenquanyi/")))
  472. (setenv "PATH" PATH)
  473. (mkdir-p font-dir)
  474. (system* "tar" "xvf" (assoc-ref %build-inputs "source"))
  475. (chdir "wqy-zenhei")
  476. (copy-file "wqy-zenhei.ttc"
  477. (string-append font-dir "wqy-zenhei.ttc"))))))
  478. (native-inputs
  479. `(("gzip" ,gzip)
  480. ("tar" ,tar)))
  481. (home-page "http://wenq.org/wqy2/")
  482. (synopsis "CJK font")
  483. (description
  484. "WenQuanYi Zen Hei is a Hei-Ti style (sans-serif type) Chinese outline
  485. font. It is designed for general purpose text formatting and on-screen
  486. display of Chinese characters and symbols from many other languages.
  487. WenQuanYi Zen Hei provides a rather complete coverage to Chinese Hanzi glyphs,
  488. including both simplified and traditional forms. The total glyph number in
  489. this font is over 35,000, including over 21,000 Chinese Hanzi. This font has
  490. full coverage to GBK(CP936) charset, CJK Unified Ideographs, as well as the
  491. code-points needed for zh_cn, zh_sg, zh_tw, zh_hk, zh_mo, ja (Japanese) and
  492. ko (Korean) locales for fontconfig.")
  493. ;; GPLv2 with font embedding exception
  494. (license license:gpl2)))
  495. (define-public font-tex-gyre
  496. (package
  497. (name "font-tex-gyre")
  498. (version "2.005")
  499. (source
  500. (origin
  501. (method url-fetch)
  502. (uri (string-append "http://www.gust.org.pl/projects/e-foundry/"
  503. "tex-gyre/whole/tg-" version "otf.zip"))
  504. (sha256
  505. (base32
  506. "0kph9l3g7jb2bpmxdbdg5zl56wacmnvdvsdn7is1gc750sqvsn31"))))
  507. (build-system trivial-build-system)
  508. (arguments
  509. `(#:modules ((guix build utils))
  510. #:builder
  511. (begin
  512. (use-modules (guix build utils))
  513. (let ((unzip (string-append (assoc-ref %build-inputs "unzip")
  514. "/bin/unzip"))
  515. (font-dir (string-append %output "/share/fonts/opentype")))
  516. (mkdir-p font-dir)
  517. (system* unzip
  518. (assoc-ref %build-inputs "source")
  519. "-d" font-dir)))))
  520. (native-inputs
  521. `(("unzip" ,unzip)))
  522. (home-page "http://www.gust.org.pl/projects/e-foundry/tex-gyre/")
  523. (synopsis "Remake of Ghostscript fonts")
  524. (description "The TeX Gyre collection of fonts is the result of an
  525. extensive remake and extension of the freely available base PostScript fonts
  526. distributed with Ghostscript version 4.00. The collection contains the
  527. following fonts in the OpenType format: Adventor, Bonum, Chorus, Cursor,
  528. Heros, Pagella, Schola, Termes.")
  529. (license license:gfl1.0)))
  530. (define-public font-anonymous-pro
  531. (package
  532. (name "font-anonymous-pro")
  533. (version "1.002")
  534. (source (origin
  535. (method url-fetch)
  536. (uri (string-append
  537. "http://www.marksimonson.com/assets/content/fonts/"
  538. "AnonymousPro-" version ".zip"))
  539. (sha256
  540. (base32
  541. "1asj6lykvxh46czbal7ymy2k861zlcdqpz8x3s5bbpqwlm3mhrl6"))))
  542. (build-system trivial-build-system)
  543. (arguments
  544. `(#:modules ((guix build utils))
  545. #:builder
  546. (begin
  547. (use-modules (guix build utils))
  548. (let ((unzip (string-append (assoc-ref %build-inputs "unzip")
  549. "/bin/unzip"))
  550. (font-dir (string-append %output "/share/fonts/truetype"))
  551. (doc-dir (string-append %output "/share/doc/" ,name)))
  552. (system* unzip (assoc-ref %build-inputs "source"))
  553. (mkdir-p font-dir)
  554. (mkdir-p doc-dir)
  555. (chdir (string-append "AnonymousPro-" ,version ".001"))
  556. (for-each (lambda (ttf)
  557. (copy-file ttf
  558. (string-append font-dir "/" ttf)))
  559. (find-files "." "\\.ttf$"))
  560. (for-each (lambda (doc)
  561. (copy-file doc
  562. (string-append doc-dir "/" doc)))
  563. (find-files "." "\\.txt$"))))))
  564. (native-inputs
  565. `(("unzip" ,unzip)))
  566. (home-page "http://www.marksimonson.com/fonts/view/anonymous-pro")
  567. (synopsis "Fixed-width fonts designed with coding in mind")
  568. (description "Anonymous Pro is a family of four fixed-width fonts designed
  569. with coding in mind. Anonymous Pro features an international, Unicode-based
  570. character set, with support for most Western and Central European Latin-based
  571. languages, plus Greek and Cyrillic.")
  572. (license license:silofl1.1)))
  573. (define-public font-gnu-unifont
  574. (package
  575. (name "font-gnu-unifont")
  576. (version "9.0.01")
  577. (source (origin
  578. (method url-fetch)
  579. (uri (string-append
  580. "mirror://gnu/unifont/unifont-" version "/unifont-"
  581. version ".tar.gz"))
  582. (sha256
  583. (base32
  584. "14z4lx6asa94i73m19lsdgzqjn9xzi8320h3dafvzq9ima94pm9b"))))
  585. (build-system gnu-build-system)
  586. (outputs '("out" ; TrueType version
  587. "pcf" ; PCF (bitmap) version
  588. "psf" ; PSF (console) version
  589. "bin" ; Utilities to manipulate '.hex' format
  590. ))
  591. (arguments
  592. '(#:parallel-build? #f ; parallel build fails
  593. #:tests? #f ; no check target
  594. #:phases
  595. (modify-phases %standard-phases
  596. (replace 'configure
  597. (lambda _
  598. (setenv "CC" "gcc")))
  599. (replace
  600. 'install
  601. (lambda* (#:key outputs #:allow-other-keys)
  602. (let* ((ttf (string-append (assoc-ref outputs "out")
  603. "/share/fonts/truetype"))
  604. (pcf (string-append (assoc-ref outputs "pcf")
  605. "/share/fonts/misc"))
  606. (psf (string-append (assoc-ref outputs "psf")
  607. "/share/consolefonts"))
  608. (bin (assoc-ref outputs "bin")))
  609. (system* "make"
  610. (string-append "PREFIX=" bin)
  611. (string-append "TTFDEST=" ttf)
  612. (string-append "PCFDEST=" pcf)
  613. (string-append "CONSOLEDEST=" psf)
  614. "install")
  615. ;; Move Texinfo file to the right place.
  616. (mkdir (string-append bin "/share/info"))
  617. (rename-file (string-append bin "/share/unifont/unifont.info.gz")
  618. (string-append bin "/share/info/unifont.info.gz"))
  619. #t))))))
  620. (inputs
  621. `(("perl" ,perl))) ; for utilities
  622. (synopsis
  623. "Large bitmap font covering Unicode's Basic Multilingual Plane")
  624. (description
  625. "GNU Unifont is a bitmap font covering essentially all of
  626. Unicode's Basic Multilingual Plane. The package also includes
  627. utilities to ease adding new glyphs to the font.")
  628. (home-page "http://unifoundry.com/unifont.html")
  629. (license license:gpl2+)))
  630. (define-public font-google-noto
  631. (package
  632. (name "font-google-noto")
  633. (version "20150929")
  634. (source (origin
  635. (method url-fetch)
  636. (uri (string-append "https://noto-website-2.storage.googleapis.com/"
  637. "pkgs/Noto-hinted.zip"))
  638. (sha256
  639. (base32
  640. "13jhpqzhsqhyby8n0ksqg155a3jyaif3nzj9anzbq8s2gn1xjyd9"))))
  641. (build-system trivial-build-system)
  642. (arguments
  643. `(#:modules ((guix build utils))
  644. #:builder (begin
  645. (use-modules (guix build utils)
  646. (srfi srfi-26))
  647. (let ((PATH (string-append (assoc-ref %build-inputs
  648. "unzip")
  649. "/bin"))
  650. (font-dir (string-append %output
  651. "/share/fonts/truetype")))
  652. (setenv "PATH" PATH)
  653. (system* "unzip" (assoc-ref %build-inputs "source"))
  654. (mkdir-p font-dir)
  655. (for-each (lambda (ttf)
  656. (copy-file ttf
  657. (string-append font-dir "/" ttf)))
  658. (find-files "." "\\.ttf$"))
  659. (for-each (lambda (otf)
  660. (copy-file otf
  661. (string-append font-dir "/" otf)))
  662. (find-files "." "\\.otf$"))))))
  663. (native-inputs `(("unzip" ,unzip)))
  664. (home-page "https://www.google.com/get/noto/")
  665. (synopsis "Fonts aimed to cover all languages")
  666. (description "Googe Noto Fonts is a family of fonts aimed to support all
  667. languages with a consistent look and aesthetic. It's goal is to have no Unicode
  668. symbols unable to be displayed properly.")
  669. (license license:silofl1.1)))
  670. (define-public font-un
  671. (package
  672. (name "font-un")
  673. (version "1.0.2-080608")
  674. ;; The upstream server at kldp.net is serving us broken MIME.
  675. ;; See <http://bugs.gnu.org/22908>.
  676. (source (origin
  677. (method url-fetch)
  678. (uri (list
  679. (string-append
  680. "http://krosos.sdf.org/static/unix/"
  681. "un-fonts-core-" version ".tar.gz")
  682. ;; XXX: The upstream server at kldp.net
  683. (string-append
  684. "https://kldp.net/projects/unfonts/download/4695?filename="
  685. "un-fonts-core-" version ".tar.gz")))
  686. (file-name (string-append name "-" version ".tar.gz"))
  687. (sha256
  688. (base32
  689. "13liaz2pmww3aqabm55la5npd08m1skh334ky7qfidxaz5s742iv"))))
  690. (build-system trivial-build-system)
  691. (arguments
  692. `(#:modules ((guix build utils))
  693. #:builder
  694. (begin
  695. (use-modules (guix build utils))
  696. (let ((tar (string-append (assoc-ref %build-inputs "tar")
  697. "/bin/tar"))
  698. (PATH (string-append (assoc-ref %build-inputs "gzip")
  699. "/bin"))
  700. (font-dir (string-append %output "/share/fonts/truetype"))
  701. (doc-dir (string-append %output "/share/doc/" ,name)))
  702. (setenv "PATH" PATH)
  703. (system* tar "xvf" (assoc-ref %build-inputs "source"))
  704. (mkdir-p font-dir)
  705. (mkdir-p doc-dir)
  706. (chdir (string-append "un-fonts"))
  707. (for-each (lambda (ttf)
  708. (copy-file ttf
  709. (string-append font-dir "/"
  710. (basename ttf))))
  711. (find-files "." "\\.ttf$"))
  712. (for-each (lambda (doc)
  713. (copy-file doc
  714. (string-append doc-dir "/"
  715. (basename doc))))
  716. '("COPYING" "README"))))))
  717. (native-inputs
  718. `(("tar" ,tar)
  719. ("gzip" ,gzip)))
  720. (home-page "https://kldp.net/projects/unfonts/")
  721. (synopsis "Collection of Korean fonts")
  722. (description
  723. "Un-fonts is a family of mainly Korean fonts.
  724. It contains the following fonts and styles:
  725. @enumerate
  726. @item UnBatang, UnBatangBold: serif;
  727. @item UnDotum, UnDotumBold: sans-serif;
  728. @item UnGraphic, UnGraphicBold: sans-serif style;
  729. @item UnDinaru, UnDinaruBold, UnDinaruLight;
  730. @item UnPilgi, UnPilgiBold: script;
  731. @item UnGungseo: cursive, brush-stroke.
  732. @end enumerate\n")
  733. (license license:gpl2+)))
  734. (define-public font-fantasque-sans
  735. (package
  736. (name "font-fantasque-sans")
  737. (version "1.7.1")
  738. (source
  739. (origin
  740. (method url-fetch)
  741. (uri (string-append "https://github.com/belluzj/fantasque-sans/"
  742. "archive/v" version ".tar.gz"))
  743. (file-name (string-append name "-" version ".tar.gz"))
  744. (sha256
  745. (base32
  746. "07fpy53k2x2nz5q61swkab6cfk9gw2kc4x4brsj6zjgbm16fap85"))))
  747. (build-system gnu-build-system)
  748. (native-inputs
  749. `(("ttfautohint" ,ttfautohint)
  750. ("woff-tools" ,woff-tools)
  751. ("fontforge" ,fontforge)
  752. ("woff2" ,woff2)
  753. ("ttf2eot" ,ttf2eot)))
  754. (arguments
  755. `(#:tests? #f ;test target intended for visual inspection
  756. #:phases (modify-phases %standard-phases
  757. (delete 'configure) ;no configuration
  758. (replace 'install
  759. ;; 'make install' wants to install to ~/.fonts, install to
  760. ;; output instead.
  761. (lambda* (#:key outputs #:allow-other-keys)
  762. (let* ((out (assoc-ref outputs "out"))
  763. (font-dir (string-append out "/share/fonts"))
  764. (truetype-dir (string-append font-dir "/truetype"))
  765. (opentype-dir (string-append font-dir "/opentype"))
  766. (webfonts-dir (string-append font-dir "/webfonts")))
  767. (copy-recursively "OTF" opentype-dir)
  768. (for-each (lambda (f) (install-file f truetype-dir))
  769. (find-files "." "\\.ttf$"))
  770. (copy-recursively "Webfonts" webfonts-dir)
  771. #t))))))
  772. (synopsis "Font family with a monospaced variant for programmers")
  773. (description
  774. "Fantasque Sans Mono is a programming font designed with functionality in
  775. mind. The font includes a bold version and a good italic version with new
  776. glyph designs, not just an added slant.")
  777. (home-page "https://fontlibrary.org/en/font/fantasque-sans-mono")
  778. (license license:silofl1.1)))
  779. (define-public font-hack
  780. (package
  781. (name "font-hack")
  782. (version "2.020")
  783. (source (origin
  784. (method url-fetch)
  785. (uri (string-append
  786. "https://github.com/chrissimpkins/Hack/releases/download/v"
  787. version "/Hack-v"
  788. (string-replace-substring version "." "_")
  789. "-ttf.zip"))
  790. (sha256
  791. (base32
  792. "16kkmc3psckw1b7k07ccn1gi5ymhlg9djh43nqjzg065g6p6d184"))))
  793. (build-system trivial-build-system)
  794. (arguments
  795. `(#:modules ((guix build utils))
  796. #:builder (begin
  797. (use-modules (guix build utils)
  798. (srfi srfi-26))
  799. (let ((PATH (string-append (assoc-ref %build-inputs
  800. "unzip")
  801. "/bin"))
  802. (font-dir (string-append %output
  803. "/share/fonts/truetype"))
  804. (doc-dir (string-append %output "/share/doc/"
  805. ,name "-" ,version)))
  806. (setenv "PATH" PATH)
  807. (system* "unzip" (assoc-ref %build-inputs "source"))
  808. (mkdir-p font-dir)
  809. (mkdir-p doc-dir)
  810. (for-each (lambda (ttf)
  811. (copy-file ttf
  812. (string-append font-dir "/" ttf)))
  813. (find-files "." "\\.ttf$"))
  814. (for-each (lambda (doc)
  815. (copy-file doc
  816. (string-append doc-dir "/" doc)))
  817. (find-files "." "\\.txt$"))))))
  818. (native-inputs
  819. `(("source" ,source)
  820. ("unzip" ,unzip)))
  821. (home-page "https://sourcefoundry.org/hack/")
  822. (synopsis "Typeface designed for sourcecode")
  823. (description
  824. "Hack is designed to be a workhorse typeface for code, it expands upon
  825. the Bitstream Vera & DejaVu projects, provides 1561 glyphs including
  826. powerline support.")
  827. (license (license:x11-style
  828. "https://github.com/chrissimpkins/Hack/blob/master/LICENSE.md"
  829. "Hack Open Font License v2.0"))))