Чи є у сховищі Raspbian список перелічених пакетів?


62

Raspbian стверджує, що має "35,0000 пакетів Raspbian", що чудово, але я шукаю лише пакет або два, перш ніж його встановити.

Чи є список пакунків для перегляду репозиторію, який я можу шукати за допомогою веб-браузера, не перебуваючи на самому пристрої?

Якщо не існує зручного для браузера методу, чи є спосіб завантажити списки пакунків та переглянути якийсь інший метод?

Відповіді:


40

З поширених запитань на Raspbian.org,

Поточний перелік пакунків у сховищі Raspbian можна знайти у текстовому файлі, що посилається нижче: http://archive.raspbian.org/raspbian/dists/wheezy/main/binary-armhf/Packages

УВАГА Завантаження 32 Мб.

Файл є простим текстом, і список пакунків можна отримати за допомогою наступного конвеєра:

grep -P '^Package:' Packages | cut -d' ' -f2

Тоді як звичайний текстовий редактор найкращий спосіб переглянути це?
Zoot

1
Це текстовий файл, який ви можете відкрити за допомогою текстового редактора, браузера, MS Word тощо. Чи замислювалися ви над пошуком пакету за допомогою влучного пошуку apt-кешу «Ім'я пакета»
Стів Робіллард

2
Наразі я не перебуваю перед пристроєм, і Raspbian наразі не встановлений, що робить апт трохи менш корисним для мене.
Zoot

1
Відкрийте його за допомогою Notepad ++ - я обробляю такі великі файли легко. Підтримує також регулярні вирази.
Пьотр Кула

3
В одній команді:curl -s http://archive.raspbian.org/raspbian/dists/stable/main/binary-armhf/Packages.xz | xz -d | grep '^Package:' | cut -d ' ' -f 2
gioele

19

Перелік програмних пакетів Raspbian на веб- сайті http://www.raspberryconnect.com в розділі програмного забезпечення. Пакети перераховані за категоріями.


10
Застарілий. Схоже, що цей список не ведеться
Пьотр Кула,

Список пакетів регулярно підтримується як з пакетами Jessie, так і з Wheezy.
Graeme

14

Дистрибутив Rasbian поставляється з утилітою під назвою apt-cache. Для пошуку в індексі локального сховища пакунків використовуйте:

apt-cache search <keyword>

Але для цього потрібен доступ до пристрою (або принаймні запущеного примірника Raspbian). В ОП вказано, що він повинен бути доступний у веб-переглядачі за межами програми Raspbian.
JBentley

8

Ви можете переглядати пакунки Debian Wheezy на сторінці Wheezy Debian . Наявні пакети повинні бути практично такими ж, як у сховищах Raspbian.


3
Raspbian однозначно також може скористатися такою послугою. І доступ до трекера помилок. Було б чудово, щоб можна було легко переглядати архів для пакетів та версії в арці, коли у вас не запущено raspbian.
XTL

3

Я також натрапив на цю корисну нитку (велике спасибі попереднім учасникам: чудові речі!). Однак я хотів чогось більш складного: з урахуванням списку побажань залежних пакетів, чи можу я мати корисність для того, щоб відшукати їх у різних дистрибутивах розширення?

Я створив декілька сценаріїв, які можуть бути корисними іншим (ви можете зберегти їх у домашній папці користувача pi (або куди)). Не забудьте chmod + x script-name.sh після того, як ви створили їх, або у вас виникнуть проблеми із їх запуском.

Перший - get-available.sh :

#!/bin/bash

