LaTeX + системы CI = overhead

Oct 19, 2017 21:38


Лет шесть тому назад я пользовался MiKTeX - это такой дистриб  LaTeX под винду. У него была прекрасная опция "install missing packages  on the fly" (устанавливать недостающие пакеты на муху, да) - нужные  пакеты и расширения ставились только по мере надобности. Потом я перешёл  на TeXLIve - это другой дистриб, уже кроссплатформенный, но у него  опции установки по мере надобности нет. Локально всё решилось довольно просто -  ставим полную сборку со всеми пакетами (это почти 5 гигов, на ультрабуке  с винтом в 128 гигов это может быть довольно больно).

А теперь  самое интересное - с развитием бесплатных систем непрерывной интеграции  а-ля travis много кто хочет пушить код LaTeX в свой  репозиторий на гитхабе, чтобы ему потом travis прогнал компиляцию в pdf и  выгрузил результат куда-нибудь. Это звучит интересно в теории и помогает на практике (особенно если на локальной машине ТеХа нет). Одно только но  - TeXLive не умеет устанавливать пакеты на лету! Поэтому люди что  делают в скрипте сборки проекта, ведь явно же лень прописывать руками установку всех пакетов? Правильно, "скачай и поставь полный TeXLive, потом скачай и скомпилируй мой код и, наконец, выгрузи полученные pdf туда-то". Итог - скачиваем 5 гигов, а реально пользуемся  от силы сотней метров скачанного. Даже если уже готовую сборку хранить в  кэше, эффективность что по времени загрузки образа системы, что по количеству скачанного - ниже плинтуса.

linux, latex

Previous post Next post
Up