Как установить пакеты из AUR?

Arch Linux имеет AUR (Arch User Repository), набор пользовательских пакетов. Как установить эти пакеты в Arch Linux ARM, хотя?

49 голосов | спросил user46 19 J0000006Europe/Moscow 2012, 19:49:19

6 ответов


42

Согласно странице Building Packages из ARM Arch Linux вам необходимо.

  1. Установите необходимые для сборки. . Они необходимы для компиляции пакетов на  Arch Linux ARM.

    $ sudo pacman -S kernel26-headers файл base-devel abs
    
  2. Получить PKGBUILD. . Вам нужно загрузить архив, который вы хотите.  Вы можете найти tarball для программ на AUR .

  3. Сделайте пакеты. Далее вам нужно запустить makepkg, чтобы сгенерировать  пакет, который pacman может установить.

    $ makepkg -Acs
    

    Параметр -A игнорирует целевую архитектуру Arch. Опция -c очищает  вверх по каталогу после makepkg, а -s устанавливает необходимый  зависимостей.

      

    Рекомендуется, чтобы вы выполняли НЕ запуск makepkg как root, поскольку это может вызвать   постоянный ущерб вашей системе. Если вы действительно должны запускать его как root   хотя используйте параметр - asroot.

  4. Установить пакет. makepkg должен создать файл в каталоге  с файлом .pkg.tar.xz. Вы должны установить этот пакет, используя  -U с pacman.

    $ sudo pacman -U x.pkg.tar.xz
    
      

    Обязательно замените x.pkg.tar.xz на фактическое имя пакета.

ответил 19 J0000006Europe/Moscow 2012, 19:49:19
29

Самое простое решение - использовать Yaourt (еще AnOther User Repository Tool) .

Вы можете установить с помощью:

pacman -S yaourt

И затем синхронизируйтесь с AUR:

yaourt -Syy

Затем вы можете выполнить поиск пакетов AUR:

yaourt package-name

, который предоставит интерактивные подсказки для установки.

Или, если вы точно знаете имя пакета:

yaourt -S имя пакета

Большинство команд pacman одинаковы для yaourt.

ответил Jivings 20 J0000006Europe/Moscow 2012, 00:13:46
6

Я использую упаковщик для этой цели, которая, на мой взгляд, является более быстрой альтернативой yaourt.

Просто добавьте эти две строки в свой /etc/pacman.conf:

[archlinuxfr]
Сервер = http://repo.archlinux.fr/$arch

Затем вы можете установить /обновить упаковщик через pacman:

# pacman -Sy упаковщик

И используйте упаковщик практически так же, как вы используете pacman:

$ packer -S some_aur_package

Также, если вы не обновите все пакеты, включая те, которые есть в AUR:

$ packer -Syu

Сначала Packer запускает pacman -Syu для обновления пакетов из официальных репозиториев, а затем обновит все пакеты AUR.

ответил brkt 16 Jpm1000000pmThu, 16 Jan 2014 17:34:50 +040014 2014, 17:34:50
5

Все приведенные выше ответы устарели. Мой ответ не очень хороший, но, надеюсь, он избегает проблемы устаревания.

официальная вики-статья подробно объясняет, как один идет об установке /создании пакет, который не является частью pacman (упаковщик и yaourt на эту дату).

Оба упаковщика и yaourt помечены как устаревшие в AUR. (это может измениться в будущем).

ответил PPPaul 6 Maypm15 2015, 18:39:12
2

ВАЖНО! yaourt небезопасен и устарел согласно вики: https://wiki.archlinux.org/index.php/AUR_helpers

В то время как ответ @Jivings лучше всего был в «12», я бы рекомендовал установить один из более безопасных и многофункциональных менеджеров пакетных пакетов (и я предлагаю кому-то обновить @Jivings ответ, поскольку он имеет наибольшую видимость).

Я использую aurman и выкапываю его. Имеет все функции, является безопасным, и cli работает почти так же, как pacman. Чтобы установить:

cd ~ /Загрузка
git clone https://aur.archlinux.org/aurman.git
cd aurman
makepkg -Acs
# Изменить xxx ниже до версии для скачивания
sudo pacman -U aurman-xxx.pkg.tar.xz

