92bae9e4a6
Add Anaconda installer integration to FWS live environment: - Implement Anaconda launcher in .xinitrc with comprehensive error logging and debugging support - Add anaconda and anaconda-widgets packages to baseline and releng ISO configs - Fix anaconda-widgets PKGBUILD: replace gladeui with glib2-devel, disable Glade module - Update anaconda PKGBUILD with improved dependencies and build configuration - Add python-blivet PKGBUILD with detailed dependency documentation Enhance documentation and branding: - Expand AUTHORS.rst to clarify FWS vs archiso authorship and licensing - Update CONTRIBUTING.rst with inbound=outbound licensing policy and DCO requirements - Extend README.md with comprehensive legal basis table and licensing checklist - Remove Arch Linux references from MOTD and update to FWS GitHub project page - Fix fastfetch.sh to avoid read-only variable conflict in zsh - Add xterm to packages for installer debugging All changes maintain GPL-3.0-or-later compliance and improve GPL offer transparency.
73 lines
3.3 KiB
Bash
73 lines
3.3 KiB
Bash
# Maintainer: FWS
|
|
# Dépendance de l'installateur Anaconda (rhinstaller) — couche d'abstraction
|
|
# de gestion du stockage (partitions, LVM, LUKS, RAID).
|
|
#
|
|
# VENDORISÉ depuis l'AUR (python-blivet) avec DEUX modifications FWS :
|
|
#
|
|
# 1. Retrait de 'libselinux' des depends. Arch n'est pas SELinux et blivet
|
|
# importe selinux en try/except (blivet/util.py + flags.py →
|
|
# HAVE_SELINUX/self.selinux = False si absent), donc il fonctionne sans.
|
|
# Ça évite de tirer toute la pile SELinux (libselinux/libsepol) de l'AUR
|
|
# juste pour une fonctionnalité inutile sur FWS.
|
|
#
|
|
# 2. depends COMPLÉTÉS. L'AUR ne déclare QUE 'libblockdev' → sur une vraie ISO
|
|
# blivet crashe à l'import. Il lui faut en plus :
|
|
# - python-libblockdev : l'OVERRIDE GObject-introspection
|
|
# (gi/overrides/BlockDev.py) qui définit les helpers (plugin_specs_from_names)
|
|
# ET les alias d'enum (DMTech.MAP, LoopTech, MDTech…) qu'utilise blivet.
|
|
# SANS lui : « AttributeError: 'gi.repository.BlockDev' object has no
|
|
# attribute 'plugin_specs_from_names' » puis « DMTech has no attribute MAP ».
|
|
# C'est LA pièce maîtresse (les symboles n'existent QUE dans cet override,
|
|
# pas dans le typelib ni l'amont libblockdev).
|
|
# - les 11 sous-paquets plugins libblockdev-* (sur Arch ils sont SÉPARÉS du
|
|
# cœur 'libblockdev') : sinon « failed to load module lvm: libbd_lvm.so.3 ».
|
|
# - libbytesize : fournit le module Python 'bytesize' (blivet/size.py).
|
|
# - python-dasbus : importé en dur (blivet/util.py).
|
|
#
|
|
# Tout le reste (code source) est identique à l'amont.
|
|
_py='python'
|
|
_pkg="blivet"
|
|
pkgname="python-${_pkg}"
|
|
pkgver=3.13.2
|
|
_tag="${_pkg}-${pkgver}"
|
|
pkgrel=4
|
|
pkgdesc="A DBus service and python module for management of the system storage configuration (dépendance Anaconda)"
|
|
arch=('any')
|
|
license=('LGPL-2.1-only')
|
|
depends=(
|
|
'libblockdev'
|
|
# Override GI (gi/overrides/BlockDev.py) : helpers + alias d'enum exigés par
|
|
# blivet. ABSENT du paquet 'libblockdev' → paquet séparé. Pièce maîtresse.
|
|
"${_py}-libblockdev"
|
|
# Plugins libblockdev : sous-paquets SÉPARÉS sur Arch (le cœur 'libblockdev'
|
|
# ne fournit PAS les libbd_*.so.3). blivet les charge à l'import via
|
|
# try_reinit() ; sans eux : « failed to load module lvm: libbd_lvm.so.3 ».
|
|
'libblockdev-lvm' 'libblockdev-btrfs' 'libblockdev-swap' 'libblockdev-loop'
|
|
'libblockdev-crypto' 'libblockdev-mpath' 'libblockdev-dm' 'libblockdev-mdraid'
|
|
'libblockdev-part' 'libblockdev-fs' 'libblockdev-nvme'
|
|
# libbytesize fournit le module Python 'bytesize' (blivet/size.py:
|
|
# « from bytesize import bytesize ») — sinon ModuleNotFoundError.
|
|
'libbytesize'
|
|
'lsof'
|
|
'multipath-tools'
|
|
'parted'
|
|
"${_py}"
|
|
"${_py}-six"
|
|
"${_py}-pyparted"
|
|
"${_py}-pyudev"
|
|
"${_py}-gobject"
|
|
# blivet importe dasbus en dur (blivet/util.py: from dasbus.connection ...).
|
|
"${_py}-dasbus"
|
|
'systemd-libs'
|
|
'util-linux'
|
|
)
|
|
makedepends=("${_py}-setuptools")
|
|
url='https://github.com/storaged-project/blivet'
|
|
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/storaged-project/${_pkg}/archive/${_pkg}-${pkgver}.tar.gz")
|
|
sha512sums=('6142ee7e25416c13d751bffab22ba287895e256611254fb87652f1005d6303df50cb116683552bbbad28b818a515e6a20f7073d313e024996a99b449c29132bf')
|
|
|
|
package() {
|
|
cd "${srcdir}/${_pkg}-${_tag}"
|
|
"${_py}" setup.py install --root="${pkgdir}" --optimize=1
|
|
}
|