Сделать pacman работает с aria2
Я хочу создать псевдоним для zsh, чтобы загружать пакеты с помощью aria2 и устанавливать их с помощью pacman. Я не хочу использовать aria2c, добавляя xfercommand в pacman.conf из-за двух вещей: во-первых, скорость моего интернет-соединения низкая, и я не Если pacman блокируется на несколько часов, вторая команда xfer не поддерживает загрузку нескольких ссылок.
Прежде всего, я использую эту команду для загрузки или обновления и обновления с помощью pacman:
sudo pacman -Sp [Package] > ~/Documents/.install&& sudo aria2c -c -x16 -x16 -m16 -k1M -j10 -i ~/Documents/.install -d /var/cache/pacman/pkg
Но я не знаю, как сделать это псевдоним в Zsh?
2 ответа
Установите aria2, затем отредактируйте /etc/pacman.conf, добавив следующую строку в раздел [options]:
XferCommand = /usr/bin/aria2c --allow-overwrite=true --continue=true --file-allocation=none --log-level=error --max-tries=2 --max-connection-per-server=2 --max-file-not-found=5 --min-split-size=5M --no-conf --remote-time=true --summary-interval=60 --timeout=5 --dir=/ --out %o %u
Взяв из вики-сайта aria2 arch, вам не нужен промежуточный установочный файл, просто используйте флаг
-i -
. Мне также пришлось добавить sudo к команде aria. Выглядит так:
pacman -Sp [package] | sudo aria2c -d /var/cache/pacman/pkg/ -i -
У меня есть конфиг aria2, так что все остальные варианты есть.
Из того, что я видел, если вы используете aria2 в XferCommand, он не будет выполнять несколько загрузок, просто используйте aria2 по одной ссылке за раз.
Что касается использования функции, попробуйте
mypacman() {
pacman -Sp $1 | sudo aria2c -d /var/cache/pacman/pkg/ -i -
}
В
$1
указывает, что первое, что после вызова функции будет помещено в это место.
Используйте это как
mypacman [package]
.
Примечание: похоже, следующая версия pacman будет делать параллельные загрузки прямо из коробки :)
Но я не буду рисковать им прямо сейчас ...