Затем вы можете точно следовать руководству pacman, но используя aurman вместо pacman. Следующее руководство было взято из https: //www.digitalocean.com/community/tutorials/how-to-use-arch-linux-package-management и начал меня:


Начало работы

Arch Linux предоставляет средства управления пакетами, аналогичные тем, которые содержатся в других современных дистрибутивах Linux. Это руководство по общим операциям управления пакетами.

Прежде чем продолжить, убедитесь, что базы данных пакетов обновлены:

sudo pacman -Sy

Поиск

Благоприятная краткость в отношении интуитивности, большинство операций управления пакетами в Arch Linux отображаются в формате:

pacman - <a-z> <a-z & gt ;.

Например, обычная команда для поиска репозиториев pacman -

pacman -Ss <package>

...

В качестве альтернативы вы можете использовать pacman -Qs с недостатком подсветки цвета.

pacman -Qs linux

Если вы хотите подсветку цветом с помощью pacman -Ss, вы можете раскомментировать цвет из /etc/pacman.conf. Он выделяет разные вещи, кроме pacsearch, поэтому, возможно, вы захотите попробовать оба и посмотреть, какой из них вам больше нравится.

sudo vi /etc/pacman.conf

...
# Разное
#UseSyslog
цвет
#TotalDownload
CheckSpace
#VerbosePkgLists
...

Получение информации

pacman -Qi отображает основную информацию об установленном пакете.

pacman -Qi linux

Имя: linux
Версия: 3.8.4-1
Описание: Ядро Linux и модули
Архитектура: x86_64
URL: http://www.kernel.org/
Лицензии: GPL2
Группы: базовые
Обеспечивает: kernel26 = 3.8.4
Зависит от: coreutils linux-firmware kmod mkinitcpio> = 0,7
Дополнительные деды: crda: для установки правильных беспроводных каналов вашей страны
Требуется: Нет
Дополнительно для: Нет
Конфликты С: kernel26
Заменяет: kernel26
Установленный размер: 64728.00 KiB
Упаковщик: Tobias Powalowski <[email protected]>
Дата постройки: ср. 20 марта 21:16:17 2013
Дата установки: пт 29 мар 01:02:14 2013
Причина установки: явно установлен
Установить скрипт: Да
Проверено: Неизвестно

Если pacman -Qi передается без аргументов, он возвращает все пакеты в системе. Вы можете искать этот вывод, чтобы получить специализированную информацию об установленных пакетах.

Например, если вы хотите получить каждый пакет и его размер:

pacman -Qi | grep -e "Name" -e "Установленный размер"

Имя: a52dec
Установленный размер: 244,00 KiB
Имя: aalib
Установленный размер: 768,00 KiB

...

Пока pacman -Qi предоставляет информацию об установленных пакетах, pacman -Si запрашивает базу данных для самой последней полученной информации о пакете.

pacman -Si linux

pacman -Ql перечисляет все файлы, связанные с пакетом.

pacman -Ql vi

vi /usr /
vi /usr /bin /
vi /usr /bin /изменить
vi /usr /bin /ex
vi /usr /bin /vedit
vi /usr /bin /vi

...

Название пакета в каждой строке может сделать вывод более сложным для использования в скрипте. pacman -Qlq (т. е. «список запросов pacman, quiet») не будет печатать имя пакета.

pacman -Qlq vi

/USR /
/USR /бен /
/USR /бен /редактировать
/USR /бен /ех
/USR /бен /VEDIT
/USR /бен /VI

...

Вы можете использовать pacman -Qlq | grep bin, чтобы найти все файлы в этом пакете, которые находятся в папке bin (и, следовательно, являются, вероятно, исполняемыми файлами). Это удобно, если команда, связанная с пакетом, отличается от имени пакета.

pacman -Qql pacman | grep bin

Установка

Типичным способом установки или обновления стандартного пакета является pacman -S.

sudo pacman -S <package>

Пакеты часто имеют аналогичную структуру в своих именах. Скобки могут использоваться как ярлык.

sudo pacman -S lua- {sec, socket, zlib}

Иногда выможет захотеть просто загрузить пакет для архивных целей без его установки. pacman -Sw загрузит пакет в папку кэша.

sudo pacman -Sw <package>

Если пакет был загружен или если вы знаете URL-адрес, вы можете установить его напрямую.

sudo pacman -U <package_path>

Обновление

