Flatpakin valmistaminen
Vastaava kuin Snap. Flatpak-versio Jamista, jaetaan Flathub.
Mikä on Flatpak ja miten se toimii?
Lue ensin johdanto Introduction to Flatpak ja Basic Concepts jotta saat perusymmärryksen Flatpakeista.
Tärkeä
Ennen kuin jatkat, asenna flatpak paketti.
Lähdekoodi
Flatpak lähdekoodi on täsmälleen sama kuin työpöytäversion. Riippuvuudet ja Flatpak-kohtaiset korjaustiedostot sijaitsevat kuitenkin virallisessa GitHub-arkistossa (Flathub vaatimusten mukaisesti) ja löytyy täältä.
Edellytykset
Asenna flatpak-builder:
flatpak install flathub org.flatpak.Builder
Lisää sitten Flathub-repo kaikille käyttäjille:
flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
Flatpakin valmistaminen paikallisesti
Kloonaa GitHub-arkisto
git clone git@github.com:flathub/net.jami.Jami.git
Jamin rakentaminen
flatpak-builder --force-clean --user --install-deps-from=flathub --repo=DIR builddir net.jami.Jami.yml
”DIR” – arkiston nimi. Oletuksena arkiston nimen pitäisi olla ”repo”. Jos arkiston nimi on jokin muu, nimeä on käytettävä [Jamin asennuksessa] (#install-jami), [Flatpak virheentarkistuksessa] (#debugging) ja [päivitysten lähettämisessä Flathubiin] (#submitting-updates-to-flathub).
Asenna Jami
flatpak install DIR -y net.jami.Jami
Suorita Jami
flatpak run net.jami.Jami
Muista
Jos Jamista on useita Flatpak-asennuksia, --branch=BRANCH-vipu tulee määrittää run-komennon jälkeen, juuri käännetyn Flatpakin suorittamiseksi.
Flatpak-asennukset ja vastaavat haarat voidaan tarkistaa komennolla ”flatpak list”. Suorita juuri käännetty ja asennettu Flatpak, asettamalla ”BRANCH”-kohtaan haara, joka vastaa ”Origin”-haaraa, joka on ”repo”.
Virheentarkistus
Flatpak virheentarkistus hiekkalaatikossa on mahdollista paikallisella tietokoneella.
Varoitus
Jamin rakentaminen Flatpakiksi voi viedä aikaa. Tarkoittaa, että joka kerta, kun virheenkorjaaja käynnistetään uudelleen, sen on odotettava symbolien latautumista. Ellei ole varmaa, että korjattava ongelma liittyy Jamin Flatpak-versioon, on yleensä nopeampaa kääntää ja debugata työpöytäsovellus paikallisesti. Ohjeet löytyvät [täältä] (dependencies.md#jami-client-qt).
Lataa debug-versio
Ohjeet Jami Flatpakin rakentamiseksi, kuten edellisessä osiossa on oltava valmis ennen jatkamista. Kun olet valmis, asenna debug-versio:
flatpak install --include-sdk --include-debug repo -y net.jami.Jami
Käynnistäminen virheenkorjausympäristössä
Seuraava komento suorittaa komentotulkin hiekkalaatikossa:
flatpak run --command=sh --devel --filesystem=$(pwd) net.jami.Jami
Komentotulkin pitäisi näyttää seuraavanlaiselta:
[📦 net.jami.Jami net.jami.Jami]$
Korjaukseen on kaksi tapaa. Riippumatta siitä, kumpi valitaan, kummassakin osiossa kuvatut komennot tulee suorittaa hiekkalaatikon sisällä.
Virheenkorjaus GNU Project Debugger (GDB)
gdb --args /app/bin/jami --debug
Virheenkorjaus voidaan tehdä nyt normaalisti.
Virheenkorjaus Visual Studio Code (VS Code)
Käynnistä gdbserver.
gdbserver :1234 /app/bin/jami --debug
Muista
Portin numeroa voidaan muuttaa tarvittaessa. Varmista, että .vscode/launch.json-tiedoston miDebuggerServerAddress porttinumero vastaa uutta porttinumeroa.
Käynnistä VS Code projektin juuressa.
Siirry ”Run and Debug” -osioon (Ctrl+Shift+D).
Valitse ”Attach to Remote GDB”.
Suorita Jami (F5).
Aseta keskeytyskohdat
Lähdetiedostot sijaitsevat projektin juuressa hakemistossa ”builddir/files/lib/debug/source”, ja niihin tulisi asettaa keskeytyskohdat.
Päivityksen lähettäminen Flathubiin
Jos et ole vielä tehnyt, asenna flatpak-builder ja lisää Flathub-repo Edellytykset kuvatulla tavalla.
Luo manifesti
flatpak run --command=flathub-build org.flatpak.Builder --install net.jami.Jami.yml
Suorita ja testaa Jami
flatpak run net.jami.Jami
Suorita linter
Seuraavat komennot on suoritettava, jos YAML-tiedostoihin tehdään muutoksia. Jos näet virheitä, ne on korjattava ennen lähettämistä, eli pull-pyynnön avaamista. Muuten lähetetty Flathub-testiversio epäonnistuuu.
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
Linter-virheiden luettelo löytyy täältä.
Siirrä muutokset ja avaa pull request
Jos koonti onnistui ja läpäisi linter-tarkistukset, muutokset voidaan pushata GitHub-repositorioon ja pull request voidaan avata. Kun pull request on avattu, Flathubin automaattinen koontijärjestelmä luo testikoonnit x86_64- ja aarch64-arkkitehtuureille. Jos testikoonnit onnistuvat, pull request voidaan mergetä master-haaraan, mikä käynnistää viralliset koonnit.
Muista
Mikäli tiedoston net.jami.Jami.yml finish-args-osioon tai tiedostoon net.jami.Jami.metainfo.xml tehdään muutoksia, ne vaativat Flathubin ylläpitäjien hyväksynnän. Muutoksista riippuen koonti saatetaan hylätä, tai se voi vaatia selityksen tai perustelun. Jälkimmäisessä tapauksessa GitHub-repositoriooon avataan issue ongelmaraportti muutosten selittämistä tai perustelemista varten.
Näet hyväksynnän tilan kirjautumalla sisään Flathub ja siirtymällä kohtaan Developer Portal → Jami.