summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md164
1 files changed, 14 insertions, 150 deletions
diff --git a/README.md b/README.md
index 08681f6..45d36d4 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
This is the source repository for Roboto: Google’s signature family
-of fonts, the default font on Android and ChromeOS, and the
+of fonts, the default font on Android and Chrome OS, and the
recommended font for Google’s visual language, Material Design.
It also contains the toolchain used in creating Roboto.
@@ -14,128 +14,43 @@ The fonts are currently available in eighteen different styles.
## Setup
-#### Create a clean directory for roboto:
+Create a clean directory for Roboto:
```bash
mkdir -p $HOME/roboto-src
cd $HOME/roboto-src
```
-#### Download the code and dependencies:
+Download the Roboto tools and sources:
```bash
git clone https://github.com/google/roboto.git
-git clone https://github.com/behdad/fonttools.git
-git clone https://github.com/googlei18n/cu2qu.git
-git clone https://github.com/jamesgk/ufo2ft.git
-git clone https://github.com/robofab-developers/robofab.git
-git clone https://github.com/typesupply/feaTools.git
-git clone https://github.com/typemytype/booleanOperations.git
```
-download [Cython](http://cython.org/#download) and extract it into
-the current directory. On Ubuntu, Cython can also be downloaded and installed
-via:
+Create a virtual Python environment (optional but recommended):
```bash
-sudo apt-get install cython
+pip install --user virtualenv
+virtualenv roboto-env
+source roboto-env/bin/activate
```
-##### For OTF/TTF generation:
-
-To build the FDK yourself:
+Download and install the dependencies:
```bash
-git clone https://github.com/adobe-type-tools/afdko.git
+cd roboto
+pip install -r requirements.txt
```
-download the latest version of Python 2.7
-[here](https://www.python.org/downloads/) and extract it into the current
-directory.
-
-If you're not building the FDK yourself, download the pre-built version
-[here](http://www.adobe.com/devnet/opentype/afdko.html) and unzip it into the
-current directory.
+#### Optional additional setup for running tests
-##### For post-production:
-
-```bash
-git clone https://github.com/googlei18n/nototools
-git clone https://github.com/rougier/freetype-py.git
-```
-
-download the latest tarball release of HarfBuzz
+Download the latest tarball release of HarfBuzz
[here](http://www.freedesktop.org/wiki/Software/HarfBuzz/) and extract it into
the **home** directory as `$HOME/harfbuzz` (alternatively, you can download the
latest source from GitHub via
`git clone https://github.com/behdad/harfbuzz.git`).
-#### Install dependencies:
-
-You can install the necessary modules at the sytem level:
-
-```bash
-cd fonttools
-sudo python setup.py install
-cd ../cu2qu
-sudo python setup.py install
-cd ../ufo2ft
-sudo python setup.py install
-cd ../robofab
-sudo python setup.py install
-cd ../feaTools
-sudo python setup.py install
-cd ../Cython-0.22
-sudo python setup.py install
-cd ../booleanOperations
-sudo python setup.py install
-cd ..
-```
-
-Or set `$PYTHONPATH` locally before running `make`:
-
-```bash
-PYTHONPATH="$PYTHONPATH:$HOME/roboto-src/fonttools/Lib"
-PYTHONPATH="$PYTHONPATH:$HOME/roboto-src/cu2qu/Lib"
-PYTHONPATH="$PYTHONPATH:$HOME/roboto-src/ufo2ft/Lib"
-PYTHONPATH="$PYTHONPATH:$HOME/roboto-src/robofab/Lib"
-PYTHONPATH="$PYTHONPATH:$HOME/roboto-src/feaTools/Lib"
-PYTHONPATH="$PYTHONPATH:$HOME/roboto-src/booleanOperations/Lib"
-```
-
-##### For OTF generation:
-
-If building the FDK yourself, follow the instructions in `afdko/FDK/FDK Build Notes.txt`:
-
-```bash
-cd Python-2.7
-./configure --prefix=AFDKOPythonBuild
-make install
-mv AFDKOPythonBuild ../afdko/FDK/Tools/osx/Python
-cd ../fonttools
-sudo ../afdko/FDK/Tools/osx/Python/bin/python setup.py install
-cd ../afdko/FDK/Tools/Programs
-./BuildAll.sh
-cd ../..
-./FinishInstallOSX
-cd ../..
-```
-
-Otherwise:
-
-```bash
-cd FDK
-./FinishInstallOSX
-cd ..
-```
-
-In either case, use whatever install scripts and directory
-(`FinishInstall[OSX|Linux|Windows.cmd]`,
-`BuildAll[.sh|Linux.sh|.cmd]`,
-`FDK/Tools/[osx|linux|win]`) are appropriate for your platform (more
-detailed information can be found in `FDK/Read_Me_First.html`).
-
-##### For post-production:
+Build and install HarfBuzz:
```bash
cd $HOME/harfbuzz
@@ -145,23 +60,6 @@ sudo make install
cd $HOME/roboto-src/
```
-Install python modules to system:
-
-```bash
-cd noto
-sudo python setup.py install
-cd ../freetype-py
-sudo python setup.py install
-cd ..
-```
-
-Or:
-
-```bash
-PYTHONPATH="$PYTHONPATH:$HOME/roboto-src/noto"
-PYTHONPATH="$PYTHONPATH:$HOME/roboto-src/freetype-py"
-```
-
On Ubuntu (or other distributions of GNU/Linux, using the appropriate package
manager), make sure eog is installed:
@@ -169,43 +67,9 @@ manager), make sure eog is installed:
sudo apt-get install eog
```
-#### Running the toolchain:
+## Run
```bash
cd roboto
make
```
-
-## Dependencies
-The Roboto build toolchain depends on:
-
-- FontTools (https://github.com/behdad/fonttools)
-- RoboFab (https://github.com/robofab-developers/robofab)
-- NumPy and SciPy (http://www.numpy.org/)
-- feaTools (https://github.com/typesupply/feaTools.git), for feature handling.
-- BooleanOperations (https://github.com/typemytype/booleanOperations), for
- glyph overlap removal.
- - (requires Cython to install: http://cython.org/)
-
-## OTF/TTF Generation
-OTF generation depends on:
-
-- ufo2ft (https://github.com/jamesgk/ufo2ft)
-- cu2qu (https://github.com/googlei18n/cu2qu)
-- Open-source portions of the AFDKO
- (https://github.com/adobe-type-tools/afdko/releases)
-
-The AFDKO from GitHub can be time consuming to setup. It is easier to just use
-the variety which includes closed-source tools
-(http://www.adobe.com/devnet/opentype/afdko.html), though these closed-source
-portions are not used to build Roboto.
-
-## Post-Production
-Post-production scripts (most of the code outside of the `fontbuild` directory,
-e.g. for testing output) depend on:
-
-- The nototools module, installed as part of Noto
- (https://github.com/googlei18n/nototools)
- - (Noto subsequently depends on HarfBuzz: https://github.com/behdad/harfbuzz)
-- freetype-py (https://github.com/rougier/freetype-py)
-- eog (https://wiki.gnome.org/Apps/EyeOfGnome)