Установка LaTeX

Из ленты: QA — грамотно

У меня уже произошло стойкое углубление в LaTeX, что привело к массивным экспериментам со множеством его пакетов, поэтому наличие полного набора всего и сразу мне благостно. Заранее же не знаешь, куда любопытство заведёт.

Чтобы познакомиться с LaTeX, исчерпывающе достаточно установить Kile (редактор для LaTeX в среде KDE)

sudo aptitude install kile

При установке Kile принудительно потянет за собой зависимости, необходимые для базовой установки LaTeX.

Например, будет установлен базовый пакет ‘texlive-latex-base’. Посмотреть информацию о нём:

sudo aptitude show texlive-latex-base

И это, конечно же, хорошо. Однако, как всегда, версия в репозиториях на порядок старее актуальной.

Current release ‘TeX Live 2017’ — от 4 June 2017.

В то время, как наши вселенные бороздят просторы кораблей, в репозиториях Debian доступен только LaTeX версии ‘2016.20170123-5‘.

Я понимаю, что философия Debian не подталкивает к использованию «всего самого свежего», но речь идет о TeX, который в принципе остановился в развитии на версии 3.14, а обновляются только пакеты LaTeX, поэтому тут можно смело требовать «свежатинки».

Установка LaTeX из сети возможна, но процесс скачивания и установки трёх тысяч файлов долгий, и при сбоях связи слегка… раздражающ. И ещё говорят, что

…if TeXLive is installed via Debian’s own package manager (apt, synaptic, etc), TeXLive’s package manager (tlmgr) will not be available. This means that if a newer version of a package, or a package that is not in one of Debian’s own groups of LaTeX packages is required, it ends up being manually installed and that can make your system messy and hard to maintain.

This can be a big issue with Debian, since it has a very conservative view of what is a ‘stable’ package, and can easily be three years behind the main TeXLive repository.

Таки да, как-то довелось разбираться с установкой пакетов по-отдельности, и это было стрёмно.

Хочется просто поставить LaTeX самостоятельно и заставить Kile сразу работать с установленной программой, а не… Без дополнительных телодвижений эта задача принципиально нерешаема, бо философия Debian же, и она правильна и непогрешима (админь!), поэтому далее рассматривается несколько замороченная, но исключительно однозначная, точная и грамотная ручная установка всего набора LaTeX из его официального iso-файла  вкупе с неординарной, но смелой установкой Kile.

0
Место для LaTeX

Всё в наших руках, место установки произвольное. Но по-умолчанию будет предложена установка в /usr/local/texlive/2017/.

Это разумно. Каталог с названием года выпуска — это фича, бо это позволяет установить сразу 100500 версий LaTeX рядом и переключаться между ними…

В /usr/ хранятся все установленные пакеты программ, документация, исходный код ядра и система X Window и да, к содержимому /usr/ все пользователи (кроме root) имеют доступ только «для чтения». А если система со своим /usr/ ещё и находится на SSD (solid-state drive, твердотéльный накопи́тель), а /home/ положено на HDD, то LaTeX, который и так работает быстро, будет работать еще быстрее нужного (о-ля-ля, куда уж быстрее-то?!).

Однако нет.

1
На моём ноуте только один юзер, и городить «общий доступ» нет резона. И вообще, сделаем установку portable LaTeX (то есть, эту шнягу можно установить даже на флэшку, my ass!).

2
В будущем всегда маячит переустановка системы. Если при этом не заморочиться бэкапом всего /usr/ (что вряд ли, если произойдёт большой и внезапный бэмц вроде «эсэсдэ помрэ»), то LaTeX придётся и ставить, и настраивать с нуля. Ы!

3
То же самое относится к установке программы в /opt/. Тоже, кагбэ, логичное для установки место, но оно тоже будет «обнулено» при вероятностной переустановке системы.

