Építés a Flatpak számára
A Snap verzióhoz hasonlóan a Jami Flatpak verziója is elérhető a Flathubon.
Mi az a Flatpak, és hogyan működik?
A Flatpak alapvető megismeréséhez ajánlott a Flatpak bevezetése és az Alapfogalmak elolvasása.
Fontos
A folytatás előtt telepítse a flatpak-csomagot.
Forráskód
A Flatpak verzió forráskódja pontosan megegyezik az asztali ügyféllel. A jegyzékfájl, a függőségek és a Flatpak-függő javítások azonban a hivatalos GitHub-tárolóban találhatók (szükséges a Flathub szerint), amely itt érhető el.
Előfeltételek
A flatpak-builder telepítése:
flatpak install flathub org.flatpak.Builder
Ezután add hozzá a Flathub-adattárat felhasználószinten:
flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
A Flatpak helyi építése
A GitHub-adattár klónozása
git clone git@github.com:flathub/net.jami.Jami.git
Jami építése
flatpak-builder --force-clean --user --install-deps-from=flathub --repo=DIR builddir net.jami.Jami.yml
DIR
—a tároló neve. Alapértelmezés szerint a tároló neve repo
. Ha a tároló neve ettől eltér, akkor a tároló nevét kell használni a Jami telepítésekor, a Flatpak hibakeresésekor és frissítések Flathubba küldésekor.
Jami telepítése
flatpak install DIR -y net.jami.Jami
Jami futtatása
flatpak run net.jami.Jami
Megjegyzés
Ha a Jami több Flatpak telepítése is létezik, akkor a --branch=ÁG
kapcsolót a run
parancs után kell megadni az újonnan lefordított Flatpak futtatásához.
A Flatpak telepítések és a hozzájuk tartozó ágak a flatpak list
paranccsal ellenőrizhetők. Az újonnan felépített és telepített Flatpak futtatásához állítsd az ÁG
kapcsolót arra az ágra, amelyik az Origin
-nak megfelel, azaz repo
.
Hibakeresés
A Flatpaks hibakeresése a homokozón belül, helyi gépen lehetséges.
Figyelem
A Jami Flatpakhoz való felépítése miatt a hibakeresés időigényes lehet, mivel a jami-core megosztott könyvtárként van felépítve. Ez azt jelenti, hogy a hibakereső minden újraindításakor meg kell várni a szimbólumok betöltését. Hacsak nem biztos, hogy a hibakeresés alatt álló probléma a Jami Flatpak verziójára jellemző, általában gyorsabb az asztali ügyfél helyi fordítása és hibakeresése. Útmutatóért lásd: itt.
A hibakereső verzió letöltése
A folytatás előtt a Jami Flatpak előző szakaszban leírtak szerint kell elkészíteni a Jami Flatpak fordítását. Ha kész, telepítse a hibakereső verziót:
flatpak install --include-sdk --include-debug repo -y net.jami.Jami
A hibakeresési környezet elindítása
A következő parancs parancsértelmezőt fog futtatni a homokozón belül:
flatpak run --command=sh --devel --filesystem=$(pwd) net.jami.Jami
Futtatás után a parancsértelmezőnek a következőhöz hasonlóan kell kinéznie:
[📦 net.jami.Jami net.jami.Jami]$
Most már két hibakeresési módszer létezik. Függetlenül attól, hogy melyiket választjuk, a mindkét szakaszban leírt parancsokat a homokozó parancsértelmezőn belül kell futtatni.
Hibakeresés a GDB (GNU Project Debugger – GNU projekt hibakereső) segítségével
gdb --args /app/bin/jami --debug
A hibakeresés mostantól a szokásos módon elvégezhető.
Hibakeresés Visual Studio Code (VS Code) segítségével
A gdbserver elindítása.
gdbserver :1234 /app/bin/jami --debug
Megjegyzés
A kikötő száma szükség esetén módosítható. Győződjön meg róla, hogy a miDebuggerServerAddress kikötő száma a
.vscode/launch.json
fájlban tükrözi az új kikötő számot.A VS Code elindítása a projekt gyökerében.
A futtatás és hibakeresés belépése (Ctrl+Shift+D).
Attach to Remote GDB
kijelölése.Jami futtatása (F5).
Töréspontok beállítása
A forrásfájlok a projekt gyökerében, a builddir/files/lib/debug/source
könyvtárban találhatók, és itt kell beállítani a töréspontokat.
Frissítések beküldése a Flathubnak
Ha még nem tette meg, telepítse a flatpak-builder-fájlt, és adja hozzá a Flathub-adattárat a felhasználó egészére az Előfeltételek részben leírtak szerint.
Jegyzékfájl építése
flatpak run --command=flathub-build org.flatpak.Builder --install net.jami.Jami.yml
Jami futtatása és tesztelése
flatpak run net.jami.Jami
A szöszölőeszköz futtatása
A következő parancsokat kell futtatni a YAML-fájlok módosításakor. Ha hibákat észlelünk, azokat egy lekéréses kérés megnyitása előtt el kell hárítani. Ellenkező esetben a Flathub-tesztfelépítések is sikertelen lesznek.
flatpak run --command=flatpak-builder-lint org.flatpak.Builder manifest net.jami.Jami.yml
flatpak run --command=flatpak-builder-lint org.flatpak.Builder repo repo
A szöszölőeszköz-hibák listája itt található.
Változások leküldése és lehívási kérés megnyitása
Ha a felépítés sikeres volt és átment a szöszölőeszköz ellenőrzéseken, akkor a változtatásokat a GitHub-adattárba lehet tolni, és meg lehet nyitni a lehívási kérést. A lehívási kérés megnyitása után a Flathub automatikus felépítési rendszer tesztfelépítéseket készít az x86_64
és aarch64
architektúrákhoz. Ha a felépítések tesztje sikeres lesz, a lehívási kérés összevonható lesz a mesterré, kiváltva a hivatalos felépítéseket.
Megjegyzés
A net.jami.Jami.yml
fájlban található finish-args
változó, valamint a net.jami.Jami.metainfo.xml
fájl módosításához a Flathub karbantartóinak jóváhagyása szükséges. A változtatásoktól függően a build elutasításra kerülhet, vagy magyarázatot, illetve indoklást igényelhet. Ez utóbbi esetben egy probléma kerül megnyitásra a GitHub-adattáron a változtatások magyarázata vagy indoklása érdekében.
A jóváhagyás állapotának megtekintéséhez jelentkezz be a Flathub oldalra, és navigálj a Developer Portal (Fejlesztői portál) → Jami menüpontra.