Desenvolupament de programari de KDE
Hi ha tres opcions, depenent de com es distribueixi el programari al KDE Linux:
- Desenvolupament de programari KDE que es distribueix a la imatge base
- Desenvolupament de programari KDE que es pot construir fent servir Flatpak
- Desenvolupament de qualsevol programari KDE utilitzant Distrobox
Construcció de programari KDE que es distribueix a la imatge base
Aquest flux de treball s'utilitza per al desenvolupament de programari KDE que es distribueix al sistema base, o fins i tot a les Qt. Aquí es pot trobar una llista d'aquest programari (cal tenir en compte que «workspace» inclou el Plasma, KWin i les aplicacions alineades amb el Plasma, com ara l'Arranjament del sistema i el Discover).
La millor manera de fer-ho és utilitzant systemd-sysext, que permet superposar contingut construït a partir del codi font a sobre de /usr/ sense afectar el sistema base.
Configuració
Executeu l'script de configuració:
set-up-system-development
Ús
En poques paraules, compilareu i instal·lareu programari utilitzant kde-builder, després actualitzeu l'extensió del systemd i, finalment, reinicieu qualsevol servei que hàgiu canviat (p. ex. Plasma), o tot el sistema.
Per exemple, per a compilar i provar un canvi a plasma-pa, feu el següent:
kde-builder plasma-pa sudo systemd-sysext refresh --always-refresh=yes systemctl restart --user plasma-plasmashell.service
Si substituïu un component del sistema central i trobeu que tot està fallant després d'aplicar l'actualització, proveu de reiniciar per tal de tornar a carregar completament la dependència nova en tot el programari en execució.
Quan hàgiu acabat de desenvolupar o provar el canvi, desactiveu («un-merge») l'extensió del sistema:
sudo systemd-sysext unmerge
Quan hàgiu acabat amb el vostre programari construït a partir del codi font (p. ex. perquè s'ha acceptat com a pedaç i s'ha fusionat), suprimiu els fitxers instal·lats:
rm -r ~/kde/usr/* # Quan se us demani que suprimiu el fitxer extension-release.kde de només lectura, responeu «n»
Construcció d'aplicació KDE amb un manifest Flatpak
Per a desenvolupar o provar canvis en el propi codi de l'aplicació, construïu l'aplicació utilitzant flatpak-builder, de manera que el resultat sigui funcionalment idèntic a la construcció nocturna Flatpak de l'aplicació.
Per a desenvolupar o provar canvis en un Framework de KDE o una altra biblioteca utilitzada per diverses aplicacions, l'únic enfocament relativament indolor en aquest moment és utilitzar kde-builder per a construir-ho. Vegeu Desenvolupament de programari KDE que es distribueix a la imatge base.
Configuració
flatpak-builder instal·larà paquets flatpak des del flathub-apps-built-locally remot. Aquest remot és la botiga Flathub oficial.
flatpak remote-add --user --if-not-exists flathub-apps-built-locally https://flathub.org/repo/flathub.flatpakrepo
Feu els canvis a l'aplicació
Primer consulteu el codi font de l'aplicació KDE que voleu construir. Per exemple, aquí amb el Filelight:
# Crea una carpeta per a mantenir el codi font de KDE. Es pot saltar si ja existeix mkdir -p ~/kde/src/ # Entra dins aquesta carpeta cd ~/kde/src/ # Baixa el codi font del Filelight git clone git@invent.kde.org:utilities/filelight.git # Entra dins la carpeta de codi font del Filelight cd ~/kde/src/filelight # Construeix el Filelight com un flatpak flatpak-builder build --user --install-deps-from=flathub-apps-built-locally --force-clean --ccache --install .flatpak-manifest.json
flatpak-builder crearà un repositori flatpak i un remot anomenat filelight-origin i exportarà el flatpak del Filelight acabat de construir a aquest repositori flatpak.
Ara executeu-lo:
org.kde.filelight
Per a més informació, vegeu:
- https://docs.flatpak.org/en/latest/getting-started.html
- https://develop.kde.org/docs/packaging/flatpak/packaging/
Construïu qualsevol programari de KDE, utilitzant el KDE Builder a Distrobox
Si necessiteu treballar en programari de KDE que no estigui preinstal·lat al sistema base (de manera que les dependències tampoc estan preinstal·lades) i que tampoc no es pugui construir com a Flatpak, podeu construir-lo amb el kde-builder en un Distrobox:
# Segons https://develop.kde.org/docs/getting-started/building/containers-distrobox
distrobox create --image docker.io/archlinux --name kdebuildercontainer --home ~/kdebuildercontainer_home
distrobox enter kdebuildercontainer
sudo pacman -Syu
sudo pacman -S nano
echo 'export PATH="$HOME/.local/bin:$PATH"' | tee --append ~/.{bash,zsh}rc
exit
distrobox enter kdebuildercontainer
# Instal·leu el kde-builder com de costum. https://develop.kde.org/docs/getting-started/building/kde-builder-setup
Article escrit per Nate Graham d'acord amb la llicència CC-BY-4.0.