ABS

De la ArchWikiRo
Salt la: navigare, căutare
Rezumat
Arch Build System este un sistem bazat pe porturi pentru crearea și împachetarea software-ului din codul sursă. Acest articol conține o prezentare generală a ABS urmată de instrucțiuni de folosire detaliate.
Prezentare generală
Pachetele din Arch Linux sunt construite folosind makepkg și un script personalizat pentru fiecare pachet (cunoscut sub numele de PKGBUILD). Odată ce a fost construit, programul poate fi instalat și gestionat de către pacman. PKGBUILD-urile pentru software-ul din depozitele oficiale sunt disponibile în ierarhia ABS; alte mii de pachete sunt disponibile (fără suport oficial) în AUR.
Resurse
ABS FAQ
Arch Packaging Standards
Creating Packages
Kernel Compilation with ABS

ABS - Sistem de Arhitectură Build

Cuprins

Ce este ABS?

ABS este Arch Build System (Sistem de Construire Arch). El este un sistem de tip 'ports' (porturi), și este folosit pentru construirea și împachetarea software-ului din cod sursă. În timp ce pacman este un instrument specializat pentru managementul pachetelor binare Arch, (inclusiv pachete construite cu ABS), ABS este un instrument specializat în compilarea sursei într-un pachet instalabil Pkg.tar.gz.

Ce este un sistem de tip 'ports'?

'Ports' este un sistem utilizat de către FreeBSD, care face ca descărcarea, construirea şi instalarea de software din surse terţe să fie foarte uşoară. Un 'port' este un mic director în computerului utilizatorului, numit după software-ul corespondent care trebuie instalat și care conţine câteva fişiere cu instrucţiuni pentru descărcare şi instalarea unei aplicații din sursă, de obicei navigând în director, sau port, şi folosind “make şi “make install”. Apoi sistemul va descărca, compila şi instala software-ul dorit.

ABS este un concept similar.

ABS este construit dintr-un director arbore (ABS TREE), cu reşedinţa în /var/ABS, care conţine mai multe subdirectoare, fiecare într-o categorie, şi fiecare pachet în parte cu numele respectiv. Acest arbore reprezintă (dar nu conţine) toate software-ul oficial Arch, prin SVN sistem. Poate face referire la pachetul-numit din subdirector ca respectiv "ABS" în special la cel care vă referiţi ca "port". Aceste ABS sau subdirectoare, nu conţin pachete de programe, nici pachete sursa, ci mai degrabă, să conţină un fişier PKGBUILD, (şi, uneori, alte fisiere). Un PKGBUILD este un simplu script Bash - un fişier text care conţine instrucţiunile de compilare şi de arhivare, precum şi URL-ul de la sursa corespunzătoare arhivei pentru a putea fi descărcată. (Cea mai importantă componenta a ABS-ului este PKGBUILDs) Prin folosirea comenzii de ABS makepkg, mai întâi software-ul este compilat, apoi arhivat (packaged) în interiorul directorului creat înainte de a fi instalat. Acum aveţi posibilitatea de a utiliza Pacman, Arch Linux Package Manager pentru a instala, actualiza, şi sterge noul pachet.

Trecere în revistă

Instalaţi ABS cu pacman-Sy ABS. Rulați “ABS” ca root. Se creează astfel arborele ABS care se sincronizează cu serverul Arch Linux. Dacă vreţi să construiți un pachet din sursă trebuie să copiați fişierele (de obicei le găsiţi în /var/abs/<reop> / <pkgnume>) într-un director, să navigaţi la acel director, să editaţi PKGBUILD ( dacă doriţi sau este necesar) după care folosiţi comanda makepkg.

În conformitate cu instrucţiunile din PKGBUILD, makepkg va descărca corespunzător sursa arhivată, dezarhivează arhiva, aplică eventualele patch-uri, iar în funcţie de CFLAGS specificate în makepkg.conf se compilează programul si apoi comprimă fişierele într-un pachet cu extensia Pkg.tar.gz.

PKGBUILDs pot fi personalizat pentru a se potrivi nevoilor unice de configurare, sau pentru aplicarea de patch-uri. Instalarea este la fel de uşoară folosind comanda pacman -U <. Pkg.tar.gz fişier>. Pentru a şterge un pachet se foloseste tot comanda pacman.

Puteţi folosi, de asemenea, makepkg pentru a vă face propriul personalizator de pachete din AUR sau din alte surse.

Cu ABS Tree în loc, un utilizator Arch are toate pachetele distribuţiei disponibile la îndemână, pentru a compila de la sursă, în mod automat un pachet ca Pkg.tar.gz şi, în final instalarea acestuia cu pacman.

ABS Prezentare generală

