Ensure flatpak SELinux module is installed during build
ci/woodpecker/push/ci Pipeline was canceled

This commit is contained in:
qpismont committed 2026-11-01 21:44:44 +01:00
1 parent 4f7d9d3114
commit d44912b967
1 file changed
+11 -8
+11 -8
View File
@@ -71,14 +71,17 @@ RUN wget https://cdn.filen.io/@filen/desktop/release/latest/Filen_linux_x86_64.r
&& dnf clean all \
&& rm -f /tmp/filen.rpm
#Reconstruit la politique SELinux compilee depuis le store de modules (sans charger
#dans le noyau) : sans ca, les modules installes par les paquets (ex: flatpak ->
#flatpak_helper_exec_t) peuvent manquer et laisser des binaires en "unlabeled_t".
#Meilleur effort : sur certains environnements de build (buildah rootful/overlay),
#libsemanage echoue avec "File exists" sur son sandbox.
RUN rm -rf /etc/selinux/targeted/tmp \
&& semodule -n -B \
|| { echo "AVERTISSEMENT: politique SELinux non recompilee dans ce build"; ls -la /etc/selinux/targeted; true; }
#SELinux : dans certains environnements de build (buildah rootful/overlay), les
#transactions semodule des scriptlets rpm echouent (sandbox /etc/selinux/targeted/tmp)
#et le module flatpak n'arrive jamais dans le store -> le helper reste unlabeled_t.
#On (re)installe explicitement le module puis on recompile la politique, en
#meilleur effort pour ne pas casser le build.
RUN rm -rf /etc/selinux/targeted/tmp; \
semodule -i /usr/share/selinux/packages/flatpak.pp.bz2 \
|| echo "AVERTISSEMENT: module SELinux flatpak non installe"; \
semodule -n -B \
|| { echo "AVERTISSEMENT: politique SELinux non recompilee dans ce build"; ls -la /etc/selinux/targeted; }; \
true
#Relabelle /usr depuis les file_contexts du store : rpm peut installer un binaire
#(flatpak-system-helper) avant que le module SELinux de son paquet ne soit pris en