From d1bc0023e1ac5171aabffc8e6c37d0ba37cd0812 Mon Sep 17 00:00:00 2001 From: windowsboy111 Date: Wed, 28 Dec 2022 14:42:51 +0800 Subject: [PATCH] Add iosevka-fusion-fonts vl-gothic-fonts --- .github/workflows/update.yml | 2 +- anda/fonts/iosevka-fusion/anda.hcl | 6 + .../iosevka-fusion/iosevka-fusion-fonts.spec | 142 +++++++++++++ anda/fonts/iosevka-fusion/iosevka-fusion.toml | 191 ++++++++++++++++++ anda/fonts/iosevka-fusion/update.rhai | 1 + .../vl-gothic/65-2-vl-pgothic-fonts.conf | 32 +++ .../fonts/vl-gothic/65-3-vl-gothic-fonts.conf | 51 +++++ anda/fonts/vl-gothic/anda.hcl | 6 + anda/fonts/vl-gothic/vl-gothic-fonts.spec | 132 ++++++++++++ 9 files changed, 562 insertions(+), 1 deletion(-) create mode 100644 anda/fonts/iosevka-fusion/anda.hcl create mode 100644 anda/fonts/iosevka-fusion/iosevka-fusion-fonts.spec create mode 100644 anda/fonts/iosevka-fusion/iosevka-fusion.toml create mode 100644 anda/fonts/iosevka-fusion/update.rhai create mode 100644 anda/fonts/vl-gothic/65-2-vl-pgothic-fonts.conf create mode 100644 anda/fonts/vl-gothic/65-3-vl-gothic-fonts.conf create mode 100644 anda/fonts/vl-gothic/anda.hcl create mode 100644 anda/fonts/vl-gothic/vl-gothic-fonts.spec diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index ec858d5f9b..1fba08d61f 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -33,7 +33,7 @@ jobs: chmod 0700 ${{ runner.temp }}/signing_key - name: Run Update (anda) - run: anda update -vvv + run: anda update -vv env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/anda/fonts/iosevka-fusion/anda.hcl b/anda/fonts/iosevka-fusion/anda.hcl new file mode 100644 index 0000000000..d98083abf0 --- /dev/null +++ b/anda/fonts/iosevka-fusion/anda.hcl @@ -0,0 +1,6 @@ +project "pkg" { + rpm { + spec = "iosevka-fusion-fonts.spec" + update = "" + } +} diff --git a/anda/fonts/iosevka-fusion/iosevka-fusion-fonts.spec b/anda/fonts/iosevka-fusion/iosevka-fusion-fonts.spec new file mode 100644 index 0000000000..fb80dc80fd --- /dev/null +++ b/anda/fonts/iosevka-fusion/iosevka-fusion-fonts.spec @@ -0,0 +1,142 @@ +%global source_name Iosevka +%global debug_package %{nil} + +Name: iosevka-fusion-fonts +Version: 16.8.4 +Release: 1%{?dist} +Summary: A custom font based on iosevka + +License: SIL Open Font License Version 1.1 +URL: https://github.com/be5invis/Iosevka +Source0: %{url}/archive/v%{version}.tar.gz +Source1: iosevka-fusion.toml + +BuildArch: noarch + +BuildRequires: clang +BuildRequires: npm +BuildRequires: ttfautohint + +%description +Based on Iosevka font, https://github.com/be5invis/Iosevka, +this font mixes elements from various fonts tailored to my personal taste. + +%prep +%autosetup -n %{source_name}-%{version} +%__cp %SOURCE1 %{_builddir}/%{source_name}-%{version}/private-build-plans.toml + +%build +npm install +npm run build -- ttf::iosevka-fusion + +%install +%__mkdir -p %{buildroot}%{_datadir}/fonts/%{name} + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-bold.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-Bold.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-bolditalic.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-BoldItalic.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-book.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-Book.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-bookitalic.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-BookItalic.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-extrabold.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-ExtraBold.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-extrabolditalic.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-ExtraBoldItalic.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-extralight.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-ExtraLight.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-extralightitalic.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-ExtraLightItalic.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-heavy.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-Heavy.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-heavyitalic.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-HeavyItalic.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-italic.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-Italic.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-light.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-Light.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-lightitalic.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-LightItalic.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-medium.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-Medium.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-mediumitalic.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-MediumItalic.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-regular.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-Regular.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-semibold.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-SemiBold.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-semibolditalic.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-SemiBoldItalic.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-thin.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-Thin.ttf + +%__install -m 0644 \ + dist/iosevka-fusion/ttf/iosevka-fusion-thinitalic.ttf \ + -T \ + %{buildroot}%{_datadir}/fonts/%{name}/IosevkaFusion-ThinItalic.ttf + +%files +%license LICENSE.md +%doc README.md +%{_datadir}/fonts/* + +%changelog +* Wed Dec 28 2022 windowsboy111 - 16.8.4 +- Initial package diff --git a/anda/fonts/iosevka-fusion/iosevka-fusion.toml b/anda/fonts/iosevka-fusion/iosevka-fusion.toml new file mode 100644 index 0000000000..4025f9910f --- /dev/null +++ b/anda/fonts/iosevka-fusion/iosevka-fusion.toml @@ -0,0 +1,191 @@ +[buildPlans.iosevka-fusion] +family = "Iosevka Fusion" +spacing = "fixed" +serifs = "sans" + +[buildPlans.iosevka-fusion.variants.design] +cv01 = 1 # A cap straight +cv02 = 1 # B cap straight +cv03 = 1 # C cap serifless +cv04 = 1 # D cap serifless +cv05 = 1 # E cap serifless +cv06 = 1 # F cap serifless +cv07 = 6 # G cap toothless rounded serifless hooked +cv08 = 1 # H cap serifless +cv09 = 1 # I cap long serifs +cv10 = 2 # J cap serified +cv11 = 2 # K cap curly +cv12 = 1 # L cap serifless +cv13 = 3 # M cap short middle leg slanted sides +cv14 = 1 # N cap symmetric +cv15 = 1 # P cap straight +cv16 = 4 # Q cap crossing tail +cv17 = 1 # R cap straight +cv18 = 1 # S cap serifless +cv19 = 1 # T cap serifless +cv20 = 3 # U cap serifless +cv21 = 1 # V cap straight +cv22 = 1 # W straight +cv23 = 1 # X cap straight +cv24 = 1 # Y cap straight +cv25 = 1 # Z cap straight +cv28 = 1 # c serifless +cv33 = 1 # h straight +cv34 = 10 # i serified flat tailed +cv35 = 6 # j flat hook serified +cv37 = 10 # l serified flat tailed +cv42 = 9 # r compact +cv43 = 1 # s serifless +cv44 = 2 # t flat hook +cv49 = 6 # y cursive flat terminal hook +cv53 = 1 # Λ, Δ lambda and delta cap straight +cv54 = 2 # α alpha straight tailed +VXAA = 1 # δ delta rounded top +cv55 = 1 # Γ gamma cap straight +cv56 = 6 # ι iota serified flat tailed +cv57 = 2 # λ lambda top tailed +VXAC = 1 # μ me tailless +VXAB = 2 # ξ xe flat top +cv71 = 13 # 0 oval dashed forward slash +cv74 = 2 # 3 arched +cv76 = 2 # 5 open contour +cv78 = 1 # 7 straight +cv79 = 3 # 8 two asymmetric circles +cv81 = 2 # ~ tilde low +cv82 = 2 # * asterisk five-pointed low +cv83 = 1 # _ underscore right below baseline +cv85 = 1 # ^ uptick high +cv86 = 1 # ( parentheses normal slope +cv87 = 2 # { braces curly +cv88 = 1 # # column straight +cv90 = 4 # @ three-fold, tall height +cv91 = 2 # $ dollar strike through +cv92 = 2 # ¢ cent strike through +cv93 = 1 # % percent dots +cv94 = 1 # | bar natural slope +cv95 = 2 # ≥ equal-or-{higher,lower} slanted +cv96 = 1 # ' single quote straight +cv97 = 1 # ` grave/backtick straight +cv98 = 1 # ? smooth +cv99 = 2 # .:; square punctuation marks +VXDD = 2 # ijäöü square diacretics + +[buildPlans.iosevka-fusion.variants.upright] +cv26 = 3 # a double storey rounded +cv27 = 2 # b rounded +cv29 = 2 # d rounded +cv30 = 1 # e straight +cv31 = 16 # f serifless bottom flat top crossbar at x height +cv32 = 9 # g single storey flat hook earless cornered top +cv36 = 1 # k straight +cv38 = 5 # m earless normal middle leg +cv39 = 3 # n earless straight +cv40 = 2 # p earless +cv41 = 2 # q earless +cv45 = 2 # u rounded +cv46 = 1 # v straight +cv47 = 1 # w straight +cv48 = 1 # x straight +cv50 = 1 # z straight +cv72 = 3 # 1 serified with base +cv73 = 1 # 2 straight +cv75 = 3 # 4 semi-open contour +cv77 = 3 # 6 straight +cv80 = 3 # 9 straight +cv89 = 2 # & et open top (ampersand) + +[buildPlans.iosevka-fusion.variants.italic] +cv26 = 1 # a double storey straight +cv27 = 1 # b straight +cv29 = 1 # d straight +cv30 = 2 # e curly +cv31 = 18 # f flat hook tailed crossbar at x height +cv32 = 7 # g single storey flat hook +cv36 = 2 # k curly +cv38 = 1 # m straight normal middle leg +cv39 = 1 # n straight +cv40 = 1 # p straight +cv41 = 1 # q straight +cv45 = 1 # u straight +cv46 = 2 # v curly +cv47 = 2 # w curly short middle top +cv48 = 2 # x curly +cv50 = 4 # z curly +cv72 = 2 # 1 serified no base +cv73 = 2 # 2 curly +cv75 = 1 # 4 closed contour crossing +cv77 = 1 # 6 closed contour +cv80 = 1 # 9 closed contour +cv89 = 4 # & et open top toothed (ampersand) + +[buildPlans.iosevka-fusion.weights.thin] +shape = 100 +menu = 100 +css = 100 + +[buildPlans.iosevka-fusion.weights.extralight] +shape = 200 +menu = 200 +css = 200 + +[buildPlans.iosevka-fusion.weights.light] +shape = 300 +menu = 300 +css = 300 + +[buildPlans.iosevka-fusion.weights.regular] +shape = 400 +menu = 400 +css = 400 + +[buildPlans.iosevka-fusion.weights.book] +shape = 450 +menu = 450 +css = 450 + +[buildPlans.iosevka-fusion.weights.medium] +shape = 500 +menu = 500 +css = 500 + +[buildPlans.iosevka-fusion.weights.semibold] +shape = 600 +menu = 600 +css = 600 + +[buildPlans.iosevka-fusion.weights.bold] +shape = 700 +menu = 700 +css = 700 + +[buildPlans.iosevka-fusion.weights.extrabold] +shape = 800 +menu = 800 +css = 800 + +[buildPlans.iosevka-fusion.weights.heavy] +shape = 900 +menu = 900 +css = 900 + +[buildPlans.iosevka-fusion.slopes.upright] +angle = 0 +shape = "upright" +menu = "upright" +css = "normal" + +[buildPlans.iosevka-fusion.slopes.italic] +angle = 9.4 +shape = "italic" +menu = "italic" +css = "italic" + +[buildPlans.iosevka-fusion.widths.normal] +shape = 600 +menu = 5 +css = "normal" + +[buildPlans.iosevka-fusion.metric-override] +leading = 1350 +sb = 60 +xHeight = 530 diff --git a/anda/fonts/iosevka-fusion/update.rhai b/anda/fonts/iosevka-fusion/update.rhai new file mode 100644 index 0000000000..e9a39b4a9e --- /dev/null +++ b/anda/fonts/iosevka-fusion/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("be5invis/Iosevka")); diff --git a/anda/fonts/vl-gothic/65-2-vl-pgothic-fonts.conf b/anda/fonts/vl-gothic/65-2-vl-pgothic-fonts.conf new file mode 100644 index 0000000000..806a95eedd --- /dev/null +++ b/anda/fonts/vl-gothic/65-2-vl-pgothic-fonts.conf @@ -0,0 +1,32 @@ + + + + + + VL PGothic + + sans-serif + + + + + + ja + + + sans-serif + + + VL PGothic + + + + + + VL PGothic + + + false + + + diff --git a/anda/fonts/vl-gothic/65-3-vl-gothic-fonts.conf b/anda/fonts/vl-gothic/65-3-vl-gothic-fonts.conf new file mode 100644 index 0000000000..a9557d5b2e --- /dev/null +++ b/anda/fonts/vl-gothic/65-3-vl-gothic-fonts.conf @@ -0,0 +1,51 @@ + + + + + + VL Gothic + + monospace + + + + + VL Gothic + + sans-serif + + + + + + ja + + + monospace + + + VL Gothic + + + + + + ja + + + sans-serif + + + VL Gothic + + + + + + VL Gothic + + + false + + + diff --git a/anda/fonts/vl-gothic/anda.hcl b/anda/fonts/vl-gothic/anda.hcl new file mode 100644 index 0000000000..b6b11b11a8 --- /dev/null +++ b/anda/fonts/vl-gothic/anda.hcl @@ -0,0 +1,6 @@ +project "pkg" { + rpm { + spec = "vl-gothic-fonts.spec" + update = "" + } +} diff --git a/anda/fonts/vl-gothic/vl-gothic-fonts.spec b/anda/fonts/vl-gothic/vl-gothic-fonts.spec new file mode 100644 index 0000000000..825a339717 --- /dev/null +++ b/anda/fonts/vl-gothic/vl-gothic-fonts.spec @@ -0,0 +1,132 @@ +# Packaging template: multi-family fonts packaging. +# +# SPDX-License-Identifier: MIT +# +# This template documents spec declarations, used when packaging multiple font +# families, from a single dedicated source archive. The source rpm is named +# after the first (main) font family). Look up “fonts-3-sub” when the source +# rpm needs to be named some other way. +# +# It is part of the following set of packaging templates: +# “fonts-0-simple”: basic single-family fonts packaging +# “fonts-1-full”: less common patterns for single-family fonts packaging +# “fonts-2-multi”: multi-family fonts packaging +# “fonts-3-sub”: packaging fonts, released as part of something else +# +Version: 20220612 +Release: 2%{?dist} +URL: http://dicey.org/vlgothic + +# The following declarations will be aliased to [variable]0 and reused for all +# generated *-fonts packages unless overriden by a specific [variable][number] +# declaration. +%global foundry VL +%global fontlicense mplus and BSD +%global fontlicenses LICENSE_J.mplus LICENSE_E.mplus LICENSE LICENSE.en +%global fontdocs README README_J.mplus README.sazanami README_E.mplus +%global fontdocsex %{fontlicenses} + +# A text block that can be reused as part of the description of each generated +# subpackage. +%global common_description %{expand: +VLGothic provides Japanese TrueType fonts from the Vine Linux project. +Most of the glyphs are taken from the M+ and Sazanami Gothic fonts, +but some have also been improved by the project. +} + +# Declaration for the subpackage containing the first font family. Also used as +# source rpm info. All the [variable]0 declarations are equivalent and aliased +# to [variable]. + +%global fontfamily0 VL Gothic +%global fontsummary0 Japanese TrueType font +%global fontpkgheader0 %{expand: +Obsoletes: vlgothic-fonts < %{version}-%{release} +Provides: vlgothic-fonts = %{version}-%{release} +} +%global fonts0 VL-Gothic-Regular.ttf +%global fontsex0 %{nil} +%global fontconfs0 %{SOURCE10} +%global fontconfsex0 %{nil} +%global fontdescription0 %{expand: +%{common_description} + +This package provides the monospace VLGothic font. +} + +%global fontfamily1 VL PGothic +%global fontsummary1 Proportional Japanese TrueType font +%global fontpkgheader1 %{expand: +Obsoletes: vlgothic-p-fonts < %{version}-%{release} +Provides: vlgothic-p-fonts = %{version}-%{release} +} +%global fonts1 VL-PGothic-Regular.ttf +%global fontsex1 %{nil} +%global fontconfs1 %{SOURCE11} +%global fontconfsex1 %{nil} +%global fontdescription1 %{expand: +%{common_description} + +This package provides the VLGothic font with proportional glyphs for some +non-Japanese characters. +} + + +# https://ja.osdn.net/frs/redir.php?m=gigenet&f=vlgothic%2F77450%2FVLGothic-%%{version}.tar.xz +Source0: https://mirrors.gigenet.com/OSDN/vlgothic/77450/VLGothic-%{version}.tar.xz +Source10: 65-3-%{fontpkgname0}.conf +Source11: 65-2-%{fontpkgname1}.conf + +# “fontpkg” will generate the font subpackage headers corresponding to the +# elements declared above. +# “fontpkg” accepts the following selection arguments: +# – “-a” process everything +# – “-z [number]” process a specific declaration block +# If no flag is specified it will only process the zero/nosuffix block. +%fontpkg -a + +# “fontmetapkg” will generate a font meta(sub)package header for all the font +# subpackages generated in this spec. Optional arguments: +# – “-n [name]” use [name] as metapackage name +# – “-s [variable]” use the content of [variable] as metapackage summary +# – “-d [variable]” use the content of [variable] as metapackage description +# – “-z [numbers]” restrict metapackaging to [numbers] comma-separated list +# of font package suffixes +%fontmetapkg + +%prep +%setup -q -n VLGothic +iconv -f EUC-JP -t UTF-8 -o README.sazanami.tmp README.sazanami +touch -r README.sazanami README.sazanami.tmp +mv README.sazanami.tmp README.sazanami + +%build +# “fontbuild” accepts the usual selection arguments: +# – “-a” process everything +# – “-z [number]” process a specific declaration block +# If no flag is specified it will only process the zero/nosuffix block. +%fontbuild -a + +%install +# “fontinstall” accepts the usual selection arguments: +# – “-a” process everything +# – “-z [number]” process a specific declaration block +# If no flag is specified it will only process the zero/nosuffix block. +%fontinstall -a + +%check +# “fontcheck” accepts the usual selection arguments: +# – “-a” process everything +# – “-z [number]” process a specific declaration block +# If no flag is specified it will only process the zero/nosuffix block. +%fontcheck -a + +# “fontfiles” accepts the usual selection arguments: +# – “-a” process everything +# – “-z [number]” process a specific declaration block +# If no flag is specified it will only process the zero/nosuffix block +%fontfiles -a + +%changelog +* Wed Dec 28 2022 windowsboy111 - 16.8.4 +- Initial package