Listar pacotes (Head) disponíveis em ppa específico por linha de comando

Listar pacotes (Head) disponíveis em ppa específico por linha de comando

Quero listar todos os pacotes Head disponíveis em ppa específico.

Exemplo:webupd8 ppa:nilarimogard/webupd8tem os seguintes pacotes principais para confiança:

tela

Posso listá-los por linha de comando?

Responder1

Eu escrevi uma função que captura a lista de pacotes do repositório que seria usado na versão/arquitetura atual. É bastante simples e poderia ser escrito como uma única linha... Seria apenas uma linha muito difícil de manejar.

function lsppa {
    # expects one argument in the form of ppa:nilarimogard/webupd8

    USAGE="lsppa <ppa:user/ppaname>"

    if [[ "$#" != "1" || ! "$1"  == *"ppa"* ]]; then
      echo "$USAGE"
      return
    fi

    REPO="${1/ppa:/}"
    CODE="$(lsb_release -cs)"
    ARCH="$(dpkg --print-architecture)"
    URL="http://ppa.launchpad.net/$REPO/ubuntu/dists/$CODE/main/binary-$ARCH/Packages"

    awk '/^Package:/ {print $2}' <(wget -qO- "$URL")
}

Então, depois de colar isso em um terminal, você pode chamá-lo de like lsppa ppa:nilarimogard/webupd8e ele retornará uma lista ordenada pela lista de pacotes.

Neste caso, pode ser não alfabético e pode até conter duplicatas (versões diferentes), então você pode (você pode passá-lo sort -use quiser chamar:

lsppa ppa:nilarimogard/webupd8 | sort -u | less

informação relacionada