Sommaire

emblem-notice-24.pngDernière mise à jour : 15/02/2024

emblem-question-24.pngLien avec mon activité professionnelle ?

Il n'y a aucun lien entre le contenu du dépôt ou du blog et mon employeur actuel, bien que mon activité principale soit désormais le packaging de PHP, ce qui me permet de contribuer plus activement aux projets.

Les opinions exprimées ici, sont les miennes et n'implique aucunement quelconque communauté, projet ou entreprise (Fedora, PHP, Red Hat, CentOS, ...).

emblem-question-24.pngQuels sont les objectifs de ce dépôt ?

Fournir les dernières versions de la pile PHP, aussi complète que possible, et de quelques autres logiciels, aux utilisateurs de Fedora et d'Enterprise Linux (RHEL, CentOS, Oracle, Scientific Linux, ...). Il contient principalement :

  • des paquets que je maintiens aussi dans Fedora
  • des rĂ©tro-portage des paquets disponibles dans la version de dĂ©veloppement de Fedora
  • quelques paquets incompatible avec les choix de Fedora
  • quelques paquets en cours de prĂ©paration pour les dĂ©pĂ´ts Fedora
  • des versions vanilla (ou presque)

Ce qui est donc très éloigné de la stratégie de rétro-portage des correctifs d'Enterprise Linux.

emblem-question-24.pngOĂą poser des questions ? Comment contacter Remi ?

Les commentaires du blog ne sont pas du tout adaptés. Les forum sont là pour toute demande, assistance, question.

Vous pouvez aussi venir discuter sur IRC #remirepo (Libera.chat). Vous pouvez même utiliser l'accès webchat.

emblem-question-24.pngComment encourager Remi ?

Il existe de nombreuses possibilités, par exemple :

  • Un petit commentaire sur la page "Merci / Thanks",
  • Utiliser le dĂ©pĂ´t et les forums pour rapporter vos utilisations,
  • Parler du dĂ©pĂ´t sur votre blog,
  • Utiliser le bouton "Donate" (en haut Ă  droite, si vous l'avez ratĂ©) ce qui permet de financer ma prochaine machine, mon hĂ©bergement, mon accès internet et quelques autres petits plaisir.

emblem-question-24.pngComment utiliser le dépôt ?

Il me semble que tout est expliqué dans la page Configuration du dépôt.

Le plus simple Ă©tant de suivre les instructions de l'assistant de configuration.

emblem-question-24.pngCorrectifs de sécurité pour les anciennes versions ?

Les versions de PHP <= 8.0 ont atteint leur fin de vie et ne sont plus maintenues par le projet PHP.

Il est donc vivement recommandé d'utiliser une version maintenue.

Cependant, les vulnérabilités de sécurité sont corrigées, voir le dépôt de rétro-portage, et sont disponibles dans les dernières mises à jour de PHP 5.6 à 8.0. Ces paquets sont fournis pour les applications hérités et dépréciés (dette technique).

emblem-question-24.pngComment sont découpés les dépôts ?

Il y a 3 dépôts:

  • Le dĂ©pĂ´t remi-safe, activĂ© par dĂ©faut.
    Il est vraiment sûr car ne replace aucun paquet officiels).
    Il fournit les dépendances communes et les SCL, conçues pour l'installation en parallèle de plusieurs versions.
  • Le dĂ©pĂ´t remi-modular, activĂ© par dĂ©faut.
    Il peut remplcer des paquets officiels quand un module est explicitement activé par l'administrateur.
    Il fournit les differentes versions de PHP et quelques autres modules.
  • Le dĂ©pĂ´t remi, dĂ©sactivĂ© par dĂ©faut.
    Il peut remplacer des paquets, principalement venant d'EPEL.
    Il fournit notament quelques applications PHP (paquets noarch, ex : phpunit*, phpMyAdmin...)

emblem-question-24.pngComment me tenir informé des nouveautés ?

D'abord en lisant ce blog, chaque nouvelle version importante fait l'objet d'un billet, les versions mineures d'un commentaire. Ensuite, chaque dépôt dispose d'un flux RSS, ex pour el9.x86_64.

En suivant Remi's RPM Repository sur BlueSky.

emblem-question-24.pngVersion disponible avec son annonce officielle ?