4
Для крупного обновления разумно сносить «устаревший» LaTeX и ставить новый «с нуля» (так гласит официальная инструкция, не будем ей перечить), и очевидно, что жить будет проще, товарищи, жить будет веселее, если новый софт будет установлен в тот же самый каталог с сохранением тех же путей в системных переменных. Поэтому не хочется устанавливать софт в каталог с названием типа /2017/ !

Хочется поставить программу в каталог, который не привязан к номеру года, и расположен близко к домашнему каталогу, и при этом находится в месте, в котором изменения возможны только для root. Собственно настройки программы, так и быть, положим к своему юзеру в скрытый каталог, бо настройки же юзерские, и будут то и дело уточняться.

И местами — весьма серьёзно, в режиме «раз настроил и забыл», поэтому припоминать «что там менялось» через год-два будет очень, очень затруднительно.

Поэтому далее рассматривается только

установка LaTeX в каталог ‘/home/LaTeX/‘.

Несколько раз понадобится логиниться под root (и нет, речь не про sudo), а на шаге 2.2 придется кардинально завершить user session и перелогиниться, чтобы подхватились переменные в PATH.

И во всех командах кавычки ординарные.

Если при копировании текста из этого документа произойдёт сбой (например, на шаге 11.3) то скорее всего, это WordPress подменил ординарные кавычки на английские фигурные. Учесть и вмешаться руками.

Погнали.

«…Обожаю запах напалма по утрам…» ©

1
Подготовить систему

Убеждаемся в том, что в системе нет ни TeX, ни Kile (бо при установке этого удобнейшего редактора для LaTeX принудительно устанавливается и TeX из репозитория, но это не наш метод).

sudo aptitude purge texlive-latex-base

Итогом команды должно быть сообщение:

Пакет texlive-latex-base не установлен, поэтому не может быть удалён
Пакет texlive-latex-base не установлен, поэтому не может быть удалён
Ни одного пакета не будет установлено, обновлено или удалено.
0 пакетов обновлено, 0 установлено новых, 0 пакетов отмечено для удаления, и 0 пакетов не обновлено.
Необходимо получить 0 Б архивов. После распаковки 0 Б будет занято.

Иначе настоять на его удалении.

Вообще, можно заглянуть в Apper и поискать там всё, что содержит в себе буквы ‘tex‘ (внимательнее смотреть, бо могут быть софтины, которые к LaTeX не относятся).

1.1
Создать каталог для файла с образом LaTeX

mkdir /home/yourUserHomeFolder/LaTeX_Installation/ && cd /home/yourUserHomeFolder/LaTeX_Installation/ && echo ‘Done!’

1.2
Выбрать ресурс для скачивания iso-файла c LaTeX

Выбирать на https://ctan.org/mirrors

Мастер-хост проекта LaTeX находится в Германии — ftp://ftp.dante.de/tex-archive

и ещё Германия
http://ctan.127001.ovh/systems/texlive/Images/

и Беларусь
http://mirror.datacenter.by/pub/mirrors/CTAN/systems/texlive/Images/

Украины на этой карте мира нет.

И Молдовы нет.

1.3
Из каталога Images скачать texlive[последнийГодВыпуска].iso

Например, сейчас это http://ctan.127001.ovh/systems/texlive/Images/texlive2017.iso

Скачивать можно и через браузер, и через wget:

wget http://ctan.127001.ovh/systems/texlive/Images/texlive2017.iso —directory-prefix=/home/yourUserHomeFolder/LaTeX_Installation/ && echo ‘Done!’

Ждать, бо файл весит ~3.4 Gb.

Можно перейти в другое окно с консолькой и

2
Подготовить окружение

2.1
Выполнить дежурный запрос об указании месторасположения LaTeX

which tex

Ожидаем сообщение о том, что ничего не найдено, иначе перейти к шагу №1 и начать крушить/удалять.

2.2
Проверить отстутствие Kile (ну, мало ли)

aptitude purge kile

2.3
Установить ‘Perl/Tk module’

Он понадобится в будущем для работы «TeX Live Manager» (он же tlmgr)

