Perché apt non riesce a trovare il codice sorgente di nessun pacchetto?


8

Sto cercando di scaricare il codice sorgente di alcuni pacchetti, ad esempio rhythmbox, a fini di apprendimento. Voglio farlo attraverso apt-get, con il apt-get sourcecomando.

Per qualche motivo, apt-getnon riesco a trovare alcun pacchetto. Ho provato diversi pacchetti e continuo a ottenere questo output da apt-get:

$ apt-get source rhythmbox
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to find a source package for rhythmbox

Sono alla ricerca di risposte da un po 'di tempo ormai, ma non riesco a trovare nessuno con lo stesso problema. apt-getfunziona bene con l'installazione e l'aggiornamento, quindi apt-getfunziona bene secondo me. Durante la ricerca ho anche appreso che dovevo abilitare i "repository di codice sorgente" in Sorgenti software, quindi anche questo è abilitato.

Sono consapevole del fatto che (forse solo per determinati pacchetti, non sono sicuro) i pacchetti sorgente possono anche essere scaricati con bzrLaunchpad, ma voglio sapere perché questo metodo non funzionerà.


Risposte:


7

Apri il Software Center e scegli Modifica -> Sorgenti software. Quale server usi? Sto usando "Server and United States" e ho appena scaricato bene la fonte per rhythmbox. Sono su Precise.


La ringrazio per la risposta! Ho scoperto che stavo usando il server sbagliato. Stavo usando il server dai Paesi Bassi. Passato agli Stati Uniti e ora funziona! :) Grazie mille!
Muurverf,

non l'ho ancora provato ... A proposito, dov'è il codice sorgente memorizzato sulla macchina ... o appare nella directory da cui è stato eseguito il comando?
juggernauthk108,

Nella directory in cui esegui il comando, come ricordo vagamente.
GaryBishop,

6

apt-get source rhythmbox Funziona solo se hai i repository di origine attivati, aggiornato il tuo elenco di pacchetti E in realtà hai quel repository nelle tue fonti.

Se, ad esempio, hai installato una normale installazione di Ubuntu e non hai aggiunto alcun repository apt. Quindi tutto ciò che devi fare è assicurarti che "Codice sorgente" abbia un controllo. Se sono stati aggiunti repository aggiuntivi, è necessario disporre di due voci per ciascun repository. Uno per "main" (di solito) e uno per "source".

Anche nel caso in cui non lo hai fatto. Esegui di apt-get updatenuovo per ottenere tutti i nuovi repository.

Ora apt-get source installa source per il pacchetto esatto che hai installato. Questo significa che se hai installato il deb da some-odd-ppa (main), allora il sorgente deve essere in some-odd-ppa (source). I pacchetti installati da some-odd-ppa non trarranno origine da altri repository perché non è la stessa versione.

Ho controllato e rhythmbox è disponibile tramite i repository dei sorgenti. Semplicemente non hai incluso il giusto repository di origine nel tuo repository apt o non hai ancora eseguito apt-get update.


La ringrazio per la risposta! Si è scoperto che stavo usando il server sbagliato.
Muurverf,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.