elenca tutti i repository ppa aggiunti al mio sistema

18

Come posso elencare tutti i repository ppa aggiunti al mio sistema e salvarlo in un file .txt , così non voglio passare il mio tempo a cercare ppa per le nuove installazioni e posso semplicemente selezionare un ppa linea nel mio file .txt e aggiungi al comando sudo add-apt-repository ? C'è anche qualche altro modo per farlo in cui non voglio dare manualmente le chiavi gpg?

    
posta supremum 05.11.2014 - 09:36

3 risposte

16

Da Come posso ottenere un elenco di tutti i repository e PPA dalla riga di comando in uno script di installazione?

Parte della risposta sembra avere ciò che stai cercando:

#! /bin/sh 
# listppa Script to get all the PPA installed on a system ready to share for reininstall
for APT in 'find /etc/apt/ -name \*.list'; do
    grep -o "^deb http://ppa.launchpad.net/[a-z0-9\-]\+/[a-z0-9\-]\+" $APT | while read ENTRY ; do
        USER='echo $ENTRY | cut -d/ -f4'
        PPA='echo $ENTRY | cut -d/ -f5'
        echo sudo apt-add-repository ppa:$USER/$PPA
    done
done

Salva questo come listppa.sh

listppa.sh > installppa.sh

Crea uno script da cui eseguire il backup da qualche parte, quindi esegui per aggiungere i tuoi PPA in una nuova installazione semplicemente eseguendo:

installppa.sh
    
risposta data NGRhodes 05.11.2014 - 11:52
17

Per coloro che vogliono solo controllare i PPA che hanno installato senza effettivamente fare qualcosa con loro automaticamente puoi fare:

$ apt-cache policy

Nel mio sistema, ecco un po 'di ciò che mostra:

% apt-cache policy
Package files:
 100 /var/lib/dpkg/status
     release a=now
 500 http: ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu/ precise/main Translation-en
 500 http: ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu/ precise/main i386 Packages
     release v=12.04,o=LP-PPA-ubuntu-toolchain-r-test,a=precise,n=precise,l=Toolchain test builds,c=main
     origin ppa.launchpad.net
 500 http: ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu/ precise/main amd64 Packages
     release v=12.04,o=LP-PPA-ubuntu-toolchain-r-test,a=precise,n=precise,l=Toolchain test builds,c=main
     origin ppa.launchpad.net
 500 http: ppa.launchpad.net/rael-gc/scudcloud/ubuntu/ precise/main Translation-en
 500 http: ppa.launchpad.net/rael-gc/scudcloud/ubuntu/ precise/main i386 Packages
     release v=12.04,o=LP-PPA-rael-gc-scudcloud,a=precise,n=precise,l=ScudCloud - Linux client for Slack,c=main
     origin ppa.launchpad.net
...

Citato da qui :

  

[ apt-cache policy ] recupera le priorità associate a ciascuna risorsa del repository. A partire dal   il suo risultato, è possibile dedurre un elenco di tutti i repository disponibili e   PPA.

Fonte: link

    
risposta data Romário 28.10.2015 - 15:05
0

Da mia risposta su Come posso ottenere un elenco di tutti i repository e PPA dalla riga di comando in uno script di installazione?

Elenca i PPA in formato ppa:USER/REPO :

grep -E '^deb\s' /etc/apt/sources.list /etc/apt/sources.list.d/*.list |\
  cut -f2- -d: |\
  cut -f2 -d' ' |\
  sed -re 's#http://ppa\.launchpad\.net/([^/]+)/([^/]+)(.*?)$#ppa:/#g' |\
  grep '^ppa:'

Elenca tutti i repository inclusi i PPA in formato ppa:USER/REPO :

Rimuovi solo l'ultimo grep (non dimenticare di rimuovere |\ dalla riga precedente dopo il comando sed ).

Vedere la mia risposta sull'altra domanda per gli script completi che è possibile salvare e utilizzare, inclusa la generazione di uno script di installazione.

    
risposta data ejm 04.12.2017 - 08:52

Leggi altre domande sui tag