sudo aptitude install perl-tk

3
Добавить в PATH путь к будущим файлам LaTeX

3.1
Добавить PATH для root

Логинимся под root:

su

и переходим в корень профиля root:

cd ~

Редактируем файл .bashrc (удобно через Midnight Commander), добавляем туда три строки:

PATH=/home/LaTeX/bin/x86_64-linux:$PATH
INFOPATH=/home/LaTeX/texmf-dist/doc/info:$INFOPATH
MANPATH=/home/LaTeX/texmf-dist/doc/man:$MANPATH

exit

3.2
Добавить PATH для юзера

Из-под своего юзера своем домашнем каталоге отредактировать файл .bash_profile [создать его, если отсутствует] — добавить туда три строки:

PATH=/home/LaTeX/bin/x86_64-linux:$PATH
INFOPATH=/home/LaTeX/texmf-dist/doc/info:$INFOPATH
MANPATH=/home/LaTeX/texmf-dist/doc/man:$MANPATH

3.3
«Петросян, перелогиньтесь»

#включить мозг и осторожность

Убедиться в том, что iso-файл из шага №1.3 успешно скачался.

Если да, то надо разлогиниться/залогиниться, иначе переменные в профиле юзера не подхватятся.

4
Монтировать iso-файл

Во временном разделе создать новый каталог, в который будет смонтирован образ диска:

mkdir /tmp/latex_installation/

Монтируем образ в каталоге /tmp/ — там он будет жить до следующей перезагрузки системы; заодно не будем морочиться с его размонтированием.

sudo mount -o loop texlive2017.iso /tmp/latex_installation

Сообщение «mount: /dev/loop0 is write-protected, mounting read-only» говорит о том, что всё хорошо.

В системе появился новый диск (новое устройство). И он огорожен от записи.

5
Подготовить установку LaTeX

5.1
Создать каталог, в который будет установлен LaTeX

Сделать это из-под root, чтобы в будущем оградить его от даже случайного изменения всего содержимого:

sudo mkdir /home/LaTeX/

5.2
Создать место для собственных настроек LaTeX

mkdir -p ~/.LaTeX_Settings/{texmf,texmf-config,texmf-var}

В каталоге юзера появится скрытый каталог ‘.LaTeX_Settings‘ и, соответственно, три каталога в нём.

5.3
Настроить свой installation.profile

В своём профиле создать файл профиля для установки

touch ~/LaTeX_Installation/installation.profile

В этот файл вписать следующий текст:

selected_scheme scheme-full
TEXDIR /home/LaTeX
TEXMFLOCAL /home/LaTeX/texmf-local
TEXMFSYSCONFIG /home/LaTeX/texmf-config
TEXMFSYSVAR /home/LaTeX/texmf-var
TEXMFCONFIG /home/[UserFolder]/.LaTeX_Settings/texmf-config
TEXMFHOME /home/[UserFolder]/.LaTeX_Settings/texmf
TEXMFVAR /home/[UserFolder]/.LaTeX_Settings/texmf-var
binary_x86_64-linux 1
instopt_adjustpath 0
instopt_adjustrepo 1
instopt_letter 0public/pscyr/
instopt_portable 0
instopt_write18_restricted 1
tlpdbopt_autobackup 1
tlpdbopt_backupdir tlpkg/backups
tlpdbopt_create_formats 1
tlpdbopt_desktop_integration 1
tlpdbopt_file_assocs 1
tlpdbopt_generate_updmap 0
tlpdbopt_install_docfiles 1
tlpdbopt_install_srcfiles 1
tlpdbopt_post_code 1
tlpdbopt_sys_bin /usr/local/bin
tlpdbopt_sys_info /usr/local/share/info
tlpdbopt_sys_man /usr/local/share/man
tlpdbopt_w32_multi_user 1

Первая строка просто указывает «Установить сразу всё-всё-всё-всё!».

Дальше указаны каталоги из №5.2 — внимательно прочитать и указать свои настройки для TEXMFCONFIG, TEXMFHOME и TEXMFVAR. Внимание, закрывающие слэши не нужны.

