feat(anaconda): add python-crypt_r and ostree dependencies for python 3.13+ compatibility

Add python-crypt_r PKGBUILD to provide the crypt module removed in Python 3.13 (PEP 594), required by pyanaconda/core/users.py for password hashing.

Add python-legacy-cgi for the cgi module also removed in Python 3.13, required by python-requests-ftp imported by pyanaconda/core/util.py.

Add ostree to provide the OSTree-1.0 GI namespace required by pyanaconda/rescue.py for the rpm_ostree payload.

Add libblockdev LVM CLI mode configuration to avoid DBus dependency issues with lvmdbusd unavailable in Arch.

Update setup-aur.sh to include python-crypt_r in the local build order before python-meh.
This commit is contained in:
2026-06-17 18:35:12 +02:00
parent 92bae9e4a6
commit a4e46a4309
5 changed files with 73 additions and 1 deletions
@@ -0,0 +1,16 @@
# FWS — force le plugin LVM de libblockdev en mode CLI (libbd_lvm.so) au lieu
# du mode DBus (libbd_lvm-dbus.so).
#
# POURQUOI : libblockdev 3.x sur Arch charge par défaut la variante LVM qui
# pilote le démon « lvmdbusd » (service DBus com.redhat.lvmdbus1). Or Arch ne
# package PAS lvmdbusd (lvm2 ne livre ni le binaire ni le .service DBus). Quand
# Anaconda/blivet peuple l'arbre des périphériques, blivet appelle
# blockdev.lvm.lvs() → la variante DBus tente d'activer com.redhat.lvmdbus1 →
# GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: name is not activatable
# ce qui FAIT PLANTER Anaconda au démarrage.
#
# La variante CLI (libbd_lvm.so) parle directement aux binaires LVM (lvs, vgs…)
# sans démon → fonctionne sans lvmdbusd. Ce fichier conf.d (numéro élevé → lu
# après 00-default.cfg) force ce choix de façon fiable.
[lvm]
sonames=libbd_lvm.so.3
+9
View File
@@ -108,3 +108,12 @@ winboat-bin
# 'anaconda' tire automatiquement anaconda-widgets + toutes ses dépendances
# (python-blivet, pykickstart, libreport, gtk3, NetworkManager…).
anaconda
# Module 'cgi' (retiré de Python 3.13, PEP 594) requis par python-requests-ftp
# que pyanaconda/core/util.py importe en dur. python-legacy-cgi le réintroduit.
python-legacy-cgi
# Module 'crypt'/'crypt_r' (retiré de Python 3.13, PEP 594) requis par
# pyanaconda/core/users.py (hash des mots de passe). Paquet maison (fws-local).
python-crypt_r
# Namespace GI 'OSTree-1.0' : pyanaconda/rescue.py importe le payload rpm_ostree
# (inconditionnellement, même si FWS utilise liveimg) → fourni par 'ostree'.
ostree