Czy repozytorium Raspbian ma możliwą do przeglądania listę pakietów?


62

Raspbian twierdzi, że ma „35 000 pakietów Raspbian”, co jest świetne, ale szukam pakietu tylko dwóch, zanim go zainstaluję.

Czy istnieje przeglądalna lista pakietów repozytorium, którą mogę przeszukiwać za pomocą przeglądarki internetowej bez konieczności korzystania z samego urządzenia?

Jeśli nie ma metody przyjaznej dla przeglądarki, czy istnieje sposób na pobranie list pakietów i przejrzenie innej metody?

Odpowiedzi:


40

Z FAQ Raspbian.org,

Aktualna lista pakietów w repozytorium Raspbian znajduje się w pliku tekstowym pod linkiem poniżej: http://archive.raspbian.org/raspbian/dists/wheezy/main/binary-armhf/Packages

OSTRZEŻENIE Pobieranie wynosi 32 MB.

Plik jest zwykłym tekstem, a listę pakietów można uzyskać za pomocą następującego potoku:

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

Czy zatem zwykły edytor tekstowy jest najlepszym sposobem na przeglądanie tego?
Zoot

1
Jest to plik tekstowy, który można otworzyć za pomocą edytora tekstu, przeglądarki, MS Word itp. Czy zastanawiałeś się nad wyszukiwaniem pakietu za pomocą wyszukiwania apt apt-cache „Nazwa pakietu”
Steve Robillard,

2
Obecnie nie jestem przed urządzeniem, a Raspbian nie jest obecnie zainstalowany, co czyni mnie nieco mniej przydatnym.
Zoot,

1
Otwórz go za pomocą Notepad ++ - z łatwością radzę sobie z dużymi plikami. Obsługuje również wyrażenia regularne.
Piotr Kula,

3
curl -s http://archive.raspbian.org/raspbian/dists/stable/main/binary-armhf/Packages.xz | xz -d | grep '^Package:' | cut -d ' ' -f 2
Jednym


14

Dystrybucja raspbian zawiera narzędzie o nazwie apt-cache. Aby przeszukać indeks lokalnego repozytorium pakietów, użyj:

apt-cache search <keyword>

Ale to wymaga dostępu do urządzenia (lub przynajmniej działającej instancji Raspbian). OP określił, że musi być dostępny w przeglądarce poza Raspbian.
JBentley

8

Możesz przeglądać pakiety Debian Wheezy na stronie Wheezy Debiana . Dostępne pakiety powinny być praktycznie takie same jak w repozytoriach Raspbian.


3
Raspbian z pewnością mógłby skorzystać z takiej usługi. I dostęp do narzędzia do śledzenia błędów. Byłoby wspaniale móc łatwo przeglądać archiwum w poszukiwaniu pakietów i wersji na arch, gdy nie korzystasz z Raspbian.
XTL

3

Natrafiłem też na ten przydatny wątek (wielkie podziękowania dla wcześniejszych autorów: doskonałe rzeczy!). Chciałem jednak czegoś bardziej wyrafinowanego: czy mając listę życzeń zależnych pakietów, czy mogę mieć narzędzie do wyłapywania ich w różnych dystrybucjach raspbian?

Stworzyłem kilka skryptów, które inni mogą uznać za przydatne (możesz zapisać je w folderze domowym użytkownika pi (lub gdziekolwiek)). Pamiętaj, aby chmod + x nazwa- skryptu.sh po ich utworzeniu, inaczej będziesz mieć problemy z ich uruchomieniem.

Pierwszy to 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

Uruchamiasz to i pobiera listę pakietów dla danej dystrybucji (domyślnie jessie ):

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

Tworzy również pusty plik tekstowy z listy życzeń w nowo utworzonym folderze dystrybucyjnym (najpierw sprawdź, czy nie masz folderów o tych nazwach w folderze domowym, czy możesz coś nadpisać): możesz edytować to jako listę pakietów oddzielonych liniami, które są te, które masz nadzieję znaleźć, znajdują się w poszukiwanej dystrybucji.

Drugi skrypt to 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

Po skonfigurowaniu listy życzeń uruchamiasz ją i skanuje ona listę pakietów w poszukiwaniu tych pakietów (domyślnie jessie ):

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

Oprócz wysyłania danych do konsoli zapisuje wyniki wyszukiwania w pliku dostępności w podfolderze wyszukiwania dystrybucji.

Oto (moja) przykładowa lista życzeń :

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

Oto, co znalazłem dla dostępności pakietu wheezy :

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)

Oto, co znalazłem dla dostępności pakietu jessie :

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)

I oto, co znalazłem dla dostępności pakietu stretch :

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)

Jeśli twoja lista jest dłuższa, można użyć grep do filtrowania linii : YES lub : NO w celu zapytania o pliki dostępności .

Mam nadzieję, że niektórzy uznają to za przydatne!


1

Raspberry Pi Foundation ogłosiło , że otworzyło „ Pi Store ”, który jest przeglądalną listą aplikacji dla Raspberry Pi, w tym zarówno darmowych, jak i płatnych aplikacji.

Nie jest to pełna lista pakietów, takich jak archiwum Raspbian, ale pozwala rzucić okiem na niektóre rzeczy, które można zainstalować przed zainstalowaniem Raspbian.

EDYCJA: To już nie istnieje. Ta odpowiedź jest teraz stwierdzeniem historii.


6
Niestety sklep Pi został zamknięty i już nie istnieje.
tjohnson,

1

Można go tutaj przeglądać: http://archive.raspbian.org/raspbian/pool/main/

........


Zauważyłem, że może potwierdzić, że coś jest dostępne, ale nie może potwierdzić, że coś nie jest , tzn. Będziesz uruchamiać pakiety, które instalują się, aptale nie są w tym drzewie archiwum. Mówiąc inaczej, tylko dlatego, że nie możesz znaleźć czegoś, co nie oznacza, że ​​nie jest ono dostępne.
Złotowłosa
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.