Справка:
TEXDIR — каталог, в котором будет жить LaTeX.
TEXMFVAR — personal directory for variable and automatically generated data
TEXMFCONFIG — personal directory for local config
TEXMFHOME — directory for user-specific files.

binary_x86_64-linux 1 = установить для 64-битной архитектуры. Современность, все дела.

Остальное сгенерировано родным установщиком LaTeX, оставляем без изменений.

6
Установить LaTeX

#включить мозг и осторожность
cd /tmp/latex_installation/

sudo ./install-tl -portable -profile ~/LaTeX_Installation/installation.profile && echo ‘Done!’

Обрабатываются ~3423 файла… Ждать, пока

LaTeX_installation

LaTeX_installation

7
Проверить работоспособность LaTeX

Под своим юзером зайти в любой временной каталог, чтобы не мусорить в существующих, бо сейчас будет создан тексовский pdf-документ и несколько сопутствующих ему служебных файлов.

mkdir /tmp/testtex && cd /tmp/testtex

Запросить информацию о месторасположении LaTeX. Это зависит от переменной PATH, которая уже была настроена в шаге №2.

which tex

Ответом нам должно быть ‘/home/LaTeX/bin/x86_64-linux/tex‘, иначе алярм.

Запросить информацию о версии текса:

tex —version

Ответ ‘TeX 3.14159265 (TeX Live 2017)‘ и так далее нас полностью удовлетворит.

Создать тестовый (красивый!) документ за подписью Лесли Ламберта, 2004-го года

pdflatex sample2e.tex

Смотреть значения переменных LaTeX по-отдельности:

kpsewhich -var-value TEXMFHOME
kpsewhich -var-value TEXMFLOCAL

и так далее при желании.

Посмотрим содержимое файла всех настроек LaTeX (много текста, зато мало магии и непонятных мест):

texconfig conf

Если не будет ругательств, то усё, LaTeX, в принципе, работает.

8
Обновить TeX из сети

Проверим наличие «TeX Live Manager» (он же tlmgr):

which tlmgr

Ждём ответ ‘/home/LaTeX/bin/x86_64-linux/tlmgr‘, иначе алярм.

8.2
Запуск tlmgr

Только из-под root, sudo здесь не сработает:

su

Для разгона откроем tlmgr в окне:

#включить мозг и осторожность
tlmgr —gui

 

TexLive Manager

TexLive Manager

Здесь разумно разве что обновить базу данных шрифтов в разделе «Действия» (оно же команда updmap-sys) и быстро сваливаем отсюда.

Обновляем сам tlmgr (если обновлений не понадобится, он об этом сообщит):

tlmgr update —self

Обновляем из сети весь TeX (поскольку уже установлена новейшая версия, ждем сообщения о том, что обновлений не требуется; иначе это будет почти так же долго, как установка, бо три тыщи файлов)

tlmgr update -all

Отныне и впредь, пока прогресс не нагрянет, все периодические обновления LaTeX делаем через эту команду.

А когда выйдет следующее КРУПНОЕ обновление, tlmgr сообщит о том, что «не могу выполнить запрос», и придётся обновлять LaTeX с нуля.

exit

9
Установить Kile

Kile при установке тащит из репозиториев Debian свой TeX, невзирая на наличие уже установленного, и хочет работать только с ним.

Военная хитрость: создадим свой deb-файл, лживые настройки которого заставят Debian поверить в том, что TeX из репозиториев уже установлен, утибоземой, и можно установить всего лишь Kile.

9.1
Поставить приблуду equivs

sudo aptitude install equivs —no-install-recommends

9.2
Cоздать рабочий файл для будущего проекта deb

Одной командой:

  • создать каталог для работы с equivs в /tmp/
  • перейти в него
  • скачать из сети уже готовый файл с перечнем пакетов, установку которых надо проэмулировать
  • создать в equivs новый проект с названием ‘texlive-local’ (просто файл)

