Blame spec-templates/spectemplate-fonts-multi.spec

Packit 46375d
%global fontname <FONTNAME>
Packit 46375d
%global fontconf <①>-%{fontname}
Packit 46375d
Packit 46375d
#global archivename %{name}-%{version} ②
Packit 46375d
Packit 46375d
%global common_desc \
Packit 46375d
<FONT COLLECTION DESCRIPTION: ③>
Packit 46375d
Packit 46375d
Packit 46375d
Name:           %{fontname}-fonts
Packit 46375d
Version:        <④>
Packit 46375d
Release:        1%{?dist}
Packit 46375d
Summary:        
Packit 46375d
Packit 46375d
Group:          User Interface/X
Packit 46375d
License:        
Packit 46375d
URL:            
Packit 46375d
Source0:        
Packit 46375d
Source1:        %{name}-fontconfig.conf
Packit 46375d
Packit 46375d
BuildArch:      noarch
Packit 46375d
BuildRequires:  fontpackages-devel
Packit 46375d
Packit 46375d
%description
Packit 46375d
%common_desc
Packit 46375d
Packit 46375d
Packit 46375d
%package common
Packit 46375d
Summary:        Common files of <NAME>
Packit 46375d
Requires:       fontpackages-filesystem
Packit 46375d
Packit 46375d
%description common
Packit 46375d
%common_desc
Packit 46375d
Packit 46375d
This package consists of files used by other %{name} packages.
Packit 46375d
Packit 46375d
# Repeat for every font family ➅
Packit 46375d
%package -n %{fontname}-<FAMILY>-fonts
Packit 46375d
Summary:        
Packit 46375d
Requires:       %{name}-common = %{version}-%{release}
Packit 46375d
Packit 46375d
%description -n %{fontname}-<FAMILY>-fonts
Packit 46375d
%common_desc
Packit 46375d
Packit 46375d
<FAMILY DESCRIPTION>
Packit 46375d
Packit 46375d
%_font_pkg -n <FAMILY> -f %{fontconf}-<FAMILY>.conf <NAME>*.ttf
Packit 46375d
Packit 46375d
Packit 46375d
%prep
Packit 46375d
%setup -q
Packit 46375d
Packit 46375d
Packit 46375d
%build
Packit 46375d
Packit 46375d
Packit 46375d
%install
Packit 46375d
rm -fr %{buildroot}
Packit 46375d
Packit 46375d
install -m 0755 -d %{buildroot}%{_fontdir}
Packit 46375d
install -m 0644 -p *.ttf %{buildroot}%{_fontdir}
Packit 46375d
Packit 46375d
install -m 0755 -d %{buildroot}%{_fontconfig_templatedir} \
Packit 46375d
                   %{buildroot}%{_fontconfig_confdir}
Packit 46375d
Packit 46375d
# Repeat for every font family
Packit 46375d
install -m 0644 -p %{SOURCEX} \
Packit 46375d
        %{buildroot}%{_fontconfig_templatedir}/%{fontconf}-<FAMILYX>.conf
Packit 46375d
Packit 46375d
for fconf in %{fontconf}-<FAMILYX>.conf \
Packit 46375d
             %{fontconf}-<FAMILYY>.conf \
Packit 46375d
             %{fontconf}-<FAMILYZ>.conf ; do
Packit 46375d
  ln -s %{_fontconfig_templatedir}/$fconf \
Packit 46375d
        %{buildroot}%{_fontconfig_confdir}/$fconf
Packit 46375d
done
Packit 46375d
Packit 46375d
Packit 46375d
%clean
Packit 46375d
rm -fr %{buildroot}
Packit 46375d
Packit 46375d
Packit 46375d
%files common
Packit 46375d
%defattr(0644,root,root,0755)
Packit 46375d
%doc 
Packit 46375d
Packit 46375d
Packit 46375d
%changelog
Packit 46375d
Packit 46375d
Packit 46375d
# Documentation
Packit 46375d
# (remove it from your final spec file, with the other comments)
Packit 46375d
#
Packit 46375d
#
Packit 46375d
# This template can be used with complex multi-font releases
Packit 46375d
# (several font families ⑤ in one upstream archive):
Packit 46375d
# — if you intend to package a single font family, use
Packit 46375d
#   spectemplate-fonts-simple.spec
Packit 46375d
# – if upstream releases separate fonts in separate archives, do not try to
Packit 46375d
#   stuff them in a single srpm, just package them separately.
Packit 46375d
#
Packit 46375d
# <FOO> placeholders must be replaced by something appropriate for your font.
Packit 46375d
#
Packit 46375d
#
Packit 46375d
# ①
Packit 46375d
# Two-digit fontconfig priority number, see:
Packit 46375d
# /usr/share/fontconfig/templates/fontconfig-priorities.txt
Packit 46375d
#
Packit 46375d
# ②
Packit 46375d
# Optional
Packit 46375d
#
Packit 46375d
# ③
Packit 46375d
# This will be reused in every sub-package description.
Packit 46375d
# Please do not forget to complete it with subpackage-specific information.
Packit 46375d
#
Packit 46375d
# ④
Packit 46375d
# Do not trust font metadata versionning unless you've checked upstream does
Packit 46375d
# update versions on file changes. When in doubt use the timestamp of the most
Packit 46375d
# recent file as version. “1.0” versions especially are suspicious.
Packit 46375d
#
Packit 46375d
# ⑤
Packit 46375d
# — A font family corresponds to one entry in GUI font lists. For example,
Packit 46375d
#   DejaVu Sans, DejaVu Serif and DejaVu Sans Mono are three different font
Packit 46375d
#   families.
Packit 46375d
# — A font family is subdivided in faces or styles. DejaVu Sans Normal, DejaVu
Packit 46375d
#   Sans Bold, DejaVu Sans Condensed Italic are three faces of the DejaVu Sans
Packit 46375d
#   font family.
Packit 46375d
# — A font-metadata aware tool such as gnome-font-viewer or fontforge can be
Packit 46375d
#   used to check the font family name and the font face/style declared by a
Packit 46375d
#   font file.
Packit 46375d
# — For use in spec files, convert names to lowerscript and replace spaces
Packit 46375d
#   with “-”