MAKEPKG-TEMPLATE(1)

NUME
makepkg-template - instrument de creare a modelelor pentru pachete

SINOPSIS

makepkg-template [opțiuni]

DESCRIERE

makepkg-template este un script care ușurează munca de menținere a mai multor PKGBUILD-uri similare. Acesta vă permite să mutați cea mai mare parte a codului din PKGBUILD într-un fișier șablon și utilizează marcaje pentru a permite actualizarea pe loc a PKGBUILD-urilor existente dacă șablonul a fost modificat.

Fișierele șablon pot conține orice cod permis într-un PKGBUILD. Puteți să vă gândiți la ele ca la niște fișiere externe incluse cu „.” sau „source”, dar ele vor fi incluse în PKGBUILD de către makepkg-template, astfel încât să nu depindeți de fișierul șablon atunci când construiți pachetul.

Marcajele sunt comentarii de tip bash sub formă de:

    # template start; cheie=valoare; cheie2=valoare2; ...

și

    # template end;

Cheile utilizate în prezent sunt: name (obligatoriu) și version. Numele șabloanelor sunt limitate la caractere alfanumerice, „@”, „+”, „.”, „-” și „_”. Versiunile sunt limitate la numere și „.”.

Pentru crearea inițială, există o scurtătură de o linie care nu are nevoie de un marcaj final:

    # template input; cheie=valoare;

Folosind această scurtătură, makepkg-template îl va înlocui cu marcajele de început și de sfârșit și cu codul șablonului la prima execuție.

Fișierele șablon trebuie să fie stocate într-un singur director, iar numele fișierelor trebuie să fie „$nume_șablon-$versiune.template”, cu o legătură simbolică „$nume_șablon.template” care să indice către cel mai recent șablon. Dacă versiunea nu este definită în marcaj, makepkg-template va utiliza automat ținta „$nume_șablon.template”, în caz contrar va fi utilizată versiunea specificată. Acest lucru permite o verificare mai ușoară a PKGBUILD-urilor nesigure dacă șablonul este de încredere. Se verifică codul care nu face parte din șablon și apoi se utilizează o comandă similară cu aceasta:

    diff -u <(makepkg-template -o -) PKGBUILD

Fișierele de șabloane pot conține, de asemenea, marcaje care conduc la șabloane imbricate în PKGBUILD-ul rezultat. Dacă folosiți marcaje într-un șablon, vă rugăm să indicați versiunea pe care ați folosit-o/testat-o în marcajul de pornire/introducere, astfel încât alte persoane să poată recrea în mod corespunzător din șabloane.

OPȚIUNI

-p, --input <script-construire>
    Citește scriptul de construire al pachetului în loc de scriptul implicit.

-o, --output <build script>
    Scrie fișierul actualizat în scriptul de construire în loc să suprascrie fișierul de intrare.

-n, --newest
    Utilizează întotdeauna cel mai nou fișier șablon disponibil&.

--template-dir <dir>
    Schimbă directorul în care caută fișierele de șabloane. Această opțiune poate fi dată de mai multe ori, caz în care fișierele găsite în directorul dat ultima dată vor avea prioritate.

EXEMPLU DE PKGBUILD

    pkgname=perl-config-simple
    pkgver=4.58
    pkgrel=1
    pkgdesc="clasă de fișier de configurare simplă"
    arch=('oricare')
    license=('PerlArtistic' 'GPL')
    depends=('perl')
    source=("http://search.cpan.org/CPAN/authors/id/S/SH/SHERZODR/Config-Simple-${pkgver}.tar.gz")
    md5sums=('dd9995706f0f9384a15ccffe116c3b6e22f42ba2e58d8f24ed03c4a0e386edb4')
    _distname="Config-Simple"

    # template start; name=perl-module; version=1.0;
    _distdir="${_distname}-${pkgver}"
    url="https://metacpan.org/release/${_distname}"
    options+=('!emptydirs')

    build() {
            cd "$srcdir/$_distdir"
            perl Makefile.PL INSTALLDIRS=vendor
            make
    }

    check() {
            cd "$srcdir/$_distdir"
            make test
    }

    package() {
            cd "$srcdir/$_distdir"
            make DESTDIR="$pkgdir" install
    }
    # template end;

CONSULTAȚI ȘI

makepkg(8), PKGBUILD(5)

Consultați situl web pacman la https://archlinux.org/pacman/ pentru informații actuale despre «pacman» și instrumentele sale conexe.

ERORI

Hibe? Probabil că glumiți; nu există nicio hibă în acest software&. Dar dacă se întâmplă să fie ceva greșit, depuneți o cerere de rezolvare a problemei cu cât mai multe detalii posibile la: https://gitlab.archlinux.org/pacman/pacman/-/issues.

AUTORI

Responsabilii actuali:

    • Allan McRae <allan@archlinux.org>

    • Andrew Gregory <andrew.gregory.8@gmail.com>

    • Morgan Adamiec <morganamilo@archlinux.org>

Contribuitori importanți din trecut:

    • Judd Vinet <jvinet@zeroflux.org>

    • Aurelien Foret <aurelien@archlinux.org>

    • Aaron Griffin <aaron@archlinux.org>

    • Dan McGee <dan@archlinux.org>

    • Xavier Chantry <shiningxc@gmail.com>

    • Nagy Gabor <ngaba@bibl.u-szeged.hu>

    • Dave Reisner <dreisner@archlinux.org>

    • Eli Schwartz <eschwartz@archlinux.org>

Pentru contribuitori suplimentari, folosiți «git shortlog -s» în depozitul .git pacman.

TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 (https://www.gnu.org/licenses/gpl-3.0.html) sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.