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

From ArchWiki
Jump to: navigation, search
m (Ricerche su AUR: a scuola! :P)
(wikify some external links, use https for archlinux.org)
(19 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
[[Category:Arch User Repository (Italiano)]]
 
[[Category:Arch User Repository (Italiano)]]
[[Category:About Arch (Italiano)]]
 
 
[[Category:Package development (Italiano)]]
 
[[Category:Package development (Italiano)]]
 
[[Category:Package management (Italiano)]]
 
[[Category:Package management (Italiano)]]
[[Category:Arch development (Italiano)]]
+
[[cs:Arch User Repository]]
{{i18n|Arch User Repository}}
+
[[da:Arch User Repository]]
 +
[[el:Arch User Repository]]
 +
[[en:Arch User Repository]]
 +
[[es:Arch User Repository]]
 
[[fr:AUR]]
 
[[fr:AUR]]
 
+
[[ja:Arch User Repository]]
 +
[[nl:Arch User Repository]]
 +
[[pl:Arch User Repository]]
 +
[[pt:Arch User Repository]]
 +
[[ro:AUR]]
 +
[[ru:Arch User Repository]]
 +
[[sr:Arch User Repository]]
 +
[[tr:Arch_Kullanıcı_Deposu]]
 +
[[uk:Arch User Repository]]
 +
[[zh-CN:Arch User Repository]]
 
{{Article summary start}}
 
{{Article summary start}}
{{Article summary text|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.}}
+
{{Article summary text|L'Arch User Repository è una raccolta di [[PKGBUILD (Italiano)|PKGBUILD]] mantenuti dagli utenti che integrano software non disponibili nei [[Official Repositories (Italiano)|repository ufficiali]]. Questo articolo descrive come creare pacchetti software su AUR.}}
 
{{Article summary heading|Overview}}
 
{{Article summary heading|Overview}}
{{Article summary text|I pacchetti in Arch Linux vengono compilati utilizzando [[makepkg (Italiano) | makepkg]] ed uno script personalizzato per la compilazione di ogni pacchetto (noto come [[PKGBUILD (Italiano) | PKGBUILD]]). Dopo essere stato compilato, il software può essere installato e gestito tramite [[Pacman (Italiano) | pacman]]. I PKGBUILD per il software presente nei [[Official Repositories (Italiano) | repository ufficiali]] sono disponibili presso l'albero di [[Arch Build System (Italiano) | ABS]]; altre migliaia sono disponibili presso il (non supportato) [[Arch User Repository (Italiano) | Arch User Repository]].}}
+
{{Article summary text|I pacchetti in Arch Linux vengono compilati utilizzando [[makepkg (Italiano) | makepkg]] ed uno script personalizzato per la compilazione di ogni pacchetto (noto come [[PKGBUILD (Italiano)|PKGBUILD]]). Dopo essere stato compilato, il software può essere installato e gestito tramite [[Pacman (Italiano) | pacman]]. I PKGBUILD per il software presente nei [[Official Repositories (Italiano) | repository ufficiali]] sono disponibili presso l'albero di [[Arch Build System (Italiano) | ABS]]; altre migliaia sono disponibili presso il (non supportato) [[Arch User Repository (Italiano) | Arch User Repository]].}}
{{Article summary heading|Link}}
+
{{Article summary heading|Correlati}}
{{Article summary link|AUR Web Interface|http://aur.archlinux.org}}
+
{{Article summary wiki|AUR Helpers}}
{{Article summary link|AUR Mailing List|http://www.archlinux.org/mailman/listinfo/aur-general}}
+
{{Article summary wiki|AurJson}}
{{Article summary heading|Linee guida}}
+
{{Article summary wiki|AUR User Guidelines}}
+
 
{{Article summary wiki|AUR Trusted User Guidelines}}
 
{{Article summary wiki|AUR Trusted User Guidelines}}
 +
{{Article summary heading|Risorse}}
 +
{{Article summary link|Interfaccia Web AUR|https://aur.archlinux.org}}
 +
{{Article summary link|AUR Mailing List|https://www.archlinux.org/mailman/listinfo/aur-general}}
 
{{Article summary end}}
 
{{Article summary end}}
  
[[Arch User Repository (Italiano) | Arch User Repository]] (AUR) è un repository sostenuto dalla comunità per utenti Arch. Contiene le descrizioni dei pacchetti (i [[PKGBUILD (Italiano) | PKGBUILD ]]) che ti permettono di compilare i sorgenti grazie al comando [[makepkg (Italiano) | makepkg]] e quindi installarli con [[Pacman (Italiano) | pacman]]. AUR È stato creato per creare e scambiare pacchetti tra la comunità e per aiutarne lo sviluppo, inclusi i pacchetti del repository [[#.5Bcommunity.5D|[community]]]. Questo documento spiega come acccedere ed installare i pacchetti presenti in AUR.
+
[[Arch User Repository (Italiano) | Arch User Repository]] (AUR) è un repository sostenuto dalla comunità per utenti Arch. Contiene le descrizioni dei pacchetti (i [[PKGBUILD (Italiano)|PKGBUILD]]) che ti permettono di compilare i sorgenti grazie al comando [[makepkg (Italiano) | makepkg]] e quindi installarli con [[Pacman (Italiano) | pacman]]. AUR È stato creato per creare e scambiare pacchetti tra la comunità e per aiutarne lo sviluppo, inclusi i pacchetti del repository [[#.5Bcommunity.5D|[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 {{ic|pacman}} o {{ic|abs}}).
+
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 (Italiano)|pacman]] o [[Arch Build System (Italiano)|abs]]).
  
 
==Per iniziare==
 
==Per iniziare==
  
Gli utenti possono cercare e scaricare i [[PKGBUILD]] dal [http://aur.archlinux.org sito Web di AUR]. Questi PKGBUILD possono essere compilati in pacchetti installabili usando [[makepkg (Italiano) | makepkg]] e successivamente installati con [[pacman (Italiano) | pacman]].
+
Gli utenti possono cercare e scaricare i PKGBUILD dal [https://aur.archlinux.org sito Web di AUR]. Questi PKGBUILD possono essere compilati in pacchetti installabili usando [[makepkg (Italiano) | makepkg]] e successivamente installati con pacman.
  
*Installare il gruppo "base-devel"({{Ic|pacman -S base-devel}}), perché i pacchetti appartenenti a questo gruppo non sono esplicitamente richiesti come dipendenze dei pacchetti di AUR, i quali non potranno essere compilati senza di essi (per maggiori informazioni [http://bbs.archlinux.org/viewtopic.php?pid=632355 leggere questo thread]).
+
*Assicurarsi di aver isntallato il gruppo {{Grp|base-devel}} ({{ic|pacman -S base-devel}}).
 
*Leggere il resto di questo articolo per ulteriori informazioni e un breve tutorial su come installare i pacchetti AUR.
 
*Leggere il resto di questo articolo per ulteriori informazioni e un breve tutorial su come installare i pacchetti AUR.
*Visitare il [http://aur.archlinux.org 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.
+
*Visitare il [https://aur.archlinux.org 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.
 
*Dare un occhiata alle [[#FAQ]] in cerca di risposte alle domande più comuni.
 
*Modificare il file {{ic|/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.
 
*Modificare il file {{ic|/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==
 
==Storia==
 +
 
I seguenti stumenti sono stati riportati solo per motivazioni storiche, e sono stati sostituiti da AUR e non più disponibili.
 
I seguenti stumenti sono stati riportati solo per motivazioni storiche, e sono stati sostituiti da AUR e non più disponibili.
  
Agli inizi c'era {{ic|<nowiki>ftp://ftp.archlinux.org/incoming</nowiki>}} e le persone vi hanno contribuito semplicemente inviando i [[PKGBUILD (Italiano) | 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.
+
Agli inizi c'era {{ic|<nowiki>ftp://ftp.archlinux.org/incoming</nowiki>}} 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]]).
 
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==
 
==Ricerche su AUR==
Il sito Web di AUR può essere trovato [http://aur.archlinux.org/ qui], ed un'interfaccia per l'accesso ad AUR tramite uno script (ad esempio) può essere trovata [http://aur.archlinux.org/rpc.php qui].
+
 
 +
Il sito Web di AUR può essere trovato [https://aur.archlinux.org/ qui], ed un'interfaccia per l'accesso ad AUR tramite uno script (ad esempio) può essere trovata [https://aur.archlinux.org/rpc.php 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ì '\%'.
 
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==
Installare i pacchetti da AUR (anche definito come il repository [unsupported]) è un processo relativamente semplice. Essenzialmente:
 
#Ottenere il tarball contenente il [[PKGBUILD (Italiano) | PKGBUILD]] e tutti i file necessari (ad esempio delle patch)
 
#Estrarre il tarball (preferibilmente in una cartella da tenere da parte solo per le compilazioni di AUR)
 
#Lanciare il comando [[makepkg (Italiano) | makepkg]] all'interno della directory contenente i file scaricati (il comando "{{Ic|makepkg -s}}" si occuperà di risolvere le dipendenze tramite [[Pacman (Italiano) | pacman]])
 
#Installare il pacchetto ottenuto tramite [[Pacman (Italiano) | pacman]]
 
  
$ pacman -U /percorso/per/il/pacchetto.tar.xz
+
Installare i pacchetti da AUR è un processo relativamente semplice. Essenzialmente:
 +
#Ottenere il tarball contenente il [[PKGBUILD]] e tutti i file necessari (ad esempio delle patch).
 +
#Estrarre il tarball (preferibilmente in una cartella da tenere da parte solo per le compilazioni di AUR).
 +
#Lanciare il comando {{ic|makepkg}} all'interno della directory contenente i file scaricati (il comando "{{Ic|makepkg -s}}" si occuperà di risolvere automaticamente le dipendenze tramite pacman).
 +
#Installare il pacchetto ottenuto tramite [[pacman]]:
 +
 
 +
:{{bc|$ 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 (Italiano) | PKGBUILD]] disponibili su AUR. Tutti questi script possono essere trovati in UNSUPPORTED.
+
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 (Italiano) | 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 UNSUPPORTED. Tutti gli utenti dovrebbero essere pratici del processo di compilazione.}}
+
{{Note|Non c'è e non ci sarà mai un meccanismo ''ufficiale'' per l'installazione di materiale precompilato da AUR. '''Tutti gli utenti dovrebbero essere pratici del processo di compilazione.'''}}
  
 
Quello che segue è un esempio dettagliato dell'installazione del pacchetto chiamato "foo".
 
Quello che segue è un esempio dettagliato dell'installazione del pacchetto chiamato "foo".
  
 
===Requisiti===
 
===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, e 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.}}
+
Per prima cosa, assicurarsi che gli strumenti necessari siano installati. Il gruppo di pacchetti {{grp|base-devel}} dovrebbe essere sufficiente; include {{pkg|make}} ed altri pacchetti necessari alla compilazione dai sorgenti.
 +
 
 +
{{Attenzione|I pacchetti su AUR presumono che il gruppo {{grp|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
 
  # pacman -S base-devel
Line 75: Line 91:
  
 
===Ottenere i file necessari===
 
===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 [http://aur.archlinux.org/ 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. Dalla pagina di informazione del pacchetto scaricare i sorgenti cliccando sul relativo link alla lato sinistro vicino alla fine dei dettagli del pacchetto. 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).
+
Trovare il pacchetto su AUR. Ciò può essere fatto usando lo strumento di ricerca (la casella di testo in alto nella [https://aur.archlinux.org/ 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. Dalla pagina di informazione del pacchetto scaricare i sorgenti cliccando sul relativo link alla lato sinistro vicino alla fine dei dettagli del pacchetto. 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===
 
===Compilare il pacchetto===
 +
 
Estrarre l'archivio. Spostarsi nella cartella di compilazione ed estrarre l'archivio.
 
Estrarre l'archivio. Spostarsi nella cartella di compilazione ed estrarre l'archivio.
  
Line 86: Line 104:
 
Questo creerà una cartella di nome "foo" all'interno della directory di compilazione.
 
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 {{ic|PKGBUILD}} ed eventuali {{ic|.install}} verificando che non contengano comandi potenzialmente pericolosi. I {{ic|[[PKGBUILD]]}} sono script bash che contengono funzioni che verranno eseguite da {{Ic|makepkg}}: queste funzioni possono contenere un qualsiasi comando valido o sintassi di bash, quindi è del tutto possibile che un {{ic|PKGBUILD}} contenga comandi pericolosi all'insaputa dell'autore. Da quando {{Ic|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.}}
+
{{Attenzione|'''Controllare accuratamente tutti i file.'''  Spostarsi nella nuova cartella appena creata e controllare accuratamente il {{ic|PKGBUILD}} ed eventuali {{ic|.install}} verificando che non contengano comandi potenzialmente pericolosi. I {{ic|PKGBUILD}} sono script bash che contengono funzioni che verranno eseguite da {{Ic|makepkg}}: queste funzioni possono contenere un qualsiasi comando valido o sintassi di Bash, quindi è del tutto possibile che un {{ic|PKGBUILD}} contenga comandi pericolosi all'insaputa dell'autore. Da quando {{Ic|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
 
  $ cd foo
Line 99: Line 117:
  
 
===Installazione del pacchetto===
 
===Installazione del pacchetto===
Installare il pacchettto usando [[pacman (Italiano) | 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
+
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:  
 
Questo pacchetto può essere installato usando l'opzione "upgrade" di pacman:  
Line 107: Line 126:
 
  # pacman -U foo-0.1-i686.pkg.tar.xz   
 
  # pacman -U foo-0.1-i686.pkg.tar.xz   
  
{{Note|L'esempio precedente è solo un breve riassunto del processo di compilazione. Una lettura alle pagine relative a [[makepkg (Italiano) | makepkg]] ed [[Arch Build System (Italiano) | ABS]] forniranno maggiori dettagli ed è caldamente raccomandato farlo (specialmete per gli utenti che non hanno mai compilato).}}
+
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 (Italiano)|makepkg]] ed [[Arch Build System (Italiano)|ABS]] forniranno maggiori dettagli ed è caldamente raccomandato farlo (specialmete per gli utenti che non hanno mai compilato).}}
  
 
==Feedback==
 
==Feedback==
La gestione dei commenti [http://aur.archlinux.org AUR Web Interface] facilita gli utenti a dare suggerimenti e responsi su possibili miglioramenti ai manutenitori dei [[PKGBUILD (Italiano) | 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 Clients|pastebin]].
+
 
 +
La gestione dei commenti [https://aur.archlinux.org AUR Web Interface] facilita gli utenti a dare suggerimenti e responsi su possibili miglioramenti ai manutenitori dei [[PKGBUILD (Italiano) | 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 Clients|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!
 
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 i pacchetti==
+
==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 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 (Italiano) | PKGBUILD]] usando l'area UNSUPPORTED su AUR. UNSUPPORTED 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.
+
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===
 
===Aggiungere pacchetti===
Dopo aver effettuato l'accesso sul sito di AUR, un utente può [http://aur.archlinux.org/pkgsubmit.php spedire] un archivio tar compresso con gzip ({{ic|.tar.gz}}) di una directory contenente i file necessari alla compilazione del pacchetto. La directory all'interno dell'archivio deve contenere un {{ic|PKGBUILD}}, eventuali file {{ic|.install}}, le patch, eccetera (NON DOVRÀ CONTENERE nessun file compilato). Un esempio di come questa cartella dovrebbe essere può essere trovato all'interno di {{ic|/var/abs}} nel caso in cui sia stato installato [[Arch Build System (Italiano) | ABS]].
+
 
 +
Dopo aver effettuato l'accesso sul sito di AUR, un utente può [https://aur.archlinux.org/pkgsubmit.php spedire] un archivio tar compresso con gzip ({{ic|.tar.gz}}) di una directory contenente i file necessari alla compilazione del pacchetto. La directory all'interno dell'archivio deve contenere un {{ic|PKGBUILD}}, eventuali file {{ic|.install}}, le patch, eccetera ('''assolutamente''' nessun file compilato). Un esempio di come questa cartella dovrebbe essere può essere trovato all'interno di {{ic|/var/abs}} nel caso in cui sia stato installato [[Arch Build System (Italiano) | ABS]].
  
 
L'archivio può essere creato con il seguente comando:
 
L'archivio può essere creato con il seguente comando:
 +
 
  $ makepkg --source  
 
  $ 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:
 
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:
+
 
#Lista dei contenuti dell'archivio.
+
{{hc|$ tar tf libfoo-0.1-1.src.tar.gz|
$ tar tf libfoo-0.1-1.src.tar.gz
+
libfoo/
libfoo/
+
libfoo/PKGBUILD
libfoo/PKGBUILD
+
libfoo/libfoo.install}}
libfoo/libfoo.install
+
  
 
Quando si invia un pacchetto, attenersi alle seguenti regole:
 
Quando si invia un pacchetto, attenersi alle seguenti regole:
* Cercare in [core], [extra], ed in [community] il pacchetto. Se è già presente, in '''QUALSIASI''' forma, '''NON''' inviare il pacchetto (se l'attuale pacchetto è danneggiato o privo di alcune caratteristiche è raccomandato aprire un bug report in [http://bugs.archlinux.org/ FlySpray]).
+
* Cercare il pacchetto nel [https://www.archlinux.org/packages/ database]. Se è già presente, '''non''' inviare il pacchetto. Se l'attuale pacchetto è danneggiato o privo di alcune caratteristiche è raccomandato aprire un [https://bugs.archlinux.org/ 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.
+
* 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 [[Arch Packaging Standards|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.
+
* Verificare accuratamente che il file spedito sia quello giusto. Tutti gli utenti nello scrivere un PKGBUILD devono aver letto ed attenersi agli [[Arch Packaging Standards (Italiano)|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.
 
* 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 [http://mailman.archlinux.org/mailman/listinfo/ Mailing List di AUR] o postarlo nelle apposite [https://bbs.archlinux.org/viewforum.php?id=4 sezioni di AUR] dei forum per ottenere consigli, prima di inviare il pacchetto su AUR.
+
* Se non si è sicuri riguardo al pacchetto (oppure al processo di compilazione o di spedizione), inviare il PKGBUILD sulla [https://mailman.archlinux.org/mailman/listinfo/ Mailing List di AUR] o postarlo nelle apposite [https://bbs.archlinux.org/viewforum.php?id=4 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.
 
* 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.
 
* Accumulare esperienza prima di spedire pacchetti. Compilare alcuni pacchetti per imparare il meccanismo ed allora spedirlo.
* Se si spedisce {{ic|pacchetto.tar.gz}} con all'interno un file di nome {{ic|pacchetto}} si otterrà un errore: "Could not change to directory {{ic|/home/aur/unsupported/pacchetto/pacchetto}}". Per evitare questo errore rinominare il file chiamato {{ic|pacchetto}} ad esempio in {{ic|pacchetto.rc}} o simili. Quando sarà estratto nella cartella {{ic|pkg}} sarà possibile rinominarlo nuovamente come {{ic|pacchetto}}.
+
* Se si spedisce {{ic|pacchetto.tar.gz}} con all'interno un file di nome {{ic|pacchetto}} si otterrà un errore: "Could not change to directory {{ic|/home/aur/unsupported/pacchetto/pacchetto}}". Per evitare questo errore rinominare il file chiamato {{ic|pacchetto}} ad esempio in {{ic|pacchetto.rc}} o simili. Quando sarà estratto nella cartella {{ic|pkg}} sarà possibile rinominarlo nuovamente come {{ic|pacchetto}}. Assicurarsi di leggere anche [[Arch Packaging Standards (Italiano)#Invio di pacchetti ad AUR]].
  
 
===Mantenere i pacchetti===
 
===Mantenere i pacchetti===
 +
 
* Se si mantiene un pacchetto e si vuole aggiornare il PKGBUILD dello stesso, basta ripresentarlo.  
 
* 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!
 
* 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! Una volta in UNSUPPORTED il pacchetto è di responsabilità dell'utente di mantenere e controllare il pacchetto, seguendo gli aggiornamenti ed ottimizzando il PKGBUILD.
+
* 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, {{ic|abbandonare}} il pacchetto dalla propria pagina sul sito di AUR e postare un messaggio sulla mailing list.
 
* Se non si vuole più mantenere un pacchetto per qualsiasi ragione, {{ic|abbandonare}} il pacchetto dalla propria pagina sul sito di AUR e postare un messaggio sulla mailing list.
  
 
===Altri tipi di richieste===
 
===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.
 
* 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].
 
* '''Includere il nome del pacchetto e l'URL alla pagina AUR''', preferibilmente con una nota [1].
Line 162: Line 191:
  
 
==[community]==
 
==[community]==
 +
 
Il repository [community] è mantenuto dai [[Trusted Users]], e contiene i pacchetti più famosi provenienti da AUR. E' abilitato di default in {{ic|pacman.conf}}. Se fosse disabilitato o rimosso, può essere abilitato decommentando o aggiungendo queste due linee:
 
Il repository [community] è mantenuto dai [[Trusted Users]], e contiene i pacchetti più famosi provenienti da AUR. E' abilitato di default in {{ic|pacman.conf}}. Se fosse disabilitato o rimosso, può essere abilitato decommentando o aggiungendo queste due linee:
  
 
{{hc|/etc/pacman.conf
 
{{hc|/etc/pacman.conf
|2=<nowiki>
+
|2=
 
...
 
...
 
[community]
 
[community]
 
Include = /etc/pacman.d/mirrorlist
 
Include = /etc/pacman.d/mirrorlist
 
...
 
...
</nowiki>}}
+
}}
  
[community] contrariamente ad AUR, contiene pacchetti compilati che possono essere installati direttamente con [[pacman]], ed i file necessari alla compilazione sono reperibili tramite [[Arch Build System (Italiano) | ABS]]. Alcuni di questi pacchetti possono eventualmente essere trasferiti in [core] o in [extra] se gli sviluppatori li considerano necessari alla distribuzione.
+
Questo repository, contrariamente ad AUR, contiene pacchetti compilati che possono essere installati direttamente con [[pacman]], ed i file necessari alla compilazione sono reperibili tramite [[Arch Build System (Italiano) | 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 {{ic|/etc/abs.conf}} ed abilitando il repository community all'interno dell'array {{Ic|REPOS}}.
 
Gli utenti possono accedere ai file per la compilazione dei pacchetti di [community] editando {{ic|/etc/abs.conf}} ed abilitando il repository community all'interno dell'array {{Ic|REPOS}}.
  
 
==Git Repo==
 
==Git Repo==
 +
 +
{{Attenzione|Il repository Git ha smesso di sincronizzarsi dal 2012-10-26.}}
 +
 
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):
 
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
+
  $ git clone <nowiki>git://pkgbuild.com/aur.git</nowiki>
  
[http://pkgbuild.com/git/aur.git/ Web interface], [http://pkgbuild.com/~td123/readme Readme], [http://bbs.archlinux.org/viewtopic.php?id=113099 Forum thread]
+
Per maggiori informazioni: [http://pkgbuild.com/git/aur.git/ interfaccia web], [http://pkgbuild.com/~td123/readme readme], [https://bbs.archlinux.org/viewtopic.php?id=113099 forum thread]
  
 
==FAQ==
 
==FAQ==
Line 191: Line 224:
 
{{FAQ
 
{{FAQ
 
|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, purché siano in conformità con i termini di licenza del software. 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. La pirateria non è assolutamente consentita. 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
 
{{FAQ
Line 198: Line 231:
  
 
{{FAQ
 
{{FAQ
|question=Che differenza c'è tra [unsupported] e [community]?
+
|question=Che differenza c'è tra Arch User Repository e [community]?
|answer= [unsupported] è il sito che contiene i PKGBUILDs inviati dagli utenti; essi devono essere compilati manualmente con [[Makepkg (Italiano) | makepkg]]. Quando un PKGBUILD riceve un numero sufficiente di voti, viene spostato nel repository [community], dove i TU lo mantengono come pacchetto binario che può essere installato con [[Pacman (Italiano) | pacman]].}}
+
|answer= L'Arch User Repository è il sito che contiene i PKGBUILDs inviati dagli utenti; essi devono essere compilati manualmente con [[Makepkg (Italiano) | makepkg]]. Quando un PKGBUILD riceve un numero sufficiente di voti, viene spostato nel repository [community], dove i TU lo mantengono come pacchetto binario che può essere installato con [[Pacman (Italiano) | pacman]].}}
  
 
{{FAQ
 
{{FAQ
Line 210: Line 243:
  
 
{{FAQ
 
{{FAQ
|question=Ho dato il comando {{Ic|pacman -S foo}}; non funziona, ma sono sicuro che si trova in [community]
+
|question=Ho dato il comando "pacman -S foo"; non funziona, ma sono sicuro che si trova in [community]
 
|answer=Probabilmente non hai abilitato il repository [community] in {{ic|/etc/pacman.conf}}. È sufficiente decommentare le relative linee.  
 
|answer=Probabilmente non hai abilitato il repository [community] in {{ic|/etc/pacman.conf}}. È sufficiente decommentare le relative linee.  
 
Se [community] è abilitato in {{ic|/etc/pacman.conf}} provare per prima cosa ad eseguire {{Ic|pacman -S -y}} per sincronizzare la pkgcache prima di provare ad installare il pacchetto.}}
 
Se [community] è abilitato in {{ic|/etc/pacman.conf}} provare per prima cosa ad eseguire {{Ic|pacman -S -y}} per sincronizzare la pkgcache prima di provare ad installare il pacchetto.}}
  
 
{{FAQ
 
{{FAQ
|question=In AUR, FOO non è aggiornato; cosa devo fare?
+
|question=In AUR, un pacchetto non è aggiornato; cosa devo fare?
|answer=Innanzitutto puoi segnalare il pacchetto come out-of-date. Se rimane out-of-date per molto tempo, la cosa migliore da fare è mandare un'email al mantainer. Se non c'è risposta dal mantainer, puoi mandare una mail alla mailing list aur-general per chiedere a un Trusted User di rendere orfano quel PKGBUILD. Se vuoi, puoi chiedere di essere tu a mantenere quel PKGBUILD.}}
+
|answer=Innanzitutto puoi segnalare il pacchetto come out-of-date. Se rimane out-of-date per molto tempo, la cosa migliore da fare è mandare un'email al mantainer. Se non c'è risposta dal mantainer, puoi mandare una mail alla mailing list aur-general per chiedere a un Trusted User di rendere orfano quel PKGBUILD. Se vuoi, puoi chiedere di essere tu a mantenere quel PKGBUILD. Nel caso di pacchetti segnalati come out-of-date da più di 3 mesi o in generale non aggiornati da molto tempo, si prega di aggiungere quest'informazione nella richiesta.}}
  
 
{{FAQ
 
{{FAQ
Line 223: Line 256:
  
 
{{FAQ
 
{{FAQ
|question=Il pacchetto Foo in AUR non compila quando lancio {{Ic|makepkg}}; cosa dovrei fare?
+
|question=Il pacchetto Foo in AUR non compila quando lancio makepkg; cosa dovrei fare?
 
|answer=Probabilmente hai dimenticato qualcosa:
 
|answer=Probabilmente hai dimenticato qualcosa:
  
Line 243: Line 276:
 
{{FAQ
 
{{FAQ
 
|question=Come faccio a mandare un PKGBUILD ad AUR senza usare l'interfaccia web?
 
|question=Come faccio a mandare un PKGBUILD ad AUR senza usare l'interfaccia web?
|answer= Puoi usare [http://aur.archlinux.org/packages.php?ID=23393 aurploader], un'interfaccia da linea di comando, oppure [http://http://aur.archlinux.org/packages.php?ID=37216 burp].}}
+
|answer=Puoi usare {{Pkg|burp}}, {{AUR|aurploader}} o {{AUR|aurup}}, tutti con interfaccia da linea di comando.}}

Revision as of 14:39, 3 December 2012

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 tutti i file necessari (ad esempio delle patch).
  2. Estrarre il tarball (preferibilmente in una cartella da tenere da parte solo per le compilazioni di AUR).
  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).
  4. 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 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. Dalla pagina di informazione del pacchetto scaricare i sorgenti cliccando sul relativo link alla lato sinistro vicino alla fine dei dettagli del pacchetto. 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. Se è già presente, non inviare il pacchetto. Se l'attuale pacchetto è danneggiato o privo di alcune caratteristiche è 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

Attenzione: Il repository Git ha smesso di sincronizzarsi dal 2012-10-26.

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, readme, 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