mkdir /tmp/installKileWithEquivs/ && cd /tmp/installKileWithEquivs/ && wget http://www.tug.org/texlive/files/debian-equivs-2015-ex.txt —directory-prefix=/tmp/installKileWithEquivs/ && equivs-control texlive-local && echo ‘Done!’

9.3
Отредактировать файл «debian-equivs-2015-ex.txt»

Добавить в перечень пакетов в строку ‘Provides:’ ещё и «texlive-doc-base«, бо его там по-умолчанию не вписали.

9.4
Скопировать содержимое файла «debian-equivs-2015-ex.txt» в файл «texlive-local»

/bin/cp -f debian-equivs-2015-ex.txt texlive-local && echo ‘Done!’

9.5
Создать файл texlive-local_2015-1_all.deb

equivs-build texlive-local

Получить сообщение ‘The package has been created’, иначе алярм.

9.6
Установить texlive-local_2015-1_all.deb

После этого шага Debian искренне «поверит» в то, что у неё установлены все пакеты, которые были перечислены в файле «debian-equivs-2015-ex.txt».

sudo dpkg -i texlive-local_2015-1_all.deb

9.7
Установить Kile

Не спешить! После команды установки проверить список пакетов, которые будут предложены к установке. В этом списке ожидаем что-то вроде

Следующие НОВЫЕ пакеты будут установлены:
kile konsole4-kpart{a}

и ничего более.

Если будет предложен какой-либо пакет, в названии которого есть слово ‘tex’ — остановиться, вернуться к №9.3 и добавить в общий список муляжей «лишний» пакет, повторить шаги №9.4, 9.5 и 9.6, и лишь затем продолжить установку Kile.

#включить мозг и осторожность
sudo aptitude install kile

9.8
Проверить работоспособность Kile

Запустить Kile > Settings > System Check…

Kile system check

Kile system check

Может насторожить алерт на отсутствие ‘Acroread’, но это всего лишь уведомление о том, что не установлен Acrobat Reader, который и так не нужен (есть же Evince или Okular). Во всех остальных пунктах в разделе ‘Binary’ должен быть указан путь к ранее установленному LaTeX (/home/LaTeX/bin/…)

А equivs можно удалить.

10
Установить шрифты для LaTeX

10.1
Создать файл 09-texlive.conf

sudo cp $(kpsewhich -var-value TEXMFSYSVAR)/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf && echo ‘Done!’

Появляется файл /etc/fonts/conf.d/09-texlive.conf с текстом:

<?xml version=»1.0″?>
<!DOCTYPE fontconfig SYSTEM «fonts.dtd»>
<fontconfig>
<dir>/home/LaTeX/texmf-dist/fonts/opentype</dir>
<dir>/home/LaTeX/texmf-dist/fonts/truetype</dir>
<dir>/home/LaTeX/texmf-dist/fonts/type1</dir>
</fontconfig>

10.2
Отредактировать файл 09-texlive.conf

Из-под root открыть файл /etc/fonts/conf.d/09-texlive.conf

Удалить строку, в которой написано ‘type1‘ (предпоследняя) and save.

10.3
Обновить кэш шрифтов

sudo fc-cache -fsv && echo ‘Done!’

Если шрифтов много, дело может быть не односекундным.

В результате: есть новые шрифты в /home/LaTeX/texmf-dist/fonts/truetype/ и в /home/LaTeX/texmf-dist/fonts/opentype/

11
Установить русские шрифты для LaTeX

Эти шрифты сделаны Александром Лебедевым в 2004-ом, и существуют самостоятельно в виде двух архивов.

11.1
Скачать PSCyr

Ранее эти два архива находились на ftp://ftp.vsu.ru/pub/tex/font-packs/pscyr/0.4d-beta/ — ныне сервер ненавидит всех анонимаусов.

Скачиваем их с

или с

11.2
Распаковать PSCyr

Выполним одним движением сразу несколько команд последовательно:

