GNU/Linux >> Tutoriels Linux >  >> Linux

Pourquoi les différentes distributions Linux ont-elles besoin de patcher les packages ?

Il a fallu quelques essais, mais je pense que je comprends ce que vous demandez maintenant.

Il existe plusieurs raisons possibles pour une distribution de patcher un logiciel donné avant le conditionnement. Je vais essayer de donner une liste non exclusive; Je suis sûr qu'il y a d'autres raisons possibles.

Aux fins de cette discussion, "en amont" fait référence au code source original des développeurs officiels du logiciel

  1. Les correctifs qui en amont n'ont pas (ou pas encore) été incorporés dans leur branche principale pour une ou plusieurs raisons. Généralement parce que le responsable du paquet de la distribution pour ce paquet pense que lesdits correctifs sont utiles, ou parce qu'ils sont nécessaires pour maintenir la continuité dans la distribution (supposez que vous avez un serveur Web et après une mise à jour de routine vers php plusieurs fonctions sur lesquelles vous comptiez ne fonctionnent plus, ou il est incapable de lire un fichier de configuration de l'ancien style)

  2. Les distributions ont tendance à aimer les modèles standardisés pour leur hiérarchie de système de fichiers dans /etc/; chaque développeur de logiciels peut ou non avoir ses propres idées sur ce qui constitue des normes appropriées. Par conséquent, l'une des premières choses qu'un mainteneur de paquet de distribution a tendance à faire est de corriger les scripts de construction pour configurer et attendre lesdits fichiers de configuration dans un modèle hiérarchique qui correspond au reste de la distribution.

  3. Poursuivant sur le sujet de la configuration, l'un des premiers "correctifs" tend à être un ensemble de fichiers de configuration par défaut qui fonctionnera avec le reste de la distribution "prêt à l'emploi" pour ainsi dire, permettant à l'utilisateur final de démarrer immédiatement après l'installation plutôt que d'avoir à trier manuellement une configuration de travail.

C'est juste au-dessus de ma tête. Il peut très bien y en avoir d'autres, mais j'espère que cela vous donne une idée.


Du haut de ma tête, en plus de la réponse de @Shadur :

  • Certaines distributions déconseillent l'utilisation de bibliothèques d'intégration ou de fichiers fournis par un autre package. Par exemple, de nombreux logiciels contiennent JQuery intégré, mais Debian dispose d'un package libjs-jquery qui le fournit.
  • Souvent, l'amont mélange les correctifs de sécurité et les modifications rétrocompatibles, par ex. dépend des bibliothèques les plus récentes. Pour éviter des changements importants à l'ensemble de la distribution juste pour obtenir, disons, une vérification plus correcte des certificats, le responsable du paquet peut choisir de simplement choisir les correctifs de sécurité.
  • Les logiciels en amont peuvent entrer en conflit avec d'autres logiciels, par exemple ils peuvent fournir un fichier avec le même chemin, mais un contenu différent. Pour résoudre ce conflit, un correctif peut être nécessaire pour rechercher le fichier ailleurs.
  • L'amont se contente souvent d'instructions pour ajouter manuellement quelque chose à un autre fichier de configuration de logiciel, qui est sujet aux erreurs lors de l'installation et de la désinstallation de packages, de sorte que la distribution peut préférer utiliser des fichiers fragmentés dans un répertoire *.d.
  • Certaines parties de l'amont peuvent être incompatibles avec la licence de la distribution, de sorte que le responsable du paquet peut décider de corriger les parties problématiques.
  • L'amont utilise des chemins avec l'hypothèse d'un autre logiciel spécifique (par exemple, Apache), mais le responsable souhaite qu'il prenne en charge un serveur Web générique.
  • Parfois, le développeur en amont ne communique plus et les bitrots du logiciel, un correctif est donc nécessaire pour le faire fonctionner.

Il y a plusieurs raisons :

  1. Le logiciel parfait n'existe pas
  2. Il n'existe pas de logiciel de packaging universel sous Linux :

    • apt
    • miam
    • pacman
    • ...
  3. À cause du forking

  4. En raison des différentes interprétations de la Bible FHS
  5. À cause de l'ego

Linux
  1. Pourquoi les programmeurs aiment les packages Linux

  2. Antivirus sur Linux :dois-je vraiment l'utiliser et si oui, quand en ai-je besoin ?

  3. Différentes façons d'installer un logiciel sur Ubuntu Linux

  4. Différentes distributions Linux partageant le même dossier /home ?

  5. Quand setsid() est-il utile ou pourquoi devons-nous regrouper les processus sous Linux ?

Pourquoi ne pas installer des progiciels à partir d'Internet

Comment installer VirtualBox dans différentes distributions Linux

Premiers pas avec les commandes Pacman dans les distributions Linux basées sur Arch

6 distributions Linux à usage éducatif

BCRYPT - Pourquoi les distributions Linux ne l'utilisent-elles pas par défaut ?

Pourquoi les distributions Linux ne montent-elles pas par défaut tmpfs avec des inodes infinis ?