'ABS' poate fi folosit ca umbrella term, deoarece nu este inclus şi se bazează pe o serie de alte componente. Prin urmare, deşi nu este corect din punct de vedere tehnic, "ABS" se poate referi la următoarea structură şi instrumente ca un complet set de instrumente:

  • Arborele ABS: ABS directorul de structură; o ierarhie SVN în / var / ABS / (local) machine. Directorul conţine numeroase subdirectoarele cu numele fiecărui soft oficial a distribuţiei Arch Linux, specificate în / etc / abs.conf, dar nu şi pachetele în sine.
  • ABS: Un set de instrumente pentru a prelua şi de a construi Arch Linux PKGBUILD-uri. Un exemplu PKGBUILD este de asemenea inclus.
  • makepkg: comandă ABS care citeşte PKGBUILD, compilează o sursă, după care creează pachetul .pkg.tar.gz.
  • pacman: Pacman este complet separat de ABS, dar este necesar fiind invocat prin makepkg sau manual, pentru a instala sau elimina pachetele construite, precum şi pentru preluare de dependenţe.
  • AUR: The Arch User-Community Repository este separat de ABS, dar AUR oferă PKGBUILD-uri [neoficiale] ce pot fi construite folosind instrumentul ABS makepkg pentru a compila pachetul software.. AUR conţine peste 8000 de contributii PKGBUILD care nu sunt disponibile în pachetele oficale ale distribuţiei Arch Linux. Dacă aveţi nevoie să construiţi un pachet în afara distribuţiei oficiale al arborelui Arch, le puteţi gasi în pagina AUR.

De ce aş vrea să utilizez ABS?

The Arch Build System (ABS scurt) este folosit pentru:

  • Pentru a recompila un pachet, pentru orice motiv.
  • Crează şi instalează pachete noi din sursă pentru programe fără nici un pachet disponibil.
  • Particularizaţi pachete existente pentru potrivirea nevoilor dumneavoastră (activarea sau dezactivarea opţiuni, patching).
  • Recompilaţi întregul sistem, folosind compilator cu flaguri, "a la FreeBSD" (p.e cu pacbuilder)
  • Curaţă şi instalează propriul kernel.
  • Copiază modulele kernelului pentru kernelul personalizat.
  • Uşor de compilat şi de instalat o nouă, veche, beta, sau de dezvoltare versiune a unui pachet, prin editarea versiunii în PKGBUILD.

ABS nu este necesar să se folosească în distribuţia Arch Linux, dar este util pentru automatizarea anumitor sarcini de sursa de compilare.

Instalare de pachete

Pentru a utiliza ABS, mai întâi trebuie să instalaţi ABS; aceasta se poate face prin simpla comandă:

pacman -S abs

Înainte de a putea construi ceva aveți nevoie de asemenea de pachetele necesare compilării. Acestea sunt incluse în grupul base-devel. Acest grup poate fi instalat cu:

pacman -S base-devel

/etc/abs.conf

Ca root editați /etc/abs.conf pentru a include pachetele dorite:

vim /etc/ abs.conf

Scoateţi din partea din faţă semnul ! pentru pachetele care vor fi incluse: REPOS=(core extra community !testing)

Creaţi Arborele ABS

Ca root tastaţi comanda:

ABS

După tastarea acestei comenzi, abs este acum creat în /var/abs Comanda ABS se folosește de asemenea pentru a sincroniza periodic ABS şi pentru actualizarea Arborele ABS.

/ etc / makepkg.conf

Acest fişier conţine configuraţiile compilatorului. Când rulaţi ABS pentru prima dată, se sincronizează arborele ABS cu Arch Linux server. Deci, ce este mai exact Arborele ABS: Este un SVN, ierarhia directorului află în / var / ABS, ea arată astfel:

ABS structură

| -- core/
|     || -- base/
|     ||     || -- acl/
|     ||     ||     || -- PKGBUILD
|     ||     || -- attr/
|     ||     ||     || -- PKGBUILD
|     ||     || -- ...
|     || -- devel/
|     ||     || -- abs/
|     ||     ||     || -- PKGBUILD
|     ||     || -- autoconf/
|     ||     ||     || -- PKGBUILD
|     ||     || -- ...
|     || -- ...
| -- extra/
|     || -- daemons/
|     ||     || -- acpid/
|     ||     ||     || -- PKGBUILD
|     ||     ||     || -- ...
|     ||     || -- apache/
|     ||     ||     || -- ...
|     ||     || -- ...
|     || -- ...
| -- community/
|     || -- ...

Deci, arborele ABS are exact aceeaşi structură ca pachetul de bază de date:

  • primul nivel directorele reprezintă categorii
  • al doilea nivel, directoarele ABS contin pachetele pe care vom dori să le instalăm.
  • PKGBUILD conţine toate informaţiile necesare cu privire la pachet.
  • în plus, un director ABS pot conţine patch-uri şi / sau alte fişiere necesare pentru construirea de pachete.
Creaţi un director

Trebuie să creaţi un director unde veţi compila pachet-ul dorit

mkdir-p $ HOME / ABS

Acum, că ştii ce este Arborele ABS, cum putem să-l utilizăm?

Metoda tradiţională

Metoda pentru instalarea unui pachet:

  • Dezarhivare pachet:
tar-xzf foo-0.99.tar.gz 
tar-xjf foo-0.99.tar.bz2 
  • Intrare în director
CD-foo 0.99 
  • Configurare pachet:
./configure [[opţiune]]
  • Compilare sursă:
make
  • Instalează pachet:
make install
  • Dezinstalare pachet:
make uninstall

Metoda ABS (exemplu instalare slim):

Copiaţi pachet-ul slim din ABS

cp -r /var/abs/extra/slim/ /home/yourusername/abs
  • Intraţi in director
cd /home/yourusername/abs/slim
  • Modificaţi PKGBUILD (opţional)
nano PKGBUILD
  • Instalaţi pachet-ul:
makepkg -s
  • Instalati pachet-ul ca root:
pacman -U slim 1.3.0-2-i686.pkg.tar.gz
  • Pentru ştergere:
pacman –R slim
Unelte personale