[Kiel] Generi programajn pakaĵojn kaj derivaĵojn de Arch Linux

Unu el la aferoj, kiujn mi plej ŝatas pri Arch Linukso kaj ĝiaj derivaĵoj, estas la terura facileco krei pakojn por poste esti instalitaj en la sistemo, male al la konataj .deb de Debian / Ubuntu / Linukso Mint / ktp tio estas kaoso (kaj se ili estas bibliotekoj, mi ne diras al vi).

Baza ŝablono estus ĉi tio:

# Maintainer:
pkgname=
pkgver=
pkgrel=
pkgdesc=
arch=()
url=
license=()
groups=()
depends=()
makedepends=()
source=()
md5sums=()

build() {
...
}
package() {
...
}

Nun mi klarigos ĉiun parametron:

  • # Subtenanto: En ĝi estas metita la nomo de la prizorganto de la pakaĵo
  • pkgname: La nomo de la pakaĵo. Ĝi povas enhavi nur literojn, ciferojn, -, _ kaj +
  • pkver: paka versio. pe 1.0.0
  • pkgrel: recenzo de la programo aŭ pako. pe 1
  • pkgdesc: paka priskribo.
  • arko: la arkitekturo de la programo: ĝi povas esti iu ajn (por ĉiuj), i686 kaj x86_64, estante iu ajn por pakoj, kiuj ne bezonas kompilaĵon, kiel programoj en bash aŭ python. Se temas pri programo, kiu bezonas ĝin (ekzemple programoj en C aŭ C ++), vi indiku i686 se ĝi estas por 32 bitoj aŭ x86_64 por 64 bitoj. Ĝenerale, se ĝi kongruas kun ambaŭ, ĝi estas agordita (i686, x86_64)
  • url: la url al la oficiala paĝo de la programo. Estas konsilinde meti ĝin.
  • permesilo: la programlicenco. ekz. GPL3
  • grupoj: la grupoj al kiuj apartenas la pakaĵo. grupoj = ('sistemo')
  • dependas: en ĝi ni indikas la pakaĵojn necesajn por la ekzekuto de la programo. pependens = ('python2' 'pygtk')
  • faru dependojn: la dependecoj necesaj nur por kompili la pakaĵon. Se la kodo estas elŝutebla de versio-administrilo, estas konsilinde meti ĝin. pe: makedepends = ('git')
  • fonto: en ĝi ni indikas la dosierojn necesajn por la kreado de la pakaĵo. Kiel ĝenerala regulo, ĝi estas la url al la pakaĵo, kiu enhavas la kodon, flikaĵon, .desktopt-dosieron, ikonojn, ktp. pe: fonto = (pacsyu.desktop)
  • md5sumoj: jen la md5-sumoj de la dosieroj indikitaj en fonto. Por scii, kiujn ni kuras de terminalo en la dosierujo, kie estas la PKGBUILD (skribinte la dosierajn vojojn en fonto) makepkg -g kaj la sumoj aperos sur la ekrano.
    Eblas ankaŭ uzi aliajn sumojn kiel sh1.
  • konstrui: en ĉi tiu funkcio ni metos la komandoj necesaj por daŭrigi kompili la programon. Se ne necesas kompili nur la sekva funkcio estas necesa)
  • pako: en ĉi tiu alia funkcio la programaj instalaj komandoj daŭros. Ekzemple, se ni kompilas C-kodon ĉi tie, la make install funkcius.

Kaj por fini ni nur devas ekzekuti makepkg por kontroli, ke la pakaĵo estas generita.
Kiel vi vidas, ĝi estas malfacila por ni. Tiam mi lasas vin kun iuj kromaj parametroj de makepkg:

  • -i: Instrukcias al makepkg instali la pakaĵon post ĝia kreo.
  • -s: Instalu la pakaĵajn dependecojn se ili estas en la deponejoj.
  • -F: Se jam ekzistas pakaĵo kun tiu nomo, versio kaj revizio kun ĉi tiu parametro, ni diras al vi anstataŭigi ĝin.
  • -c: Purigu la laborajn dosierujojn (pkg kaj fonto) post finiĝo.
  • -R: Repaki la pakaĵon sen devi rekompili.

Mi rekomendas vidi pli da PKGBUILD-dosieroj por vidi pli da ekzemploj, ekzekutu la komandon makepkg -h vidi la ceterajn programajn parametrojn, krom vidi la oficiala dokumentaro de makepkg en la Vikina Vorto de Linukso kion vi povas trovi Ĉi tie