mkdir /tmp/latex_fonts/ && cd /tmp/latex_fonts/ && wget http://www.tex.uniyar.ac.ru/package/fonts/pscyr/0.4d-beta9/pscyr-0.4-beta9exp2-tex.tar.gz && wget http://www.tex.uniyar.ac.ru/package/fonts/pscyr/0.4d-beta9/pscyr-0.4-beta9exp2-type1.tar.gz && tar -xzf pscyr-0.4-beta9exp2-tex.tar.gz && tar -xzf pscyr-0.4-beta9exp2-type1.tar.gz && cd PSCyr/ && echo ‘Done!’

В итоге мы находимся в новом каталоге /tmp/latex_fonts/PSCyr/.

11.3
Создать переменную $DEST_DIR

Установка шрифтов делается с использованием переменных, и возможна

  • для юзера — определяется содержимым $TEXMFHOME
  • для всей системы (root) — определяется содержимым $TEXMFLOCAL

Дальновиднее использовать шрифты глобально, поэтому далее погнали под root.

su

Её содержимое будет идентично содержимому латэчевской переменной $TEXMFLOCAL. Для порядка проверим её содержимое:

kpsewhich -expand-var=’$TEXMFLOCAL’

Правильный ответ ‘/home/LaTeX/texmf-local‘. Иначе алярм.

Присваиваем $DEST_DIR нужное значение и сразу проверяем, всё ли прошло гладко:

DEST_DIR=’/home/LaTeX/texmf-local’ && echo $DEST_DIR

Правильный ответ ‘/home/LaTeX/texmf-local‘. Иначе алярм.

11.4
Создать новые каталоги для русских шрифтов

Из-под root:

mkdir -p $DEST_DIR/fonts/{afm,tfm,type1,vf}/public/pscyr/ && mkdir -p $DEST_DIR/fonts/{enc,map}/dvips/pscyr/ && mkdir -p $DEST_DIR/fonts/map/dvipdfm/pscyr/ && mkdir -p $DEST_DIR/tex/latex/pscyr/ && mkdir -p $DEST_DIR/doc/fonts/pscyr/ && echo ‘Done!’

11.5
Перенести новые файлы в новые каталоги

Мы всё ещё находимся в /tmp/latex_fonts/PSCyr/ под root.

