summaryrefslogtreecommitdiff
path: root/gnu/packages/fonts.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/fonts.scm')
-rw-r--r--gnu/packages/fonts.scm374
1 files changed, 295 insertions, 79 deletions
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index c21d7c183d..fd8396eae9 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -34,8 +34,8 @@
;;; Copyright © 2020 John Soo <jsoo1@asu.edu>
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
;;; Copyright © 2020, 2021 Julien Lepiller <julien@lepiller.eu>
-;;; Copyright © 2020, 2024 Zhu Zihao <all_but_last@163.com>
-;;; Copyright © 2020, 2021, 2022 Simen Endsjø <simendsjo@gmail.com>
+;;; Copyright © 2020, 2024, 2025 Zhu Zihao <all_but_last@163.com>
+;;; Copyright © 2020-2022, 2025 Simen Endsjø <contact@simendsjo.me>
;;; Copyright © 2020 Tim Van den Langenbergh <tmt_vdl@gmx.com>
;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
;;; Copyright © 2021 Antoine Côté <antoine.cote@posteo.net>
@@ -47,7 +47,7 @@
;;; Copyright © 2022 Kitzman <kitzman@disroot.org>
;;; Copyright © 2021 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
-;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2022 Jose G Perez Taveras <josegpt27@gmail.com>
;;; Copyright © 2022 Hilton Chain <hako@ultrarare.space>
@@ -269,31 +269,33 @@ glyphset has also been extended, supporting now a wider number of languages.")
(license license:silofl1.1))))
(define-public font-ibm-plex
- (package
- (name "font-ibm-plex")
- (version "6.4.2")
- ;; We prefer git-fetch since it lets us get the opentype, truetype and web
- ;; fonts all in one download. The zip archive releases separate the
- ;; opentype, truetype and web fonts into three separate archives.
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/IBM/plex")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "00lzbm1b7zbx5q3p0s8fh9q9zj6z4k01fn7n177iybh9xn4jgx0p"))))
- (build-system font-build-system)
- (outputs '("out" "ttf" "woff"))
- (home-page "https://github.com/IBM/plex")
- (synopsis "IBM Plex typeface")
- (description
- "This package provides the Plex font family. It comes in a Sans, Serif,
+ (let ((commit "89cba80dad75561262e758f4b6ddd474c5119796")
+ (revision "0"))
+ (package
+ (name "font-ibm-plex")
+ (version (git-version "6.4.2" revision commit))
+ ;; We prefer git-fetch since it lets us get the opentype, truetype and web
+ ;; fonts all in one download. The zip archive releases separate the
+ ;; opentype, truetype and web fonts into three separate archives.
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/IBM/plex")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ddc3471m2jhbdq7cfxnimsi4v31n69xlw8rxd2hyphyg79nqfrl"))))
+ (build-system font-build-system)
+ (outputs '("out" "ttf" "woff"))
+ (synopsis "IBM Plex typeface")
+ (description
+ "This package provides the Plex font family. It comes in a Sans, Serif,
Mono and Sans Condensed, all with roman and true italics. The fonts have been
designed to work well in user interface (UI) environments as well as other
mediums.")
- (license license:silofl1.1)))
+ (home-page "https://github.com/IBM/plex")
+ (license license:silofl1.1))))
(define-public font-lilex
(package
@@ -990,41 +992,96 @@ terminal applications, and user interfaces that involve both Latin and Japanese
text.")
(license license:silofl1.1)))
-(define-public font-cns11643
- ;; Since upstream doesn't provide any version numbers, the date of the last
- ;; edit is used, taken from https://data.gov.tw/dataset/5961
- ;; XXX: The source is also updated in-place, so it may be desirable to mirror
- ;; it elsewhere to avoid suddenly losing the current source file.
+(define-public font-cns11643-sung
(package
- (name "font-cns11643")
- (version "98.1.20180605")
- (source (origin
- (method url-fetch)
- (uri "http://www.cns11643.gov.tw/AIDB/Open_Data.zip")
- (sha256
- (base32
- "000a9whrjr1cd4pjc23pbl60zwkq3wcb5g61p9qi7fn3hwkp0kyw"))))
+ (name "font-cns11643-sung")
+ (version "20250718") ; see https://www.cns11643.gov.tw/opendata/release.txt
+ (source
+ (origin
+ (method url-fetch/zipbomb)
+ (uri (string-append "https://web.archive.org/web/20250914051659if_/"
+ "https://cns11643.gov.tw/opendata/Fonts_Sung.zip"))
+ (file-name (string-append name "-" version))
+ (sha256
+ (base32
+ "0b570p5jnw4bqhapalascrx8z1ybgf1c9xj691f5g48pq1jxrhqb"))))
(build-system font-build-system)
- (home-page "http://www.cns11643.gov.tw/AIDB/welcome.do")
- (synopsis "CJK TrueType fonts, TW-Kai and TW-Sung")
+ (home-page "https://www.cns11643.gov.tw")
+ (synopsis "CJK TrueType fonts, TW-Sung")
(description
"@code{CNS 11643} character set (Chinese National Standard, or Chinese
Standard Interchange Code) is the standard character set of the Republic of
China (Taiwan) for Chinese Characters and other Unicode symbols. Contained
-are six TrueType fonts based on two script styles, Regular script (Kai), and
-Sung/Ming script, each with three variants:
+are three variant of TrueType fonts in Sung/Ming script:
@itemize
-@item @code{CNS 11643} (@code{TW-Kai} and @code{TW-Sung}): Tens of thousands
-of CJK characters from frequency tables published by the Taiwanese
-Ministry of Education. ISO 10646 and Unicode compatible encoding.
-@item @code{Big-5 Plus}: Several thousand frequently used CJK characters
-encoded in the user defined area of the Big-5 code.
-@item @code{Big-5 Extended}: A Big-5 character set based on the
-@code{Big-5 Plus} and @code{CNS 11643} character sets.
+@item @code{TW-Sung-98_1.ttf}: CJK characters in the Basic Multilingual Plane
+of Unicode.
+@item @code{TW-Sung-Ext-B-98_1.ttf}: CJK characters in the CJK Unified
+Ideographs Extension B of Unicode.
+@item @code{TW-Sung-Plus-98_1.ttf}: CJK characters in the Plane 15 (Private Use)
+of Unicode.
@end itemize\n")
- (license (license:non-copyleft
- "http://data.gov.tw/license")))) ; CC-BY 4.0 compatible
+ (license license:silofl1.1)))
+
+(define-public font-cns11643-kai
+ (package
+ (inherit font-cns11643-sung)
+ (name "font-cns11643-kai")
+ (version "20250718")
+ (source
+ (origin
+ (method url-fetch/zipbomb)
+ (uri (string-append "https://web.archive.org/web/20250914051659if_/"
+ "https://cns11643.gov.tw/opendata/Fonts_Kai.zip"))
+ (file-name (string-append name "-" version))
+ (sha256
+ (base32
+ "10xylq0p8qhi8rlq62rhnfskfy6kdlh4ay8v7sp28xxl2291ll1j"))))
+ (synopsis "CJK TrueType fonts, TW-Kai")
+ (description
+ "@code{CNS 11643} character set (Chinese National Standard, or Chinese
+Standard Interchange Code) is the standard character set of the Republic of
+China (Taiwan) for Chinese Characters and other Unicode symbols. Contained
+are three variant of TrueType fonts in Regular script (Kai):
+
+@itemize
+@item @code{TW-Kai-98_1.ttf}: CJK characters in the Basic Multilingual Plane
+of Unicode.
+@item @code{TW-Kai-Ext-B-98_1.ttf}: CJK characters in the CJK Unified
+Ideographs Extension B of Unicode.
+@item @code{TW-Kai-Plus-98_1.ttf}: CJK characters in the Plane 15 (Private Use)
+of Unicode.
+@end itemize\n")))
+
+;; In past, TW-Kai and TW-Sung are distributed in same zip archive. But now
+;; they are already separated in font-cns11643-kai and font-cns11643-sung.
+;; This package exists as a backward-compatible definition.
+(define-public font-cns11643
+ (package
+ (inherit font-cns11643-sung)
+ (name "font-cns11643")
+ (source #f)
+ (build-system trivial-build-system)
+ (arguments
+ (list
+ #:modules '((guix build union))
+ #:builder
+ #~(begin
+ (use-modules (ice-9 match)
+ (guix build union))
+ (match %build-inputs
+ (((names . directories) ...)
+ (union-build #$output directories))))))
+ (inputs (list font-cns11643-kai font-cns11643-sung))
+ (synopsis "CJK TrueType fonts, TW-Kai and TW-Sung")
+ (description
+ "@code{CNS 11643} character set (Chinese National Standard, or Chinese
+Standard Interchange Code) is the standard character set of the Republic of
+China (Taiwan) for Chinese Characters and other Unicode symbols.
+
+This package is an amalgamation of @code{font-cns11643-sung} and
+@code{font-cns11643-kai}.")))
(define-public font-cns11643-swjz
(package
@@ -1559,6 +1616,37 @@ display all Unicode symbols. This package provides the Serif variant of CJK
fonts.")
(license license:silofl1.1)))
+(define-public font-google-noto-serif-cjk-static
+ (package
+ (name "font-google-noto-serif-cjk-static")
+ (version "2.003")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/googlefonts/noto-cjk/releases/download/Serif"
+ version "/04_NotoSerifCJKOTC.zip"))
+ (file-name (string-append name "-" version ".zip"))
+ (sha256
+ (base32 "0cca367a7vrpj17bczbwhnlbxsm1j25j6c34xj183s8w97yxhvn7"))))
+ (build-system font-build-system)
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (replace 'install
+ (lambda _
+ (chdir "..") ;For license.
+ (let ((install (assoc-ref %standard-phases 'install)))
+ (with-directory-excursion "OTC"
+ (install #:outputs `(("out" . ,#$output))))))))))
+ (home-page "https://www.google.com/get/noto/")
+ (synopsis "Fonts to cover all languages")
+ (description "Google Noto Fonts is a family of fonts designed to support
+all languages with a consistent look and aesthetic. Its goal is to properly
+display all Unicode symbols. This package provides the Serif variant of CJK
+fonts.")
+ (license license:silofl1.1)))
+
(define-public font-google-roboto
(package
(name "font-google-roboto")
@@ -2207,7 +2295,7 @@ guix repl <<EOF
(ice-9 string-fun)
(gnu packages fonts))
-(let ((new-version "20.0.0")
+(let ((new-version "33.3.0")
(iosevka-hashes #nil)
(iosevka-fails #nil))
(for-each (lambda (font)
@@ -2259,7 +2347,7 @@ EOF
(define-public font-iosevka
(package
(name "font-iosevka")
- (version "32.5.0")
+ (version "33.3.0")
(source
(origin
(method url-fetch/zipbomb)
@@ -2267,7 +2355,7 @@ EOF
"/releases/download/v" version
"/PkgTTC-Iosevka-" version ".zip"))
(sha256
- (base32 "1w7043q2pxllry2njrk4cpqwvralb0a1d3bxac36y0ai9al3m5w0"))))
+ (base32 "0r6zs5a7ryishfa18dlgzifkdjbwgn9p0g0ma6sssmiz5c4h81rm"))))
(build-system font-build-system)
(home-page "https://be5invis.github.io/Iosevka/")
(synopsis "Coders' typeface, built from code")
@@ -2290,7 +2378,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSlab-" version ".zip"))
(sha256
- (base32 "03r7ldsk3qrvy46ag08fhs3ppxmzycn8gh6xxmi3pw972hn9kgpi"))))))
+ (base32 "1j6manjf5kb348c94jqzwgypym1wcvhhncc97fkcvy2fh7v23pjx"))))))
(define-public font-iosevka-term
(package
@@ -2304,7 +2392,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTF-IosevkaTerm-" version ".zip"))
(sha256
- (base32 "13g3czmd36k261ip9l8r94hcq6swbvag80zb9g7i9frjsr97xn2h"))))
+ (base32 "0li50ysnk2ry1fs9f7d8r9xh76jrx60si7f58blb648qn387hflh"))))
(arguments
`(#:phases
(modify-phases %standard-phases
@@ -2325,7 +2413,7 @@ programming. Iosevka is completely generated from its source code.")
"releases/download/v" version
"/PkgTTF-IosevkaTermSlab-" version ".zip"))
(sha256
- (base32 "00dwp06za3i8kyqqk5xqsd9div2ydf0rgdnj3vl5g6g5621asd39"))))
+ (base32 "1sz4l3fv37kvyj4gg9z36yh7wafb764v9j1fqjy2hc2p8pbsjv6r"))))
(arguments
`(#:phases
(modify-phases %standard-phases
@@ -2346,7 +2434,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaAile-" version ".zip"))
(sha256
- (base32 "10sf5q4f3l9z4pai46sszkswnwfnjmyqzs6ark1dlsifxh8c86wb"))))))
+ (base32 "0kry26cy7h6awmcyn9q2anz4654gz7gjniamdlfy27qwjzd01g6i"))))))
(define-public font-iosevka-curly
(package
@@ -2360,7 +2448,7 @@ programming. Iosevka is completely generated from its source code.")
"releases/download/v" version
"/PkgTTC-IosevkaCurly-" version ".zip"))
(sha256
- (base32 "0qg4r8hid50hnjj3gs0xagdymm15z919s0pn6n2dnlmmxvw1c5nv"))))))
+ (base32 "11zvpdg8kf1fh0ymrj7zpzfqmxp6njx5c9zb0sxkkp9hza22dg61"))))))
(define-public font-iosevka-curly-slab
(package
@@ -2374,7 +2462,7 @@ programming. Iosevka is completely generated from its source code.")
"releases/download/v" version
"/PkgTTC-IosevkaCurlySlab-" version ".zip"))
(sha256
- (base32 "1lkcs3aqxvdlpgbplhpd4i6vza1xyqnim2awak9b310byyf35d0c"))))))
+ (base32 "0dpkk161wbprx7a706jk9zizcbp7fvkknxgc8d10qg3rj7y0rih1"))))))
(define-public font-iosevka-etoile
(package
@@ -2388,7 +2476,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaEtoile-" version ".zip"))
(sha256
- (base32 "1yh8vlhrcczmsir87f84qr605rf1kp86bvf1c459myc4a6hcqc3z"))))))
+ (base32 "0whpdbwwqdk4qk6n324q7hy4va5qa8w208szzqjyl56mf8n6xxcc"))))))
(define-public font-iosevka-ss01
(package
@@ -2402,7 +2490,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS01-" version ".zip"))
(sha256
- (base32 "0h1ln3bisbgwd7cc6c9jcmplzvgca42csd5cfxj1jjs4i2vmx2d6"))))))
+ (base32 "1hbnaf2wr7svzl24a5vfxzwz5zpy202acm0bjr814jyfczrvjfcf"))))))
(define-public font-iosevka-ss02
(package
@@ -2416,7 +2504,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS02-" version ".zip"))
(sha256
- (base32 "0z0b14cwhbb85fjp508cb1ihscxcc75asjmq9fw5rfl3kx85w6h8"))))))
+ (base32 "0zn7zz12ai9jvlnj7zi2mpaw29xsaabf1mrx40kydbr71i155dx2"))))))
(define-public font-iosevka-ss03
(package
@@ -2430,7 +2518,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS03-" version ".zip"))
(sha256
- (base32 "18gs7h6mb5c9fqmx7ip1a5k3garqbgp640m338h776pcq9mlnndv"))))))
+ (base32 "1w4shz9q89h1fgqmd0wxd7cnfr5s22h0dwl1ksqbc6cx86p503b9"))))))
(define-public font-iosevka-ss04
(package
@@ -2444,7 +2532,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS04-" version ".zip"))
(sha256
- (base32 "1yjywm9r390gnagla6g5yjach0ydng0m0q752k39fb2z5rpjzphp"))))))
+ (base32 "041ldyblwiz7yp19xbsqhpyq78ln61406h9i907686zhs16c9ikv"))))))
(define-public font-iosevka-ss05
(package
@@ -2458,7 +2546,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS05-" version ".zip"))
(sha256
- (base32 "1jn8xb7f3hxs4yl54hmiar49wwdl7489xv0f0sqr5c66ip2jar0k"))))))
+ (base32 "15lryq5km6b3l81xra04vcvapdssbx5yy03a0sdr1d78z4x8wgfp"))))))
(define-public font-iosevka-ss06
(package
@@ -2472,7 +2560,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS06-" version ".zip"))
(sha256
- (base32 "0c6wysyg8nzgan39z4w6l41abx2d0gj89mli63ydagqlljk7vs71"))))))
+ (base32 "1ba5alcfwrhxcdy1wjjhwmx82dlll6ihqw54c6m5g4z79l36zq3x"))))))
(define-public font-iosevka-ss07
(package
@@ -2486,7 +2574,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS07-" version ".zip"))
(sha256
- (base32 "006khr7hh14dcq81mqzn3fkfrpbix1vghrvwff289r7cfy45ijkk"))))))
+ (base32 "1gj1ksg2yhq5g55v7xsdis706ahc5gf6gdxd3svkklngd5rhnx3p"))))))
(define-public font-iosevka-ss08
(package
@@ -2500,7 +2588,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS08-" version ".zip"))
(sha256
- (base32 "1dbnhbljybal9l61iq88h85jkmc16aaw8kxcq3r0ikzv2pq3vslm"))))))
+ (base32 "1y72hpss830l6a86w8r311s86ph4qdwcljfjpr5fp49hi1k564ia"))))))
(define-public font-iosevka-ss09
(package
@@ -2514,7 +2602,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS09-" version ".zip"))
(sha256
- (base32 "0b218h42n5qg920q95ip3mva2xz012ijzgxj8r9m638qar0ba1qi"))))))
+ (base32 "0xwb59ybr0c8bx3861xq1f5k4vf5ddrgdrdjfwph56x3m9imx5k0"))))))
(define-public font-iosevka-ss10
(package
@@ -2528,7 +2616,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS10-" version ".zip"))
(sha256
- (base32 "005i3am8amvwg8skq5lh5pisq1ll8hi9nj3imlcvcwj0w2i8b04w"))))))
+ (base32 "0j2iwg3bb5xpmkj8618k89ns4rs9qwpkzw5hak1lyg6ig87mqk6n"))))))
(define-public font-iosevka-ss11
(package
@@ -2542,7 +2630,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS11-" version ".zip"))
(sha256
- (base32 "0gnk9arz1dfksjx2d7gnb6vx0p0p7hpz4gcnkaj6ppdry9a5lmdn"))))))
+ (base32 "0mn30rvj337n4nl9iqmy7jqvvdydylrzfdzxpbcy6idps59s0517"))))))
(define-public font-iosevka-ss12
(package
@@ -2556,7 +2644,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS12-" version ".zip"))
(sha256
- (base32 "17ri9f2ka7jsb4n3bbb18vxnjxk432f8740hzbjpnvzy16av5nhk"))))))
+ (base32 "0x0mnmayl232clk57wfbq0xyg7g4vgy7wrmp616b851pb1zaai4f"))))))
(define-public font-iosevka-ss13
(package
@@ -2570,7 +2658,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS13-" version ".zip"))
(sha256
- (base32 "1nb3vd7q3xcbijawk9pqznkcfrjdykrc83jl58dnx7jf0znk7j4d"))))))
+ (base32 "1mjf5x2vzibmm3m4dfn56c963xkickc9xnzi4i5kvi6f0za2kjq3"))))))
(define-public font-iosevka-ss14
(package
@@ -2584,7 +2672,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS14-" version ".zip"))
(sha256
- (base32 "0dqkrf86h77ps90rdbsndngzg0l8c4jh8l3f3vcmdy1vlcrycpbi"))))))
+ (base32 "0d38sjq53lh97walsn6d6m3icabw800wsyb856l34hbzlnnakk80"))))))
(define-public font-iosevka-ss15
(package
@@ -2598,7 +2686,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS15-" version ".zip"))
(sha256
- (base32 "0qd2di4phlxakprm5bqi0kz9yy48wqrhkxidzjswagf6bnm3mk5v"))))))
+ (base32 "0vap4g5gf8qmczwbnvav865cjpa12j6p44bl0ysn34mizjzsyrbv"))))))
(define-public font-iosevka-ss16
(package
@@ -2612,7 +2700,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS16-" version ".zip"))
(sha256
- (base32 "15yr94a3faribc19j91q7jna0hx3dsdpz1axkzr5gy56w7hg6bw4"))))))
+ (base32 "1m8p6hjxlcmvi8h4zpn1iad5wa6kmq4hd5l9hjffr5l8bmkbmdh4"))))))
(define-public font-iosevka-ss17
(package
@@ -2626,7 +2714,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS17-" version ".zip"))
(sha256
- (base32 "0k8blbzymyvwczngafz3vijwdy4iwhxc4lrfqxgddrfi57lbnj5r"))))))
+ (base32 "1nw0zqqhwzw1p08rrz1ysz6fbvmya5h5wmx89bgl8h0dd9p146pl"))))))
(define-public font-iosevka-ss18
(package
@@ -2640,7 +2728,135 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/PkgTTC-IosevkaSS18-" version ".zip"))
(sha256
- (base32 "08ijx9rbcx95yiaiwv6k25xmsi24rdy50mkmmaw94mmwv22mxdra"))))))
+ (base32 "12k9g1fkvgvlmr8m6n51wwk442cazqn5zxl226prvrxzwl0xj9l3"))))))
+
+(define-public font-apl2741-unicode
+ (let ((commit "1e11efae38e5095bfe49a786b111d563e83dad03"))
+ (package
+ (name "font-apl2741-unicode")
+ (version "1668049300")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/abrudz/APL2741.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0i1yk1x99lr2swlbq9r7dny5w70zwiwi8lpfcw4n7k7pfbw0xh7y"))))
+ (build-system trivial-build-system)
+ (native-inputs (list fontforge))
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let* ((source (assoc-ref %build-inputs "source"))
+ (out (assoc-ref %outputs "out"))
+ (dest (string-append out "/share/fonts/truetype"))
+ (fontforge (string-append
+ (assoc-ref %build-inputs "fontforge")
+ "/bin/fontforge")))
+ (mkdir-p dest)
+ (invoke fontforge "-lang=ff" "-c" "Open($1); Generate($2)"
+ (string-append source "/APL2741.sfd")
+ (string-append dest "/APL2741.ttf"))))))
+ (synopsis "APL2741 Unicode font")
+ (home-page "https://abrudz.github.io/APL2741/")
+ (description "APL font based on Adrian Smith's IBM Selectric APL2741
+golf-ball font. It supports most special characters used by popular APL
+implementations, some additional mathematical and typographical symbols,
+single line drawing characters, as well as the full Unicode APL range,
+including both uppercase and lowercase underscored alphabets, as-of-yet unused
+symbols, and almost all Latin-1 accented letters.")
+ (license license:unlicense))))
+
+(define-public font-apl333
+ (package
+ (name "font-apl333")
+ ;; Version number as for apl-385, last modified 2013-04-20.
+ (version "20130420")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://apl385.com/fonts/" "apl333.zip"))
+ (sha256
+ (base32 "0yn0ha7d14vp4ma3lxbc9kpyrn20m7brjisr6w55c9mi24w9v3a5"))))
+ (build-system font-build-system)
+ (home-page "https://apl385.com/fonts/index.htm")
+ (synopsis "Variable-width APL font inspired by Comic Sans Serif")
+ (description
+ "Variable-width version of Adrian Smith's APL385 font developed with APL
+software vendors in the late 1980s.")
+ (license license:public-domain)))
+
+(define-public font-apl385
+ (package
+ (name "font-apl385")
+ ;; No version number or release, unzipping source and checking file times
+ ;; shows the font file was last modified on 2016-08-21.
+ (version "20160821")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://apl385.com/fonts/" "apl385.zip"))
+ (sha256
+ (base32 "132qfsnx0v6qf8x8iy3flivv449nz42nnpkwjysmz65w6wqxpk1g"))))
+ (build-system font-build-system)
+ (home-page "https://apl385.com/fonts/index.htm")
+ (synopsis "Monospaced APL font inspired by Comic Sans Serif")
+ (description
+ "Adrian Smith's monospaced APL font developed with APL software vendors
+in the late 1980s.")
+ (license license:public-domain)))
+
+(define-public font-apl386
+ ;; Neither releases nor tags
+ (let ((commit "c5bca014b6610ee170985c3ce32a8bb14dbd7b94")
+ (revision "1"))
+ (package
+ (name "font-apl386")
+ (version (git-version "0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/abrudz/APL386")
+ (commit commit)))
+ (file-name (git-file-name name revision))
+ (sha256
+ (base32 "0z7kpqgfrb053rajnr08n02rdwg5w1aynxj13ys93j0k3xvv5a75"))))
+ (build-system font-build-system)
+ (synopsis "Font suitable for APL programming language")
+ (description
+ "APL386 is an evolution of Adrian Smith's APL385 font with a fun,
+whimsical look, inspired by Comic Sans Serif.")
+ (home-page "https://abrudz.github.io/APL386/")
+ (license license:unlicense))))
+
+(define-public font-bqn386
+ ;; Neither releases nor tags
+ (let ((commit "4d8b9f668ba76a15ca9cd44d9bfedaf95a4c0d96")
+ (revision "1"))
+ (package
+ (name "font-bqn386")
+ (version (git-version "0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dzaima/BQN386")
+ (commit commit)))
+ (file-name (git-file-name name revision))
+ (sha256
+ (base32 "1l2ycjs85vps7sy5yg19mq1xdnfv4lx3skw921yw1rhx9xdvhrgc"))))
+ (build-system font-build-system)
+ (synopsis "Font suitable for APL and BQN programming languages")
+ (description
+ "BQN386 is an extension of APL386 font. This font keeps regular APL
+characters mostly intact.")
+ (home-page "https://dzaima.github.io/BQN386/")
+ (license license:unlicense))))
(define-public font-aporetic
(package