Apakah repositori Raspbian memiliki daftar paket yang dapat dijelajahi?


62

Raspbian mengklaim memiliki "35.0000 paket Raspbian", yang sangat bagus, tetapi saya hanya mencari satu atau dua paket sebelum saya menginstalnya.

Apakah ada daftar paket repositori yang dapat dijelajahi yang dapat saya cari dengan browser web tanpa berada di perangkat itu sendiri?

Jika tidak ada metode yang ramah browser, apakah ada cara untuk mengunduh daftar paket dan menelusuri beberapa metode lain?

Jawaban:


40

Dari FAQ Raspbian.org,

Daftar paket saat ini di repositori Raspbian dapat ditemukan dalam file teks yang ditautkan di bawah ini: http://archive.raspbian.org/raspbian/dists/wheezy/main/binary-armhf/Packages

PERINGATAN Unduhan adalah 32MB.

File tersebut adalah teks biasa dan daftar paket dapat diperoleh dengan saluran pipa berikut:

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

Apakah editor teks normal cara terbaik untuk menjelajah ini?
Zoot

1
Ini adalah file teks yang dapat Anda buka dengan editor teks, browser, MS Word, dll. Pernahkah Anda berpikir untuk mencari paket menggunakan pencarian apt-cache "Paket Nama"
Steve Robillard

2
Saya tidak di depan perangkat saat ini, dan Raspbian saat ini tidak diinstal, membuat agak kurang berguna bagi saya.
Zoot

1
Buka menggunakan Notepad ++ - Saya menangani file besar seperti ini dengan mudah. Mendukung ekspresi reguler juga.
Piotr Kula

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


14

Distro raspbian dilengkapi dengan utilitas yang disebut apt-cache. Untuk mencari indeks repositori paket lokal, gunakan:

apt-cache search <keyword>

Tetapi ini membutuhkan akses ke perangkat (atau setidaknya Raspbian yang sedang berjalan). OP menentukan itu harus dapat diakses di browser di luar Raspbian.
JBentley

8

Anda dapat menelusuri paket-paket Debian Wheezy di halaman Wheezy Debian . Paket-paket yang tersedia harus hampir sama dengan di repositori Raspbian.


3
Raspbian pasti dapat menggunakan layanan seperti ini juga. Dan akses ke pelacak bug. Akan sangat bagus untuk dapat menelusuri arsip untuk paket dan versi pada lengkungan dengan mudah ketika Anda tidak menjalankan raspbian.
XTL

3

Saya menemukan utas bermanfaat ini juga (banyak terima kasih kepada kontributor sebelumnya: hal-hal yang sangat baik!). Namun saya menginginkan sesuatu yang lebih canggih: diberi daftar harapan paket tergantung, dapatkah saya memiliki utilitas untuk memburunya di berbagai distribusi raspbian?

Saya telah membuat beberapa skrip yang mungkin berguna bagi orang lain (Anda dapat menyimpannya di folder beranda pengguna pi Anda (atau di mana pun)). Ingatlah untuk chmod + x script-name.sh setelah Anda membuatnya atau Anda akan kesulitan menjalankannya.

Yang pertama adalah 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

Anda menjalankan ini dan mengambil daftar paket untuk distribusi yang diberikan (default ke jessie ):

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

Itu juga membuat file teks wishlist kosong di dalam folder distribusi yang baru dibuat (periksa dulu bahwa Anda belum memiliki folder dari nama-nama ini di folder rumah Anda atau Anda dapat menimpa sesuatu): Anda dapat mengedit ini sebagai daftar paket yang dipisahkan baris yang yang ingin Anda temukan termasuk dalam distribusi yang Anda cari.

Script kedua adalah 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

Setelah Anda mengatur daftar keinginan Anda, Anda menjalankan ini dan memindai daftar paket untuk paket-paket itu (default ke jessie ):

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

Serta keluaran ke konsol adalah menyimpan hasil pencarian ke file ketersediaan di sub folder pencarian distribusi.

Berikut adalah daftar keinginan (saya) :

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

Inilah yang saya temukan untuk ketersediaan paket 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)

Inilah yang saya temukan untuk ketersediaan paket 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)

Dan inilah yang saya temukan untuk ketersediaan paket 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)

Jika daftar Anda lebih panjang, sangat mudah untuk menggunakan grep untuk memfilter : YES atau : NO baris untuk menanyakan file ketersediaan .

Saya harap beberapa orang menemukan ini berguna!


1

Yayasan Raspberry Pi mengumumkan bahwa mereka membuka " Pi Store ", yang merupakan daftar aplikasi yang dapat ditelusuri untuk Raspberry Pi, termasuk aplikasi gratis dan berbayar.

Ini bukan daftar paket lengkap seperti arsip Raspbian, tetapi menyediakan sekilas beberapa hal yang mungkin untuk diinstal sebelum menginstal Raspbian.

EDIT: Ini tidak ada lagi. Jawaban ini sekarang merupakan pernyataan dari catatan sejarah.


6
Sayangnya, Pi Store telah ditutup dan tidak ada lagi.
tjohnson

1

Dapat dijelajahi di sini: http://archive.raspbian.org/raspbian/pool/main/

........


Aku telah memperhatikan bahwa dapat mengkonfirmasi sesuatu yang tersedia, tetapi tidak dapat mengkonfirmasi sesuatu tidak , yaitu, Anda akan berjalan di paket yang menginstal melalui apttetapi tidak di pohon arsip. Dengan kata lain, hanya karena Anda tidak dapat menemukan sesuatu di sana tidak berarti itu tidak tersedia.
goldilocks
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.