diff --git a/tests/testresources/models/package_ttf-google-fonts-git_pkgbuild b/tests/testresources/models/package_ttf-google-fonts-git_pkgbuild new file mode 100644 index 00000000..d520a19e --- /dev/null +++ b/tests/testresources/models/package_ttf-google-fonts-git_pkgbuild @@ -0,0 +1,151 @@ +# Maintainer: Andrew Crerar +# Contributor: Mohammadreza Abdollahzadeh +# Contributor: FadeMind +# Contributor: Vlad M. +# Contributor: Sebastian Stammler +# Contributor: Sarkasper +# Contributor: Daniel Micay +# Contributor: Michalis Georgiou +# Contributor: Alexander De Sousa + +pkgname=ttf-google-fonts-git +pkgver=r11002.cdabad3d0 +pkgrel=1 +epoch=1 +pkgdesc="TrueType fonts from the Google Fonts project (git version)" +arch=('any') +url="https://github.com/google/fonts" +license=('custom:SIL Open Font License' 'custom:Ubuntu Font License v1.0') + +depends=('adobe-source-code-pro-fonts' + 'adobe-source-sans-fonts' + 'adobe-source-serif-fonts' + 'cantarell-fonts' + 'noto-fonts' + 'noto-fonts-extra' + 'ttf-anonymous-pro' + 'ttf-caladea' + 'ttf-croscore' + 'ttf-fira-sans' + 'ttf-fira-mono' + 'ttf-inconsolata' + 'ttf-lato' + 'ttf-merriweather' + 'ttf-merriweather-sans' + 'ttf-opensans' + 'ttf-oswald' + 'ttf-quintessential' + 'ttf-roboto' + 'ttf-roboto-mono' + 'ttf-signika' + 'ttf-ubuntu-font-family') +makedepends=('git' 'fontconfig') +conflicts=('jsmath-fonts' + 'lohit-fonts' + 'ttf-andika' + 'ttf-arabeyes-fonts' + 'ttf-cardo' + 'ttf-comfortaa' + 'ttf-google-fonts-typewolf' + 'ttf-lora-cyrillic' + 'ttf-lekton' + 'ttf-medievalsharp' + 'ttf-nova' + 'ttf-oxygen' + 'ttf-oxygen-git' + 'ttf-pt-fonts' + 'ttf-source-code-pro-ibx' + 'ttf-source-sans-pro-ibx' + 'ttf-vollkorn-ibx') +provides=('jsmath-fonts' + 'lohit-fonts' + 'ttf-andika' + 'ttf-cardo' + 'ttf-carlito' + 'ttf-comfortaa' + 'ttf-lora-cyrillic' + 'ttf-lekton' + 'ttf-medievalsharp' + 'ttf-nova' + 'ttf-oxygen' + 'ttf-oxygen-git' + 'ttf-pt-fonts' + 'ttf-source-code-pro-ibx' + 'ttf-source-sans-pro-ibx' + 'ttf-vollkorn-ibx') +source=(git+"${url}".git) +sha512sums=('SKIP') + +pkgver() { + cd fonts + + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" +} + +prepare() { + cd fonts + + # NOTE: Adobe Blank is not meant to be installed. + # See: https://github.com/google/fonts/issues/2106#issuecomment-520067314 + rm --recursive "${srcdir}/fonts/ofl/adobeblank" +} + +package() { + # NOTE: These are the font families that already exist in the [extra] repo + # or should not be installed by this package, due to user reports + # of system instability. + declare -A omitted_font_families=( + [anonymous-pro]=1 + [arimo]=1 + [caladea]=1 + [cantarell]=1 + [carlito]=1 + [cousine]=1 + [dai-banna-sil]=1 + [fira-sans]=1 + [fira-mono]=1 + [inconsolata]=1 + [merriweather]=1 + [merriweather-sans]=1 + [noto-color-emoji]=1 + [noto-sans]=1 + [noto-sans-tamil]=1 + [noto-serif]=1 + [open-sans]=1 + [oswald]=1 + [quintessential]=1 + [roboto]=1 + [roboto-condensed]=1 + [roboto-mono]=1 + [source-sans-3]=1 + [source-sans-pro]=1 + [source-serif-4]=1 + [source-serif-pro]=1 + [tinos]=1 + [ubuntu]=1 + [ubuntu-mono]=1 + ) + + + while IFS= read -rd '' file; do + font_family=$(fc-query -f '%{family[0]|downcase|translate( ,-)}\n' "$file" | sed -n '1p') + + # NOTE: Skip the rest of the loop if we're not supposed to be touching this family + ((omitted_font_families["$font_family"])) && continue + + pkg_font_path="$pkgdir"/usr/share/fonts/"$font_family" + install -Dm644 "$file" -t "$pkg_font_path" # TODO: Check and make sure $font_family is being created + + # NOTE: If the font's license already exists, we don't need to copy the license again. + src_license_path="${file%/*}"/OFL.txt + pkg_font_license="$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE."$font_family" + if [[ -f "$src_license_path" && ! -f "$pkg_font_license" ]]; then + install -Dm644 "$src_license_path" "$pkg_font_license" + fi + done < <(find "$srcdir" -type f -iname \*.ttf -print0) + + # NOTE: Since the zcool xiaowei chinese font has special characters. We need to change + # the folder name to prevent errors during package compression. + mv "$pkgdir"/usr/share/fonts/站酷小薇体 "$pkgdir"/usr/share/fonts/zcool-xiaowei-regular + mv "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE.站酷小薇体 "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE.zcool-xiaowei-regular +}