https://github.com/avivace/iosevka-docker
Docker containers to build custom (or upstream) versions of the Iosevka typeface and package them for Debian
https://github.com/avivace/iosevka-docker
debian debian-package debian-packages debian-packaging docker docker-image dockerfile font font-build fonts monospace monospace-font
Last synced: 4 days ago
JSON representation
Docker containers to build custom (or upstream) versions of the Iosevka typeface and package them for Debian
- Host: GitHub
- URL: https://github.com/avivace/iosevka-docker
- Owner: avivace
- License: cc0-1.0
- Created: 2020-11-25T17:02:10.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-03-14T21:52:08.000Z (about 2 years ago)
- Last Synced: 2025-02-25T11:39:49.034Z (2 months ago)
- Topics: debian, debian-package, debian-packages, debian-packaging, docker, docker-image, dockerfile, font, font-build, fonts, monospace, monospace-font
- Language: Shell
- Homepage: https://hub.docker.com/r/avivace/iosevka-build
- Size: 49.8 KB
- Stars: 28
- Watchers: 6
- Forks: 11
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# iosevka-docker
[](https://hub.docker.com/r/avivace/iosevka-build)
Docker containers to build your own (or standard) version of the [Iosevka](https://github.com/be5invis/Iosevka) typeface without worrying about dependencies and build environments.
## Quickstart
Linux:
```bash
docker run -it -v $(pwd):/build avivace/iosevka-build
```Windows (Command Prompt)
```bash
docker run -it -v %cd%:/build avivace/iosevka-build
```Windows (PowerShell)
```bash
docker run -it -v ${PWD}:/build avivace/iosevka-build
```_For the rest of this document, replace `$(pwd)` with either `%cd%` or `${PWD}` based on your environment_
Will build the [latest](https://github.com/be5invis/Iosevka/releases/tag/v4.0.0) released version of Iosevka with the default configuration.
Your built font files will be available in the `dist/` folder.
### Custom build configuration
To customize your build, just launch the docker command from the directory where your `private-build-plans.toml` is placed.
You can prepare your configuration following the [Customized Build](https://github.com/be5invis/Iosevka#customized-build) documentation or use the [Iosevka Build Customizer](https://typeof.net/Iosevka/customizer).
> Be aware of the breaking changes introduced with 4.0.0 i.e. configurations working with `3.7.1` are not guaranteed to work with `4.0.0`.
### Version
To specify a version to build, just add `-e FONT_VERSION=` to the Docker command. E.g. to build version `3.7.1`:
```
docker run -e FONT_VERSION=3.7.1 -it -v $(pwd):/build avivace/iosevka-build
```
Releases can be found [here](https://github.com/be5invis/Iosevka/releases). Only font versions 3.0.0 or higher are supported.### Build arguments
You can pass any of the optional build options described in [Customized Build](https://github.com/be5invis/Iosevka#customized-build).
```
docker run -it -v $(pwd):/build avivace/iosevka-build [optional build args]
```E.g. to only build TTF files:
```bash
docker run -it -v $(pwd):/build avivace/iosevka-build ttf::iosevka-custom
```## Build the Docker image yourself
1. Be sure to have Docker installed. Clone this repository.
```bash
git clone https://github.com/avivace/fonts-iosevka.git
```2. If you want, replace the provided `private-build-plans.toml` file with yours.
3. Build and run the Docker container
```bash
# Build the container
docker build -t iosevka_build . -f Dockerfile# Launch the build on Iosevka git tag 3.7.1, using the build folder on the host
docker run -e FONT_VERSION=3.7.1 -it -v $(pwd)/build:/build iosevka_build
```4. Done! Your built font files are available in the `dist` folder.
## Install
Copy the generated folders in `~/.local/share/fonts` and run `fc-cache`.
```bash
cp -r build/dist/* ~/.local/share/fonts/
fc-cache
```## Debian packaging
TODO
## References and links
- https://git.mmk2410.org/deb/fonts-iosevka
- https://github.com/ejuarezg/containers/tree/master/iosevka_font#container-method
- https://github.com/be5invis/Iosevka
- [Original Dockerfile](https://gist.github.com/tasuten/0431d8af3e7b5ad5bc5347ce2d7045d7)
- https://github.com/nodesource/distributions/blob/master/README.md
- https://premake.github.io/download.html#v5
- https://stackoverflow.com/questions/6482377/check-existence-of-input-argument-in-a-bash-shell-script
- https://gist.github.com/steinwaywhw/a4cd19cda655b8249d908261a62687f8
- https://stackoverflow.com/questions/1247812/how-to-use-grep-to-get-anything-just-after-name