[Howto] Arch Linux szoftvercsomagok és származékok generálása

Az egyik dolog, ami az Arch Linuxban és annak származékaiban tetszik a legjobban, az a óriási könnyedség csomagok létrehozására, amelyeket később a rendszerre lehet telepíteni, ellentétben az ismertekkel . Deb a Debian / Ubuntu / Linux Mint / stb., ami káosz (és ha könyvtárak, akkor nem is mondom el).

Alapsablon a következő lenne:

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

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

Most elmagyarázom az egyes paramétereket:

  • # Fenntartó: Ebben szerepel a csomag fenntartójának neve
  • PKGNAME: A csomag neve. Csak betűket, számokat, -, _ és + tartalmazhat
  • PKVER: csomag verzió. pe 1.0.0
  • PKGREL: a program vagy csomag áttekintése. pe 1
  • PKGDESC: csomag leírása.
  • boltív: a program architektúrája: lehet bármilyen (mindenki számára), i686 és x86_64, bármilyen olyan csomaghoz, amely nem igényel fordítást, mint például a bash vagy a python program. Ha olyan programra van szüksége, amelyre szüksége van (például C vagy C ++ nyelven írt programok), akkor az i686-ot kell megadnia, ha 32 bites, vagy x86_64 64 bites. Általában, ha kompatibilis mindkettővel, akkor be van állítva (i686, x86_64)
  • url: az URL a program hivatalos oldalára. Célszerű megfogalmazni.
  • engedély száma: a programengedélyt. pl. GPL3
  • csoport: azok a csoportok, amelyekhez a csomag tartozik. csoportok = ('rendszer')
  • attól függ: benne megadjuk azokat a csomagokat, amelyek a program futtatásához szükségesek. pependens = ('python2' 'pygtk')
  • attól függ: a csak a csomag fordításához szükséges függőségek. Ha a kódot le kell tölteni egy verziókezelőből, célszerű feltenni. pe: makedepends = ('git')
  • forrás: benne a csomag létrehozásához szükséges fájlokat jelezzük. Általános szabály, hogy a csomag URL-je tartalmazza a kódot, a javítást, a .desktopt fájlt, az ikonokat stb. pe: forrás = (pacsyu.desktop)
  • md5összegek: itt vannak a forrásban feltüntetett fájlok md5 összegei. Annak megismerése, hogy melyiket futtatjuk egy terminálról abban a mappában, ahol a PKGBUILD található (miután a fájl útvonalait a forrásba írtuk) makepkg -g és az összegek megjelennek a képernyőn.
    Lehetőség van más összegek felhasználására is, például sh1.
  • épít: ebbe a függvénybe tesszük a a szoftver fordításához szükséges parancsok. Ha nem szükséges csak a következő függvény összeállítása)
  • csomag: ebben a másik funkcióban a program telepítési parancsai mennek. Például, ha itt C kódot fordítunk, akkor a make install menni fog.

És a befejezéshez csak végre kell hajtanunk makepkg a csomag létrehozásának ellenőrzése.
Mint láthatja, nehéz nekünk. Akkor hagyok néhány extra paramétert a Makepkg:

  • -én: Utasítja a makepkg-t, hogy telepítse a csomagot a létrehozása után.
  • -s: Telepítse a csomagfüggőségeket, ha azok a tárakban vannak.
  • -F: Ha már van ilyen nevű csomag, verzió és verzió ezzel a paraméterrel, akkor azt javasoljuk, hogy írja felül.
  • -c: Miután elkészült, tisztítsa meg a működő mappákat (pkg és forrás).
  • -A: Csomagolja újra a csomagot anélkül, hogy újra kellene fordítania.

Több PKGBUILD fájl megtekintését javasoljuk, hogy további példákat láthasson, hajtsa végre a parancsot makepkg -h a program többi paraméterének megtekintéséhez, a makepkg hivatalos dokumentáció az Arch Linux Wikiben mit találhat itt


Hozzáadás előnyben részesített forrásként a Google-ben