cp fonts/afm/public/pscyr/* $DEST_DIR/fonts/afm/public/pscyr/ && cp fonts/tfm/public/pscyr/* $DEST_DIR/fonts/tfm/public/pscyr/ && cp fonts/type1/public/pscyr/* $DEST_DIR/fonts/type1/public/pscyr/ && cp fonts/vf/public/pscyr/* $DEST_DIR/fonts/vf/public/pscyr/ && cp dvips/pscyr/*.enc $DEST_DIR/fonts/enc/dvips/pscyr/ && cp dvips/pscyr/*.map $DEST_DIR/fonts/map/dvips/pscyr/ && cp dvipdfm/base/*.map $DEST_DIR/fonts/map/dvipdfm/pscyr/ && cp tex/latex/pscyr/* $DEST_DIR/tex/latex/pscyr/ && cp ChangeLog $DEST_DIR/doc/fonts/pscyr/ && cp LICENSE $DEST_DIR/doc/fonts/pscyr/ && cp manifest.txt $DEST_DIR/doc/fonts/pscyr/ && cp doc/PROBLEMS $DEST_DIR/doc/fonts/pscyr/ && cp doc/fonts-ex.tex $DEST_DIR/doc/fonts/pscyr/ && echo ‘Done!’

После этого каталог PSCyr можно переместить в каталог с iso-файлом всего LaTeX, чтобы в будущем при переустановках не пришлось искать всё это в сети.

11.6
Перекодировать файл doc/README из старого (и доброго) KOI8-R в современный UTF8

А то вдруг захочется его прочитать.

iconv -f KOI8-R -t UTF8 < doc/README.koi > $DEST_DIR/doc/fonts/pscyr/README.utf8 && echo ‘Done!’

11.7
Принудить систему учитывать новые шрифты

texhash && mktexlsr && updmap-sys —enable Map=pscyr.map && echo ‘Done!’

Во всей системе (то есть, и в LibreOffice) должны появиться

Шрифты с засечками:

  • AcademyPSCyr (Академическая)
  • AntiquaPSCyr (Квант Антиква)
  • HandbookPSCyr (Балтика)
  • CollegePSCyr (Бодони)
  • JournalPSCyr (Журнальная)
  • Lazurski (Лазурская) — только в начертании Regular
  • TimesNewRomanPSMT (Таймс)

Рубленые шрифты:

  • ArialMT (Ариал)
  • TextbookPSCyr (Букварная)
  • MagazinePSCyr (Журнальная рубленая)

Моноширинные шрифты:

  • CourierNewPSMT (Курьер)
  • ERKurierPSCyr (ER Курьер)

Декоративные шрифты:

  • CooperPSCyr (Кладезь)
  • AdvertisementPSCyr (Рекламный)

12
Использовать русский шрифт в документах LaTeX

Открыть Kile, создать проект любого типа, в его предусловиях (настройках) вписать всё нижеследующее и скомпилировать pdf c произвольным «русским по-белому» текстом inside.

% использую многоязычность и объявляю русский язык главным (от этого зависит грамотность расстановки переносов по всему документу).
% !!! НЕЛЬЗЯ менять местами указание пакетов!!! Иначе начнутся проблемы с кодировкой в документе.
% в частности, bibtex сойдет с ума. А после перестановки указания пакетов надо будет удалить файл qaGramotnoProject.bbl (в нем составляется и хранится список цитируемой литературы).
\usepackage[english,russian]{babel}

% указание типа шрифтов из пакета PSCyr (был установлен отдельно)
\usepackage[T2A]{fontenc}

% Сам пакет русских шрифтов
\usepackage{pscyr}

% Если не устраивает шрифт, который используется в pscyr по умолчанию (шрифт с засечками — Антиква, рубленый шрифт — Букварная, шрифт пишущей машинки — ER Курьер), следует поставить в преамбулу, например, команду:
\renewcommand{\rmdefault}{fsv}

% коды взяты из файла /texmf/tex/latex/pscyr/pscyr.sty
% {crm} — Palantino,
% {cmtt} — Courier New

% Шрифты с засечками:

% fac Academy Академическая
% faq AntiquaPSCyr Антиква — ОТЛИЧНО!
% fco College Бодони
% fha HandbookPSCyr Балтика
% fjn JournalPSCyr Журнальная
% fsv SouvenirPSCyr Сувенир — ОЧЕНЬ КРАСИВО!
% flz Lazurski Лазурски — НАПОМИНАЕТ GEORGIA
% ftm TimesNewRomanPSMT Таймс

% Рубленые шрифты:

% far ArialMT Ариал
% ftx TextbookPSCyr Букварная — воспринимается как Verdana,
% fma MagazinePSCyr Журнальная рубленая — КРАСИВО!

% Моноширинные (typewritter) шрифты:

% fer ERKurierPSCyr ER Курьер
% fcr CourierNewPSMT Курьер

% Декоративные шрифты:

% fad Advertisement Рекламный — НЕ РАБОТАЕТ, ХРЕН С НИМ
% fcp CooperPSCyr Кладезь

% Все остальные шрифты

% \usepackage{cabin} % бледно
% \usepackage{droid} % жирно очень
% \usepackage{opensans} % бледновато, заголовки не жирные
\usepackage{erewhon} % практически норм, тот же opensans, но не бледно, и заголовки ЖИРНЫЕ

% \renewcommand{\rmdefault}{fcp} % грубый хак, назначить основным шрифтом с засечками рубленую вердану.
% \renewcommand{\sfdefault}{ftx}
% \renewcommand{\ttdefault}{cmtt}

Enjoy.

Источник