La enhavo de la artikolo aliĝas al niaj principoj de redakcia etiko. Por raporti eraron alklaku Ĉi tie.

14 komentoj, lasu la viajn

Lasu vian komenton

Via retpoŝta adreso ne estos eldonita. Postulita kampojn estas markita per *

*

*

  1. Respondeculo pri la datumoj: Miguel Ángel Gatón
  2. Celo de la datumoj: Kontrola SPAM, administrado de komentoj.
  3. Legitimado: Via konsento
  4. Komunikado de la datumoj: La datumoj ne estos komunikitaj al triaj krom per laŭleĝa devo.
  5. Stokado de datumoj: Datumbazo gastigita de Occentus Networks (EU)
  6. Rajtoj: Iam ajn vi povas limigi, retrovi kaj forigi viajn informojn.

  1.   jamin-samuel diris

    Tre bona …

    Ĉu pako .exe povas esti administrita (kompilita) al Arch-pakaĵo?

    Kiel ekzemple la fama elŝuta administrilo Miponio ??

    1.    taŭga diris

      Laŭ mia scio ne eblas, memoru, ke la .exe estas duumaĵoj kaj ne fontkodo. Sed ekzistas JDownloader.

    2.    v3on diris

      iu uzas linux kaj maltrafas Myponi ... jijijijiji

      jDownloader estas en java, kaj estas bone konata de ĉiuj, ke java kaŭzas pulman kanceron ...

  2.   lakteca28 diris

    interese, ni devus testi pakojn, mi pensas, ke mi emos fari tiun de qbittorrent hahaha jam ekzistas en yaourt sed havi vian propran version ne malbone testos, dankon pro la informaj salutoj.

  3.   MSX diris

    Bona enigo, +1
    Mi volas aldoni, ke ili ankaŭ pli facile kreas kaj prizorgas ol Gentoo-ebuilds!

    Pri Debian, mi pensas, ke ĉi tiu distro multe plialtigus sian handikapon nur per modernigo aŭ migrado al pli moderna paka kaj paka mastruma sistemo, mi ne scias, kiam estos la lasta ĝisdatigo de la dpkg / apt-aro, sed la koncepto devus jam facile havi 15 jaroj kaj la vero estas, ke hodiaŭ estas anakronisma.

  4.   Rots87 diris

    Koran dankon, mi ĵus ĵus serĉis ĝin en la vikio kaj mi ne komprenis la strukturon (mi volis ĝisdatigi la PlayonLinux) sed mi tamen rezignis ... estas aferoj, en kiuj mi ŝatus havi asistanton aŭ ion tian (ne mortpafu min) sed tamen ... en la foresto de iloj dum la tempo mi vidos ĉu mi kreas iujn

    1.    MSX diris

      Danke al via gvidilo mi komencis krei la PKGBUILD de Zeya (http://web.psung.name/zeya/), tuj kiam mi finos ĝin, mi alŝutos ĝin al la AUR 🙂

  5.   hipersayan_x diris

    male al la konata .deb de Debian / Ubuntu / Linukso Mint / ktp, kiu estas fuŝaĵo

    Tute konsentas, antaŭ iom da tempo mi provis krei pakaĵon por Ubuntu kaj estis neeble trovi kompreneblajn informojn pri kiel fari unu, finfine mi rezignis kaj instalis la programon proksimume.
    La sama programo por Arch prenis min malpli ol 5 minutojn por kunmeti la pakaĵon.
    Kaj mi ne certas, sed mi pensas, ke RPM estas iomete pli facila ol DEB, sed pli malfacila ol Arch.

  6.   hackloper775 diris

    Tre bona kaj facila, kaj pri la .deb ĝi ne estas tiel malfacila, nu, ke por iOS

    salutoj

  7.   Carlos diris

    Mi pensas, ke ĉi tio utilus al mi antaŭ iom da tempo, kiam mi alŝutis mian unuan PKGBUILD al AUR 🙂

  8.   klerafel diris

    Ĉu iu povas klarigi al mi, kio ĝi estas al mi, mi estas nova, kaj mi ne scias, ĉu ĉi tio helpas min instali .deb-pakon sed loke en manjaro, precize ludo. Jes, ĝi funkcias?