Difference between revisions of "Arch User Repository (Italiano)"

From ArchWiki
Jump to: navigation, search
(translate)
(FAQ: translate)
Line 224: Line 224:
 
|question=Che tipo di pacchetti sono permessi su AUR?
 
|question=Che tipo di pacchetti sono permessi su AUR?
 
|answer=I pacchetti di AUR sono semplicemente degli "script di compilazione", ossia le istruzioni per compilare i binari per pacman. Nella maggior parte dei casi non ci sono limitazioni, se non le sopracitate linee guida sull'utilità e la finalità, e la richiesta di conformità con i termini di licenza del contenuto. In alcuni casi, quando si menziona che "non si può collegare il link" del download, come quando il contenuto non è ridistribuibile, si può utilizzare solo il nome del file stesso come fonte. Questo significa che gli utenti devono avere già i sorgenti nella directory indicata prima di iniziare il processo di compilazione del pacchetto. In caso di dubbi, chiedere.}}
 
|answer=I pacchetti di AUR sono semplicemente degli "script di compilazione", ossia le istruzioni per compilare i binari per pacman. Nella maggior parte dei casi non ci sono limitazioni, se non le sopracitate linee guida sull'utilità e la finalità, e la richiesta di conformità con i termini di licenza del contenuto. In alcuni casi, quando si menziona che "non si può collegare il link" del download, come quando il contenuto non è ridistribuibile, si può utilizzare solo il nome del file stesso come fonte. Questo significa che gli utenti devono avere già i sorgenti nella directory indicata prima di iniziare il processo di compilazione del pacchetto. In caso di dubbi, chiedere.}}
 +
 +
{{FAQ
 +
|question=Come si votano i pacchetti in AUR?
 +
|answer=Registrando un account sul [http://https://aur.archlinux.org/ website di AUR] si abilita un link per votare un pacchetto nella rispettiva pagina.}}
  
 
{{FAQ
 
{{FAQ

Revision as of 03:52, 9 June 2013

Summary help replacing me
L'Arch User Repository è una raccolta di PKGBUILD mantenuti dagli utenti che integrano software non disponibili nei repository ufficiali. Questo articolo descrive come creare pacchetti software su AUR.
Overview
I pacchetti in Arch Linux vengono compilati utilizzando makepkg ed uno script personalizzato per la compilazione di ogni pacchetto (noto come PKGBUILD). Dopo essere stato compilato, il software può essere installato e gestito tramite pacman. I PKGBUILD per il software presente nei repository ufficiali sono disponibili presso l'albero di ABS; altre migliaia sono disponibili presso il (non supportato) Arch User Repository.
Correlati
AUR Helpers
AurJson
AUR Trusted User Guidelines
Risorse
Interfaccia Web AUR
AUR Mailing List

Arch User Repository (AUR) è un repository sostenuto dalla comunità per utenti Arch. Contiene le descrizioni dei pacchetti (i PKGBUILD) che ti permettono di compilare i sorgenti grazie al comando makepkg e quindi installarli con pacman. AUR È stato creato per creare e scambiare pacchetti tra la comunità e per aiutarne lo sviluppo, inclusi i pacchetti del repository [community]. Questo documento spiega come accedere ed installare i pacchetti presenti in AUR.

Un buon numero di pacchetti ufficiali, in precedenza, erano presenti in AUR. La AUR community può votare pro o contro dei pacchetti presenti in AUR. Se un pacchetto diventa abbastanza popolare, sempre che venga incontro alle esigenze di pacchettizzazione e alle licenze, allora può entrare a far parte del repository [community] (direttamente accessibile da pacman o abs).

Per iniziare

Gli utenti possono cercare e scaricare i PKGBUILD dal sito Web di AUR. Questi PKGBUILD possono essere compilati in pacchetti installabili usando makepkg e successivamente installati con pacman.

  • Assicurarsi di aver isntallato il gruppo base-devel (pacman -S base-devel).
  • Leggere il resto di questo articolo per ulteriori informazioni e un breve tutorial su come installare i pacchetti AUR.
  • Visitare il sito Web di AUR per informarsi riguardo agli aggiornamenti ed agli eventi. Lì troverete anche statistiche ed una lista aggiornata delle ultime versioni disponibili per i pacchetti di AUR.
  • Dare un occhiata alle #FAQ in cerca di risposte alle domande più comuni.
  • Modificare il file /etc/makepkg.conf per ottimizzare al meglio le priorità del tuo processore per la compilazione dei pacchetti da AUR. Un significativo miglioramento nei tempi di compilazione può essere ottenuto, con i processori multi-core, impostando correttamente la variabile MAKEFLAGS. Gli utenti possono anche abilitare ottimizzazioni specifiche per l'hardware in GCC attraverso la variabile CFLAGS. Vedi makepkg.conf per ulteriori informazioni.

Storia

I seguenti stumenti sono stati riportati solo per motivazioni storiche, e sono stati sostituiti da AUR e non più disponibili.

Agli inizi c'era ftp://ftp.archlinux.org/incoming e le persone vi hanno contribuito semplicemente inviando i PKGBUILD, i file necessari ed i file compilati stessi sul server. I pacchetti ed i file associati rimanevano lì fino a quando un Package Maintainer li vedeva e li adottava.

Quindi nacquero i Trusted User Repositories (repositori per utenti fidati). Ad alcuni utenti della community era permesso dare ospitare i loro personali repository per condividerli con gli altri. AUR si è espanso su questa base, con l'obbiettivo di rendere contemporaneamente più flessibile e semplice il suo utilizzo. Infatti, i manutentori di AUR sono ancora definiti TUs (Trusted Users).

Ricerche su AUR

Il sito Web di AUR può essere trovato qui, ed un'interfaccia per l'accesso ad AUR tramite uno script (ad esempio) può essere trovata qui.

Le ricerche avvengono all'interno dei nomi e delle descrizioni attraverso un metodo simile a quello di MYSQL. Questo permette l'uso di criteri di ricerca più flessibili (es. provare a cercare 'tool%like%grep%' invece di 'tool like grep'). Se si ha bisogno di ricercare una descrizione che contenga '%', usare il carattere di escape così '\%'.

Installare i pacchetti da AUR

Installare i pacchetti da AUR è un processo relativamente semplice. Essenzialmente:

  1. Ottenere il tarball contenente il PKGBUILD e gli eventuali altri file necessari come unità di systemd e patch (ma spesso non i sorgenti di per sè).
  2. Estrarre il tarball (preferibilmente in una cartella da tenere da parte solo per le compilazioni di AUR) con tar -xzf foo.tar.gz.
  3. Lanciare il comando makepkg all'interno della directory contenente i file scaricati (il comando "makepkg -s" si occuperà di risolvere automaticamente le dipendenze tramite pacman). Questo scaricherà e compilerà il codice, infine creerà il pacchetto.
  4. Leggere l'eventuale file README in src/, dato che potrebbe contenere informazioni utili più avanti.
  5. Installare il pacchetto ottenuto tramite pacman:
$ pacman -U /percorso/per/il/pacchetto.tar.xz

Gli AUR Helpers garantiscono un accesso simile ad AUR. Sono svariati nelle loro caratteristiche, ma possono facilitare nella ricerca, nel download, nella compilazione e nell'installazione dei pacchetti tramite i PKGBUILD disponibili su AUR. Tutti questi script possono essere trovati in AUR.

Note: Non c'è e non ci sarà mai un meccanismo ufficiale per l'installazione di materiale precompilato da AUR. Tutti gli utenti di AUR dovrebbero essere pratici del processo di compilazione.

Quello che segue è un esempio dettagliato dell'installazione del pacchetto chiamato "foo".

Requisiti

Per prima cosa, assicurarsi che gli strumenti necessari siano installati. Il gruppo di pacchetti base-devel dovrebbe essere sufficiente; include make ed altri pacchetti necessari alla compilazione dai sorgenti.

Attenzione: I pacchetti su AUR presumono che il gruppo base-devel sia già stato installato, ed essi non riporteranno i componenti di questo gruppo tra le dipendenze, anche se il pacchetto non può essere compilato senza di essi. Siete pregati di assicurarvi che questo gruppo sia installato prima di denunciare fallimenti nelle compilazioni.
# pacman -S base-devel

Successivamente scegliere una cartella appropriata per la compilazione. Una cartella di compilazione è semplicemente una cartella dove il pacchetto viene compilato o "creato" e può essere una qualsiasi cartella. Un esempio di uso comune è:

~/builds

oppure se si utilizza ABS ( Arch Build System ):

/var/abs/local

Per maggiori informazioni su ABS leggete la guida Arch Build System. L'esempio userà ~/builds come cartella di compilazione.

Ottenere i file necessari

Trovare il pacchetto su AUR. Ciò può essere fatto usando lo strumento di ricerca (la casella di testo in alto nella home page di AUR). Cliccando sul nome del pacchetto nei risultati della ricerca si aprirà la pagina informativa relativa al pacchetto. Leggere la descrizione per assicurarsi che si tratti del pacchetto che si stà cercando, controllare quando il pacchetto è stato aggiornato l'ultima volta, e leggere i relativi commenti.

Scaricare i file necessari cliccando sul link "Scarica il tarball" nel riquadro "Azioni del pacchetto" a destra. Questo file dovrebbe essere salvato nella cartella di compilazione o quantomeno vi andrebbe copiato al termine del download. In questo esempio si suppone di avere il file chiamato "foo.tar.gz"(il formato standard è nomepacchetto.tar.gz, se è stato inviato correttamente).

Compilare il pacchetto

Estrarre l'archivio. Spostarsi nella cartella di compilazione ed estrarre l'archivio.

$ cd ~/builds
$ tar -xvzf foo.tar.xz

Questo creerà una cartella di nome "foo" all'interno della directory di compilazione.

Attenzione: Controllare accuratamente tutti i file. Spostarsi nella nuova cartella appena creata e controllare accuratamente il PKGBUILD ed eventuali .install verificando che non contengano comandi potenzialmente pericolosi. I PKGBUILD sono script bash che contengono funzioni che verranno eseguite da makepkg: queste funzioni possono contenere un qualsiasi comando valido o sintassi di Bash, quindi è del tutto possibile che un PKGBUILD contenga comandi pericolosi all'insaputa dell'autore. Da quando makepkg utilizza fakeroot (e non dovrebbe mai essere eseguito da root), c'è un certo livello di protezione, ma non si dovrebbe mai farci troppo affidamento. In caso di dubbi NON compilare il pacchetto e cercare consigli sui forum o sulle mailing list.
$ cd foo
$ nano PKGBUILD
$ nano foo.install

Dopo aver verificato l'integrità dei file, eseguire makepkg come normale utente all'interno della cartella di compilazione.

$ makepkg -s

L'opzione switch -s utilizzerà sudo per l'installazione di eventuali dipendenze. Se non si intende utilizzare sudo, si dovrà provvedere ad installare manualmente le eventuali dipendenze richieste e successivamente eseguire il comando sopra suggerito, omettendo l'opzione -s.

Installazione del pacchetto

Installare il pacchettto usando pacman. L'archivio dovrebbe essere stato creato ed avere il nome secondo il seguente schema:

<nome applicazione>-<numero versione>-<numero revisione pacchetto>-<architettura>.pkg.tar.xz

Questo pacchetto può essere installato usando l'opzione "upgrade" di pacman:

# pacman -U foo-0.1-i686.pkg.tar.xz   

I pacchetti installati manualmente sono chiamati foreign packages, letteralmente "pacchetti stranieri", infatti non provengono da nessun repository noto a pacman. Per elencare tutti i foreign packages:

$ pacman -Qm
Note: L'esempio precedente è solo un breve riassunto del processo di compilazione. Una lettura alle pagine relative a makepkg ed ABS forniranno maggiori dettagli ed è caldamente raccomandato farlo (specialmete per gli utenti che non hanno mai compilato).

Feedback

La gestione dei commenti AUR Web Interface facilita gli utenti a dare suggerimenti e responsi su possibili miglioramenti ai manutenitori dei PKGBUILD. Evitare di incollare patch o PKGBUILD nella sezione dei commenti. Questi commenti diventano velocemente obsoleti e senza utilità occupando molto spazio. E' quindi preferibile inviarli per email al manutentore oppure usare pastebin.

Una delle essenziali attività di tutti gli utenti di Arch è consultare tra i pacchetti di AUR e votare per i pacchetti preferiti attraverso il sito web di AUR. Tutti i pacchetti possonno essere adottati da un TU ( un utente fidato - Trusted User) per una eventuale inclusione nel repostory [community], ed il conteggio dei voti è uno degli aspetti di questo processo; è quindi nell'interesse di tutti esprimere il proprio voto!

Condividere e mantenere i pacchetti

Gli utenti giocano un ruolo fondamentale in AUR, il quale non sfrutterebbe il suo potenziale senza il supporto, il coinvolgimento ed i contributi dalla più ampia comunità di utenti. Il ciclo vitale di un pacchetto su AUR comincia e finisce con l'utente e richiede il suo contributo in diversi modi.

Gli utenti possono condividere i PKGBUILD usando l'interfaccia di AUR. L'Arch User Repository non contiene nessun pacchetto compilato ma consente agli utenti di inviare i PKGBUILD così che possano essere scaricati dagli altri utenti. Questi PKGBUILD sono completamente non ufficiali e non sono stati controllati a fondo, quindi saranno usati a proprio rischio e pericolo.

Aggiungere pacchetti

Dopo aver effettuato l'accesso sul sito di AUR, un utente può spedire un archivio tar compresso con gzip (.tar.gz) di una directory contenente i file necessari alla compilazione del pacchetto. La directory all'interno dell'archivio deve contenere un PKGBUILD, eventuali file .install, le patch, eccetera (assolutamente nessun file compilato). Un esempio di come questa cartella dovrebbe essere può essere trovato all'interno di /var/abs nel caso in cui sia stato installato ABS.

L'archivio può essere creato con il seguente comando:

$ makepkg --source 

Notare che questo pacchetto è compresso con gzip; presumendo che si stia inviando un pacchetto chiamato libfoo, quando verrà creato l'archivio dovrà essere simile a questo:

$ tar tf libfoo-0.1-1.src.tar.gz
libfoo/
libfoo/PKGBUILD
libfoo/libfoo.install

Quando si invia un pacchetto, attenersi alle seguenti regole:

  • Cercare il pacchetto nel database ufficiale. Se una qualunque versione è già presente, non inviare il pacchetto. Se il pacchetto ufficiale non è aggiornato, marcarlo con l'apposito link. Se il pacchetto ufficiale è danneggiato o privo di alcune funzionalità è raccomandato aprire un bug report.
  • Controllare AUR alla ricerca del pacchetto. Nel caso in cui sia già mantenuto da un utente, lo si può contattare lasciando un commento. Se il pacchetto è orfano allora può essere adottato ed aggiornato se necessario. Non creare pacchetti "doppioni".
  • Verificare accuratamente che il file spedito sia quello giusto. Tutti gli utenti nello scrivere un PKGBUILD devono aver letto ed attenersi agli standard di pacchettizazione di Arch. Tutto questo è essenziale per il corretto funzionamento e per il successo di AUR. Ricordare che non si guadagnano né credito né rispetto dagli utenti facendo loro perdere tempo con pessimi PKGBUILD.
  • I pacchetti che contengono file compilati o scritti poco accuratamente possono essere cancellati senza preavviso.
  • Se non si è sicuri riguardo al pacchetto (oppure al processo di compilazione o di spedizione), inviare il PKGBUILD sulla Mailing List di AUR o postarlo nelle apposite sezioni di AUR dei forum per ottenere consigli, prima di inviare il pacchetto su AUR.
  • Assicurarsi che il pacchetto abbia una utilità. Qualcun'altro vorrà usare questo pacchetto? Se un buon numero di utenti possono trovare utile il paccehtto, allora è appropriato per la spedizione.
  • L'AUR e i repository ufficiali sono concepiti per pacchetti che installano generalmente software e contenuti correlati, compresi uno o più tra i seguenti: eseguibili; file di configurazione; dcumentazione online o offline per software specifici o per la distribuzione Arch Linux intera; file multimediali utilizzati direttamente dal software.
  • Accumulare esperienza prima di spedire pacchetti. Compilare alcuni pacchetti per imparare il meccanismo ed allora spedirlo.
  • Se si spedisce pacchetto.tar.gz con all'interno un file di nome pacchetto si otterrà un errore: "Could not change to directory /home/aur/unsupported/pacchetto/pacchetto". Per evitare questo errore rinominare il file chiamato pacchetto ad esempio in pacchetto.rc o simili. Quando sarà estratto nella cartella pkg sarà possibile rinominarlo nuovamente come pacchetto. Assicurarsi di leggere anche Arch Packaging Standards (Italiano)#Invio di pacchetti ad AUR.

Mantenere i pacchetti

  • Se si mantiene un pacchetto e si vuole aggiornare il PKGBUILD dello stesso, basta ripresentarlo.
  • Controllare le opinioni ed i commenti degli utenti, provare ad implementare eventuali miglioramenti suggeriti; considerare questa come una possibiltà per imparare!
  • Non spedire e poi dimenticarsi dei pacchetti! È responsabilità del "maintainer" mantenere e controllare il pacchetto, seguendo gli aggiornamenti ed ottimizzando il PKGBUILD.
  • Se non si vuole più mantenere un pacchetto per qualsiasi ragione, abbandonare il pacchetto dalla propria pagina sul sito di AUR e postare un messaggio sulla mailing list.

Altri tipi di richieste

  • Le richieste di disconoscimento e di rimozione vanno inviate ad Aur General Mailing List dove i TU ed altri utenti decideranno.
  • Includere il nome del pacchetto e l'URL alla pagina AUR, preferibilmente con una nota [1].
  • Le richieste di disconoscimento saranno concesse due settimane dopo che l'attuale responsabile sia stato contattato via e-mail e non abbia risposto.
  • La rinomina pacchetti non è ancora implementata, così gli utenti devono ripresentare un pacchetto con un nuovo nome e richiedere la rimozione della vecchia versione alla mailing list.
  • Le richieste di rimozione necessitano delle seguenti informazioni:
    • Nome del pacchetto e URL alla pagina AUR.
    • Motivo della cancellazione, almeno una breve nota
      Notice: Anche se i commenti di un pacchetto sono motivo sufficiente per la cancellazione di un pacchetto. Non appena interviene un TU, l'unico luogo in cui tali informazioni possono essere ottenute è la aur generale mailing list.
    • Includere dettagli informativi, ad esempio se il pacchetto è incluso da qualche altra parte, se si è il manutentore, se il pacchetto è rinominato e il proprietario originale è d'accordo, ecc.

Le richieste di rimozione possono essere disapprovate, nel qual caso probabilmente verrà consigliato di abbandonare il pacchetto per riferimento futuro.

[community]

Il repository [community] è mantenuto dai Trusted Users, e contiene i pacchetti più famosi provenienti da AUR. E' abilitato di default in pacman.conf. Se fosse disabilitato o rimosso, può essere abilitato decommentando o aggiungendo queste due linee:

/etc/pacman.conf
...
[community]
Include = /etc/pacman.d/mirrorlist
...

Questo repository, contrariamente ad AUR, contiene pacchetti compilati che possono essere installati direttamente con pacman, ed i file necessari alla compilazione sono reperibili tramite ABS. Alcuni di questi pacchetti possono eventualmente essere trasferiti in [core] o in [extra] se gli sviluppatori li considerano necessari alla distribuzione.

Gli utenti possono accedere ai file per la compilazione dei pacchetti di [community] editando /etc/abs.conf ed abilitando il repository community all'interno dell'array REPOS.

Git Repo

Un repository Git di AUR è mantenuto da Thomas Dziedzic, e fornisce, tra le altre cose, lo storico dei pacchetti. Viene aggiornato almeno una volta al giorno. Per clonare il repository (varie centinaia di MB):

$ git clone git://pkgbuild.com/aur.git

Per maggiori informazioni: interfaccia web, forum thread

FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ

Template:FAQ