Так как pacman вращается вокруг идеи «синхронизации» пакета с удаленным репозиторием, pacman -S обновит пакет, если он уже установлен.

Pacman может отображать устаревшие пакеты.

pacman -Qu

К сожалению, он не отображает версию пакета в репозитории, поэтому вы не сможете определить, насколько устаревшим является каждый пакет. Если это важно для вас, вам может понадобиться изучить сторонних менеджеров пакетов или написать сценарий, который связывает версию пакета, полученную из pacman -Qi и pacman -Si.

Вы можете получить версию из pacman -Qi или pacman -Si, используя регулярное выражение.

pacman -Qi linux | grep "Version" | sed 's /^ Version \ s *: \ s //'

3.8.4-1

Затем напишите сценарий, который показывает версии рядом.

для i в $ (pacman -Qqu)
делать
  printf "$ i:"
  printf "$ (pacman -Qi" $ i "| grep 'Version' | sed 's /^ Version \ s *: \ s //')"
  echo "$ (pacman -Si" $ i "| grep 'Version' | sed 's /^ Version \ s *: \ s //')"
сделанный

Pacman предоставляет возможность одновременно обновлять все ваши пакеты, но это не рекомендуется, потому что Arch - это скользящий выпуск дистрибутива. Если возникают проблемы, может потребоваться время для определения причин.

sudo pacman -Syu

понизило

Arch Linux официально не поддерживает устаревшие пакеты. Вместо этого вам нужно будет полагаться на кеш вашего пакета и места, подобные машине отката Arch. Кэш

Каждый пакет, загруженный с помощью pacman, хранится в /var /cache /pacman /pkg.

ls /var /cache /pacman /pkg | grep linux

линукс-3.11.6-1-x86_64.pkg.tar.xz
линукс-3.9.7-1-x86_64.pkg.tar.xz

...

Если вы хотите вернуться к пакету в вашем кеше, просто установите его напрямую.

pacman -U <path_to_cached_file>

Машина отката Arch

The Arch Rollback Machine представляет собой коллекцию снимков официального зеркала Arch Linux. На момент написания этой статьи он длился четыре месяца. ARM в настоящее время размещается на http://seblu.net/a/arm , хотя это может измениться в будущем.

ARM-пакеты могут быть установлены удаленно с помощью pacman -U.

pacman -U http://seblu.net/a/arm/2013/08/31/extra/os/x86_64/apache-2.2.25-1-x86_64.pkg.tar.xz

Невозможно просмотреть ARM для старых пакетов. К счастью, есть инструменты, которые делают это проще:

Понижение рейтинга
downgrader

Они ищут более старые версии в кеше и ARM. Их использование - то, что вы ожидаете.

downgrade <package>
downgrader <package>

Оба инструмента находятся в AUR, поэтому самый простой способ их установки будет с помощником, например yaourt.

Примечание. ARM является неофициальным проектом и был закрыт в прошлом, поэтому было бы неплохо избежать очистки кеша, если ARM снизится или снова изменит местоположение. Если вы хотите запустить свой собственный ARM, то, похоже, проект NodeJS на github. Удаление

Удалите пакет, если ничего не зависит от него. Оставьте установленные зависимости.

sudo pacman -R <package>

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

sudo pacman -Rs <package>

Принудительное удаление пакета. Это команда, которую вы достигнете, чтобы просто вытереть пакет из вашей системы и переустановить, когда переустановки в одиночку недостаточно.

sudo pacman -Rdd <package>
ответил mjd2 23 Maypm18 2018, 16:03:59
0

Первое, что вам нужно сделать, это загрузить пакет из AUR. Для этого выполните: git clone http://aur.archlinux.org/package.git Несмотря на то, что похоже, что вы загружаете файл .git, вывод будет каталогом.

cd package, чтобы найти файл PKGBUILD. Это будет использоваться на следующем шаге.

Наконец, запустите эту команду для компиляции и установки пакета, который вы только что загрузили. makepkg -Sri. Если вы хотите получить исчерпывающее объяснение того, что означает каждое из этих букв, вы можете запустить makepkg -h, где все они будут объяснены.

ответил Ashish 12 +03002015-10-12T06:28:57+03:00312015bEurope/MoscowMon, 12 Oct 2015 06:28:57 +0300 2015, 06:28:57

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132