Ещё раз об ускорении сборки пакетов из AUR (для тех, кто пропустил).
1. Откройте для себя пакет
pacaur. Позволяет почти полностью уйти от порой весьма многочисленных «да/нет» при установке. Кроме того с успехом заменяет pacman. Одним словом два в одном. Англоязычный
форум пакета.
yaourt -S pacaur
Примечание: всегда проверяйте актуальное состояние пакетов
AUR helpers, в связи с изменениями после отказа сообщества от поддержки пакета
yaourt.
2. Настройте ваш компьютер с помощью пакета
ccache.
Ускоряет повторную и последующие компиляции пакета. Страница в
вики. Дополнительным преимуществом нижеприведенных настроек является возможность использования всех ваших ядер при компиляции.
pacaur -S ccache
sudo nano /etc/makepkg.conf
Два изменения в makepkg.conf. Раскомментировать
BUILDENV=(fakeroot !distcc color ccache check !sign)
Раскомментировать и редактировать
MAKEFLAGS
установив значение потоков в соответствии с вашим процессором. Например, 8 потоков (4 ядра) будут выглядеть вот так
MAKEFLAGS="-j8"
И дополнительная строка в .bashrc (скрытый файл в домашней директории home).
export PATH="/usr/lib/ccache/bin/:$PATH"
Оригинал на английском (но понять очень легко)
здесь.
В Новый год с новыми возможностями!)))
P.S. После занимательного
обсуждения почти через полтора года после данной публикации. И благодаря уточнениям форумян
@dimonmmk и
@SpongeBob оптимальным вариантом признано внесение следующих изменений в /etc/makepkg.conf в две секции
#########################################################################
# ARCHITECTURE, COMPILE FLAGS
#########################################################################
MAKEFLAGS="-j10 -l5"
...
#########################################################################
# COMPRESSION DEFAULTS
#########################################################################
COMPRESSXZ=(xz -c -z - --threads=0)
Опции в MAKEFLAGS оптимизируют количество потоков и загрузку системы.
Данная в тексте конфига рекомендация корректна для 4-х ядерного процессора и при включенном HT. Каждый пользователь самостоятельно выбирает оптимальный вариант для своего процессора… Подробности для продвинутых юзеров
здесь. Если этот выбор вызывает затруднения, то
@dimonmmk предлагает следующий выход
MAKEFLAGS="-j$(nproc)"
Опция в COMPRESSXZ --threads=0 включает все ядра для сжатия.
Дополнительно. Чтобы довести процесс до блеска можно учесть нижеследующее. Изменение PKGEXT='.pkg.tar' вместо PKGEXT='.pkg.tar.xz' — это выигрыш в скорости, но проигрыш в пространстве. SSD у многих пока невелики, а время оно бесконечно. Лучше будет
PKGEXT='.pkg.tar.lzo'
Не так быстро как просто .tar, но быстрей чем .tar.xz.
И таблица сравнения размера пакетов различными упаковщиками от
@dimonmmk.