dist=jessie
[ ${#1} -gt 0 ] && dist=$1

[ ! -e /home/pi/${dist} ] && mkdir /home/pi/${dist}
pushd /home/pi/${dist} &> /dev/null
[ ! -e ./Packages ] && echo Fetching Packages list for ${dist}...
[ ! -e ./Packages ] && wget http://archive.raspbian.org/raspbian/dists/${dist}/main/binary-armhf/Packages
grep -P '^Package:' Packages | cut -d' ' -f2 > available
[ ! -e ./wishlist ] && touch ./wishlist
popd &> /dev/null

Ви запускаєте це, і він отримує список пакетів для заданого розподілу (за замовчуванням до jessie ):

./get-available.sh [<distribution-name>]

Він також створює порожній текстовий файл із списку бажань у новоствореній папці розповсюдження (спочатку перевірте, чи немає у вас домашньої папки цих імен у домашній папці, або ви можете щось перезаписати). ті, які ви сподіваєтесь знайти, включаються в пошук, який ви шукаєте.

Другий скрипт - check-available.sh :

#!/bin/bash

dist=jessie
[ ${#1} -gt 0 ] && dist=$1
[ ! -e /home/pi/${dist}/available ] && echo You need to run ./get-available.sh ${dist} first!
[ ! -e /home/pi/${dist}/available ] && exit

pushd /home/pi/${dist} &> /dev/null
[ -e ./availability ] && rm ./availability
mlen=7

function check-len () {
  [ ${#1} -gt ${mlen} ] && mlen=${#1}
}

function check-available () {

  matches=$(grep -o "^$1$" ./available | wc -l)
  if [ ${matches} -eq 0 ]
  then
    printf "%-${mlen}s :NO  (%s)\n" $1 ${dist} >> ./availability
  else
    printf "%-${mlen}s :YES (%s)\n" $1 ${dist} >> ./availability
  fi
}

readarray packages < ./wishlist

for p in "${packages[@]}"
do
  pw=$(echo ${p}|tr -d '\n')
  check-len "${pw}"
done

for p in "${packages[@]}"
do
  pw=$(echo ${p}|tr -d '\n')
  check-available "${pw}"
done

[ -e ./availability ] && cat ./availability

popd &> /dev/null

Після налаштування списку бажань ви запускаєте це, і воно сканує список пакунків для цих пакетів (за замовчуванням до jessie ):

./check-available.sh [<distribution-name>]

Окрім того, що виведення на консоль зберігає результати пошуку у файл наявності у підпапці пошуку розповсюдження.

Ось (мій) приклад списку бажань :

vim
wget
software-properties-common
python3.5
libsodium13
python3-pip
oracle-java8-installer
oracle-java8-set-default
libgmp3-dev
libssl-dev
flex
bison

Ось що я виявив щодо наявності пакету хрипких пакунків:

vim                        :YES (wheezy)
wget                       :YES (wheezy)
software-properties-common :YES (wheezy)
python3.5                  :NO  (wheezy)
libsodium13                :NO  (wheezy)
python3-pip                :YES (wheezy)
oracle-java8-installer     :NO  (wheezy)
oracle-java8-set-default   :NO  (wheezy)
libgmp3-dev                :YES (wheezy)
libssl-dev                 :YES (wheezy)
flex                       :YES (wheezy)
bison                      :YES (wheezy)

Ось що я знайшов щодо наявності пакету Джессі :

vim                        :YES (jessie)
wget                       :YES (jessie)
software-properties-common :YES (jessie)
python3.5                  :NO  (jessie)
libsodium13                :YES (jessie)
python3-pip                :YES (jessie)
oracle-java8-installer     :NO  (jessie)
oracle-java8-set-default   :NO  (jessie)
libgmp3-dev                :YES (jessie)
libssl-dev                 :YES (jessie)
flex                       :YES (jessie)
bison                      :YES (jessie)

І ось що я знайшов щодо наявності пакету розтяжок :

vim                        :YES (stretch)
wget                       :YES (stretch)
software-properties-common :YES (stretch)
python3.5                  :YES (stretch)
libsodium13                :NO  (stretch)
python3-pip                :YES (stretch)
oracle-java8-installer     :NO  (stretch)
oracle-java8-set-default   :NO  (stretch)
libgmp3-dev                :YES (stretch)
libssl-dev                 :YES (stretch)
flex                       :YES (stretch)
bison                      :YES (stretch)

Якщо ваш список довший, то для фільтрування рядків : ТАК або : НІ для запиту файлів доступності не можна використовувати греп .

Сподіваюся, деякі інші вважають це корисним!


1

Фонд Raspberry Pi оголосив, що відкрив " Pi Store ", що є переліком списку програм для Raspberry Pi, включаючи безкоштовні та платні програми.

Це не повний список пакетів, як Raspbian-архів, але він дає змогу ознайомитись із деякими речами, які можна встановити перед установкою Raspbian.

EDIT: Цього більше не існує. Ця відповідь тепер є викладом історичних записів.


6
На жаль, магазин Pi закрили і більше не існує.
tjohnson

1

Тут можна переглянути: http://archive.raspbian.org/raspbian/pool/main/

........


Я помітив , що може підтвердити те , що є в наявності, але він не може підтвердити , що - то НЕ , тобто, ви будете натикатися пакети , які встановлюють з допомогою , aptале не є в цьому архівному дереві. По-іншому, тільки тому, що ви не можете знайти щось там, не означає, що воно недоступне.
золотинок
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.