Le processus de publication des nouvelles versions de PHP prévoit

  • crĂ©ation du tag le mardi midi, voir les tags sur le dĂ©pĂ´t git officiel
  • 2 jours de dĂ©lai pour permettre de construire les binaires et dĂ©tecter les problèmes tardifs (principalement par Microsoft et moi), voir PHP for Windows
  • annonce de la version le jeudi midi

Les paquets sont donc construit dès que possible, ils doivent considérés comme des paquets de test jusqu'à l'annonce officielle (il peut arrviver qu'un changement de dernière minute nécessite une nouvelle compilation).

Ce temps permet aussi de s'assurer que la nouvelle version soit disponible sur tous les mirroirs lors de l'annonce officielle. De plus, lors des mise à jour de sécurité, la mise à disposition rapide est nécessaire car les vulnérabilité sont publiques sur le dépôt git.

emblem-question-24.pngPuis-je synchroniser un miroir local du dépôt remi ?

Oui : vous pouvez utiliser rsync, pour cela, consultez la listes des miroirs et cherchez pour un proche de votre position ayant l'indication rsync.

L'accès au serveur principal est réservé aux miroirs officiels.

Les utilisateurs de Satellite doivent utiliser l'option "Complete Mirroring".

Les utilisateurs de reposync doivent utiliser l'option --download-metadata.

Utiliser un aspirateur (wget/ftp/curl récursif) sur le miroir primaire est une mauvaise pratique à décourager.

emblem-question-24.pngPuis-je mettre à jour Fedora avec le dépôt remi activé ?

Oui, en utilisant l'outil dnf system-upgrade, et avec quelques précautions :

  • Mise Ă  jour vers Fedora 40
    • importer la nouvelle clĂ© avant la mise Ă  jour (i.e. /etc/pki/rpm-gpg/RPM-GPG-KEY-remi2024)
  • Mise Ă  jour vers Fedora 41
    • importer la nouvelle clĂ© avant la mise Ă  jour (i.e. /etc/pki/rpm-gpg/RPM-GPG-KEY-remi2024)
    • les modules activĂ©s avant la migration doivent ĂŞtre rĂ©activĂ©s avec le nouveau dnf

emblem-question-24.pngPourquoi remplacer les paquets standards ?

Certains dépôts ont choisi de ne pas remplacer les paquets standards, mais de fournir des paquets avec des noms différents (cf The SafeRepo Initiative).

  • lors de l'ouverture de mon dĂ©pĂ´t, en 2005, cette idĂ©e n'existait pas (Red Hat fournissait alors les versions rĂ©centes dans un channel dĂ©diĂ© : RHWAS)
  • je pense qu'avoir un nom diffĂ©rent a du sens uniquement lorsqu'on peut installer les 2 en parallèle. C'est d'ailleurs le cas pour les bibliothèques (paquets *last) et les SCL. Les conflits c'est mal.
  • le remplacement reste un choix volontaire de l'administrateur puisque le dĂ©pĂ´t n'est pas activĂ© par dĂ©faut
  • les directives de yum includepkgs et exclude permettent de rĂ©gler finement ce qu'on souhaite utiliser.
  • avoir plusieurs paquets fournissant la mĂŞme dĂ©pendance (ex php-zip fournit par php-common, php53-common, php-pecl-zip...) est juste un cauchemar pour yum et cause de nombreux problèmes (un exemple).
  • le dĂ©pĂ´t remi ne fournit pas juste PHP et quelques extensions, mais une pile très complète (plus de 500 paquets), la plupart fonctionnant avec "toutes" les versions disponibles
  • certains paquets sont crĂ©Ă©s / dĂ©veloppĂ©s dans remi avant d'ĂŞtre importĂ©s dans Fedora / EPEL.

emblem-question-24.pngDifférences entre les paquets php-* et php##-php-* ?

Les paquets php-* sont des paquets standards (version unique / par défaut) :

  • ils remplacent la version par dĂ©faut du système (cela reste un choix de l'administrateur car il faut activer le dĂ©pĂ´t)
  • une seule version peut ĂŞtre installĂ©e
  • un module (php:remi-7.2, php:remi-7.3, php:remi-7.4, php:remi-8.0, php:remi-8.1, php:remi-8.2, php:remi-8.3 and php:remi-8.4) par version.
  • les paquest fournissent la version NTS et ZTS (Thread Safe)

Les paquets php56-php-*, php70-php-*, php71-php-*, php72-php-*, php73-php-*, php74-php-*, php80-php-*, php81-php-*, php82-php-*, php84-php-* et php83-php-* sont des Softwares Collections (versions multiples) :

  • ils s'installent Ă  cĂ´tĂ© de la version par dĂ©faut du système (dans /opt/remi)
  • plusieurs versions peuvent ĂŞtre installĂ©e simultanĂ©ment
  • toutes les versions sont dans le dĂ©pĂ´t remi-safe
  • les paquest fournissent uniquement la version NTS
  • si une seule version est utilisĂ©e, le paquet php*-syspaths permet d'avoir les chemins habituels (/usr/bin/php)

A noter : certains autres dépôts on choisi d'avoir des noms différents (php56u, php70w), mais qui crée des conflits. Pour moi, un nom différent n'a du sens que s'il permet une installation en parallèle de la version standard.

emblem-question-24.pngPeut-on utiliser le dépôt uniquement pour les Softwares Collections ?

Oui : pour Fedora il suffit d'ajouter une ligne configuration dans le fichier remi.repo

includepkgs=php8*

Pour Enterprise Linux: les SCL php56, php70, php71, php72, php73, php74, php80, php81, php82, php83 et php84 sont  dans le dĂ©pĂ´i remi-safe, donc aucune modification n'est nĂ©cessaire.

emblem-question-24.pngDĂ©pendances manquantes

Les dépendances sont toutes dans les dépôts standard et pour Fedora dans RPMFusion et pour Enterprise Linux dans EPEL.

Les dépendances communes aux dépôts remi-php** sont dans le dépôt remi-safe, activé par défaut (s'agissant d'une nouveauté, merci de signaler tout oubli).

Les RPM pour Enterprise Linux sont construits avec les distributions  RHEL-8.10, RHEL-9.5 et RHEL-10.0-beta. Certains paquets peuvent manquer dans les versions plus anciennes (p.e. openssl 3.2). En rĂ©sumĂ©: les anciennes versions ne sont pas supportĂ©es.

Pour Enterprise Linux le depôt codeready-builder / CRB / PowerTools est nécessaire.

Certains paquets "noarch" dans le dépôt "remi" (ex phpMyAdmin 5) nécessitent désormais php(language) >= 8.1. Les versions de PHP <= 8.0 ayant atteint leur "Fin de vie", si vous désirez utiliser ces applications vous devez donc mettre à jour en activant le dépôt "remi-php74" ou supérieur, et ainsi utiliser une version supportée de PHP.

emblem-question-24.pngAucun paquet trouvé ?

Soit le dépôt n'est pas correctement activé, soit les paquets du dépôt de base sont protégés par le plugin priorities. Dans ce cas il faut soit désactiver le plugin (--noplugins ou --disableplugin=priorities), soit configurer le dépôt pour être prioritaire.

emblem-question-24.pngConflits entre paquets i386 et x86_64 ?

Ce n'est pas directement lié au dépôt remi, mais il s'agit plutôt d'un bug connu de l'installeur des vieilles versions de fedora et de EL-5. Bug car il est corrigé dans les nouvelles versions. Ce bug provoque l'installation des bibliothèques en version 32 et 64 bits. Pour moi, le plus simple et le nettoyage complet des versions 32 bits après l'installation d'un système 64 bits

yum remove glibc.i686

emblem-question-24.pngPuis-je récupérer un vieux paquet ?

Rappel : l'objectif du dépôt est de fournir les dernières versions afin, notamment, de bénéficier des améliorations et des correctifs, en particulier de sécurité.

Oui, c'est possible, il suffit de le demander sur le forum en précisant bien la distribution, la version, et l'architecture. Comme cela nécessite une recherche dans mes archives "hors-ligne", il faut être patient.

emblem-question-24.pngDisponibilité des debuginfo ?

Ils sont dans le dépôt pour les paquets construits à compter de Janvier 2013.

emblem-question-24.pngFirefox, Thunderbird, etc pour EL ?

Les applications graphiques, sont uniquement disponibles pour fedora que je considère comme le meilleur choix pour un poste de travail. Pour moi, Enterprise Linux, est avant tout un système pour les serveurs.

Cependant, désormais elles aussi sont disponibles pour EL-6 (la dernière version).

Par manque de temps, j'ai suspendu leur maintenance.