all repos — Putnik @ 061af291ff6117ff015f9192855bd00b19fd9ea8

non-professional cyrillic display font

add requirements.txt and simplify build

now everything is happening inside vitrual environment, which is much
more safe and easier to use.
la-ninpre leobrekalini@gmail.com
Wed, 18 Nov 2020 11:13:28 +0300
commit

061af291ff6117ff015f9192855bd00b19fd9ea8

parent

3085cb9d40abeb4d25299b86145e007cd9fac712

5 files changed, 53 insertions(+), 14 deletions(-)

jump to
M MakefileMakefile

@@ -1,6 +1,9 @@

FONT_NAME=Putnik FONT_VERSION=$(shell git describe --abbrev=4) RELEASE=$(FONT_NAME)-$(FONT_VERSION) +PYTHON=/usr/bin/python +VENV_BIN=venv/bin +FONTMAKE=$(VENV_BIN)/fontmake OUT_DIR=fonts UFO_SRC=sources/$(FONT_NAME).ufo TTF=fonts/ttf/$(FONT_NAME).ttf

@@ -8,13 +11,17 @@ OTF=fonts/otf/$(FONT_NAME).otf

all: ttf otf -ttf: $(TTF) +venv: + $(PYTHON) -m venv venv + $(VENV_BIN)/pip install -r requirements.txt + +ttf: venv $(TTF) $(TTF): $(UFO_SRC) - fontmake -u $(UFO_SRC) -o ttf --output-dir fonts/ttf/ + $(FONTMAKE) -u $(UFO_SRC) -o ttf --output-dir fonts/ttf/ -otf: $(OTF) +otf: venv $(OTF) $(OTF): $(UFO_SRC) - fontmake -u $(UFO_SRC) -o otf --output-dir fonts/otf/ + $(FONTMAKE) -u $(UFO_SRC) -o otf --output-dir fonts/otf/ release: release-tar release-zip

@@ -27,4 +34,4 @@

clean: -rm $(TTF) $(OTF) $(RELEASE).* -.PHONY: all release clean +.PHONY: all release venv clean
M README.mdREADME.md

@@ -2,48 +2,62 @@ # Putnik Font

![Font Preview](docs/preview.png) -Putnik is rough condensed cyrillic display font. It is primarily inspired by runic script, early cyrillic script and wooden pagan inscriptions. +Putnik is rough condensed cyrillic display font. It is primarily inspired by +runic script, early cyrillic script and wooden pagan inscriptions. This font is non-professional, though. -Putnik was made especially for [short-movie by Ilya Osenev](https://www.youtube.com/watch?v=VteH0cZsxPg) with the same name. +Putnik was made especially for +[short-movie by Ilya Osenev](https://www.youtube.com/watch?v=VteH0cZsxPg) with +the same name. Font is made with Inkscape and FontForge. ## Glyph set -Currently there's not too much glyphs. There is cyrillic (all caps), digits and incomplete set of punctuation. +Currently there's not too much glyphs. There is cyrillic (all caps), digits and +incomplete set of punctuation. ## Compilation ### Prerequisites -You need python, pip and fontmake. +All you need is python and pip and venv modules. If you are using Linux or MacOS, +chanses are you already have all of this. If not, install them using your package +manager. -```terminal -$ python -m pip install fontmake +```console +$ which python +/usr/bin/python +$ python -m pip --version +pip XX.X.X from /usr/lib/python3.8/site-packages/pip (python 3.8) ``` ### Building To build both otf and ttf versions, just run -```terminal +```console $ make ``` +This will create python virtual environment in directory `venv`, install fontmake +package from requirements.txt and build the fonts to `fonts/` directory. + If you want only ttf or otf, run -```terminal +```console $ make otf ``` or -```terminal +```console $ make ttf ``` respectively. + +To make zip or tarball package, run `make release`. ## Todo's
A requirements.txt

@@ -0,0 +1,18 @@

+appdirs==1.4.4 +attrs==20.3.0 +booleanOperations==0.9.0 +cffsubr==0.2.7 +compreffor==0.5.0 +cu2qu==1.6.7 +fontmake==2.2.1 +fontMath==0.6.0 +fonttools==4.17.1 +fs==2.4.11 +glyphsLib==5.2.0 +lxml==4.6.1 +pyclipper==1.2.0 +pytz==2020.4 +six==1.15.0 +ufo2ft==2.16.0 +ufoLib2==0.8.0 +unicodedata2==13.0.0.post2