1
0
int10h-oldschoolpc-fonts/int10h-oldschoolpc-fonts.spec

118 lines
3.5 KiB
RPMSpec
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#
# spec file for package int10h-oldschoolpc-fonts
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: int10h-oldschoolpc-fonts
Version: 2.2
Release: 0
Summary: Remakes of old computer hardware fonts
License: CC-BY-SA-4.0
Group: System/X11/Fonts
URL: http://int10h.org/oldschool-pc-fonts/
Source: https://int10h.org/oldschool-pc-fonts/download/oldschool_pc_font_pack_v2.2_FULL.zip
Source8: ratio.txt
BuildRequires: fontpackages-devel
BuildRequires: lcdf-typetools
BuildRequires: unzip
%reconfigure_fonts_prereq
BuildArch: noarch
%description
This fontpack contains remakes of various type styles from text-mode
era PCs  in modern Unicode-compatible TrueType form (plus straight
bitmap versions). The main focus is on hardware character sets: the
kind that's located in a ROM and shown by default when working in
text (or graphics) mode.
[ Classic hardware text mode stretches the fonts to fit the screen!
To recreate the same visuals of that, a stretch factor must be
applied. For details, see ratio.txt inside the package. ]
%package stretched
Summary: Pre-stretched versions of int10h-oldschoolpc-fonts
Group: System/X11/Fonts
Conflicts: %name < %version
Conflicts: %name > %version
%reconfigure_fonts_prereq
%description stretched
This package contains aspect-corrected and non-corrected-but-stretched
variants of the main font files.
%prep
%setup -Tcqa0
cp "%_sourcedir/ratio.txt" .
%build
iconv -f cp437 -t utf-8 <README.NFO | perl -i -pe 's{\r}{}g' >readme.txt
mv LICENSE.TXT license.txt
%install
mkdir mxs
mv */Mx*-2[xy]*.ttf mxs/
c="%buildroot/%_sharedir/fontconfig/conf.avail"
tt="%buildroot/%_ttfontsdir"
mkdir -p "$c" "$tt"
genalias()
{
echo "<?xml version='1.0'?>"
echo '<!DOCTYPE'" fontconfig SYSTEM 'fonts.dtd'>"
echo "<fontconfig>"
for i in "$@"; do
mx="$(otfinfo -i "$i" | perl -lne 'if(/^Family:\s*(.*)/){$_=$1;s{&}{&amp;}g;print}')"
px="Px${mx:2}"
echo "<alias><family>$px</family><prefer><family>$mx</family></prefer></alias>"
done
echo "</fontconfig>"
}
genalias mxs/Mx*.ttf >31-int10h-stretch-alias.conf
mv mxs/*.ttf "$tt/"
genalias */Mx*.ttf >31-int10h-alias.conf
mv */Ac*.ttf */Mx*.ttf "$tt/"
%install_fontsconf 31-int10h-alias.conf
%install_fontsconf 31-int10h-stretch-alias.conf
%reconfigure_fonts_scriptlets
%reconfigure_fonts_scriptlets -n %name-stretched
%files
%license license.txt
%doc readme.txt ratio.txt
%_ttfontsdir/Mx*
%exclude %_ttfontsdir/*-2x.ttf
%exclude %_ttfontsdir/*-2y.ttf
%dir %_sysconfdir/fonts
%dir %_sysconfdir/fonts/conf.d
%files_fontsconf_availdir
%files_fontsconf_file -l 31-int10h-alias.conf
%files stretched
%dir %_ttfontsdir/
%_ttfontsdir/Ac*
%_ttfontsdir/Mx*-2x.ttf
%_ttfontsdir/Mx*-2y.ttf
%dir %_sysconfdir/fonts
%dir %_sysconfdir/fonts/conf.d
%files_fontsconf_availdir
%files_fontsconf_file -l 31-int10h-stretch-alias.conf
%changelog