Quelle est la différence entre les paquets deb et les boules de goudron? Quels sont les avantages / inconvénients de chacun?

9

Je ne connais pas les boules de goudron. La plupart des packages sont disponibles sous forme de tar tar mais les packages Ubuntu sont des packages Debian.

Quelle est la différence entre les paquets deb et les boules de goudron?

Quels sont les avantages / inconvénients de chacun?

siraj
la source

Réponses:

7

Les boules de goudron sont généralement du code source que vous devez compiler. Les Debs sont des programmes précompilés, déjà construits et configurés pour Ubuntu / Debian.

Je suggère fortement d'utiliser debs lorsqu'ils sont disponibles, car ils sont plus faciles et s'intègrent au gestionnaire de paquets, vous pouvez donc facilement les désinstaller.

Debs installera également toutes les dépendances nécessaires. L'installation à partir de la source peut conduire à ce que l'on appelle affectueusement "l'enfer de la dépendance". La plupart des programmes open source dépendent de plusieurs autres programmes / bibliothèques pour fonctionner. Lors de l'installation à partir de la source, il ne les installera pas et se plaindra (espérons-le) qu'une dépendance n'est pas satisfaite. Vous essayez ensuite d'installer cette dépendance, puis elle explose, nécessitant une autre dépendance, etc., etc.

L'installation à partir de la source peut également placer vos fichiers dans des endroits inattendus, car différentes distributions présentent des choses légèrement différentes.

Lorsque j'ai besoin d'installer un programme, j'essaie mes options dans cet ordre:

  1. Regardez dans le Centre logiciel. C'est évidemment le plus simple, bien que le Centre logiciel ne soit pas tout compris et ne soit pas à jour avec les dernières versions.

  2. Essayez de trouver un référentiel qui le fournit. L'ajout d'un référentiel fera apparaître le programme dans le Centre logiciel, recevra des mises à jour en temps opportun, etc.

  3. Recherchez un package .deb.

  4. Installer à partir de la source (boule de goudron).

reverendj1
la source
6

les boules de goudron ne sont qu'une autre forme de compression comme le zip. Bien que les formats et les techniques de compression diffèrent, il s'agit essentiellement d'un conteneur pour un groupe de fichiers et de dossiers.

Habituellement, le code source et les fichiers nécessaires seront mis à disposition sur Internet par la personne / le groupe qui a écrit le logiciel sous la forme d'une boule de tar. Vous pouvez donc le télécharger, le décompresser, compiler le logiciel et l'installer.

Cependant, ce que font les paquets deb, c'est de vous faciliter la tâche en installant un standard. Les logiciels disponibles sur Internet seront pris par les mainteneurs de paquets Debian, transformés en leurs paquets .deb correspondants et mis dans le référentiel Debian.

entrez la description de l'image ici

Vous pouvez en lire plus sur le blog d'un mainteneur de paquet Debian ici: http://www.j4v4m4n.in/2012/05/01/debian-utsavam-at-mes-kuttippuram-kerala-2/

En ce qui concerne les avantages et les inconvénients, les packages .deb sont gérés par des gestionnaires de packages tels que apt et aptitude. Ainsi, chaque fois que vous installez un logiciel avec celui-ci, ils détermineront automatiquement si vous disposez des dépendances requises pour exécuter ce logiciel sur votre système et les installeront pour vous.

Mais si vous utilisez une installation tar ball, vous devrez déterminer de quoi dépend ce logiciel et à chaque fois vous devrez vérifier manuellement si les dépendances du logiciel que vous installez étaient déjà installées précédemment.

Mais apt fait tout cela pour vous.

De plus, l'installation à partir de la source (installation à partir de boules de goudron) aura différentes méthodes pour différents logiciels. Il existe la philosophie GNU de l'installation de configure-make-make et il existe d'autres méthodes selon la façon dont le logiciel est écrit.

Cependant, leur conversion en deb supprime complètement toutes ces différences et facilite l'installation et l'utilisation du logiciel par l'utilisateur.

Un dernier point. Quand devez-vous installer depuis la source? Ça vient d'une balle de goudron? Il y a essentiellement deux situations.

  1. Si l'équipe de mise au point de Debian n'a pas encore empaqueté de logiciel.
  2. Si vous souhaitez contribuer au projet. Cela signifie que vous pouvez apporter des modifications au code source, le compiler et tester les modifications.

Si vous souhaitez en savoir plus sur le packaging Debian, vous pouvez le lire ici: http://www.debian.org/doc/manuals/maint-guide/

J'espère que cela t'aides.

harisibrahimkv
la source
1

Les packages Debian (et donc Ubuntu) sont une collection de binaires et des instructions associées pour leur installation. Cela signifie que le package lui-même sait comment et où installer, et il connaît également la liste des packages dont il dépend.

Les tarballs source (fichiers avec extension .tar.gzou .tar.bz2- ou même .tgz ou .tbz2 ) sont simplement des ensembles de fichiers et de répertoires qui ont été regroupés avec l' tarutilitaire et également compressés avec ou gzipou bzip2. Pour construire le code source, vous devez:

  1. décompressez les fichiers avec tar xvfz file.tar.gzou tar xvfj file.tar.bz2(dans un répertoire vide)
  2. configurer le package avec ./configure(le package teste le système pour voir si tout va bien avant de commencer la compilation)
  3. démarrer la compilation avec make
  4. si vous le souhaitez, exécutez make installpour installer l'application à sa localisation "par défaut" (généralement dans / usr / {s} bin ou / usr / local / {s} bin mais cela dépend de l'application et de la distribution)

Les principaux avantages des paquets Debian / Ubuntu par rapport aux fichiers tar source sont que les paquets sont "autonomes" et leurs binaires sont suivis. Cela signifie que le processus de décompression est transparent pour l'utilisateur qui ne voit (grosso modo) qu'un seul package par application. L'utilisateur n'a même pas besoin de se rappeler quels fichiers une application donnée a installés et où, donc l'installation / suppression d'applications devient (principalement) un processus d'instruction unique.

Les principaux avantages des tarballs source par rapport aux packages binaires sont que dans le premier cas le code source est compilé directement sur la machine cible et peut ensuite être optimisé en conséquence. De plus, même le meilleur système de packages peut tomber en panne dans certains cas (par exemple, les packages logiciels trop récents ou trop anciens) et les packages officiels sont généralement purgés par les serveurs lorsqu'ils deviennent trop anciens. Dans ces cas, il faut rechercher manuellement sur Internet l'application souhaitée et les bibliothèques spécifiques à des versions spécifiques pour satisfaire toutes ses dépendances.

Avio
la source
1
Un petit point. Les étapes "configurer, faire, faire installer" sont pour les logiciels qui utilisent la philosophie de construction GNU automake. Il existe des logiciels qui peuvent être construits à partir de la source (à partir de boules de goudron) de différentes manières. Donc, il pourrait ne pas être correct de dire "Pour construire la source, configurez, faites, installez". La meilleure façon de le dire pourrait être: "Pour installer à partir de la source, lisez le fichier README ou INSTALL dans la source et suivez les étapes qui y sont mentionnées. Référez-vous à ceci: sosaysharis.wordpress.com/2011/11/28/…
harisibrahimkv
Oui, je viens de parler de ce type de méthode car elle est adoptée par la grande majorité des tarballs sources.
Avio
Pas de débat là-bas. :)
harisibrahimkv
1

Je peux voir de très bonnes réponses déjà publiées. Mais il y a quelques points à régler.

Contrairement à ce que l'on appelle "l'enfer des dépendances" en ce qui concerne la compilation à partir des sources, vous pouvez réellement configurer Ubuntu de telle sorte qu'il installe automatiquement ces dépendances lorsque vous compilez à partir d'une archive tar / n'importe quelle source.

Découvrez comment procéder ici:

http://www.howtogeek.com/106526/how-to-resolve-dependencies- while-compiling-software-on-ubuntu/

De plus, si vous gardez ce problème de dépendance de côté, la bonne chose à propos des tarballs est que vous pouvez configurer beaucoup de choses liées à l'installation comme où installer, etc., très facilement en cas d'installation à partir de la source.

De plus, le mot «paquets Debian» pourrait vous confondre dans ce contexte. N'oubliez pas que les paquets Debian sont de deux types, comme il est dit ici:

http://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics.fr.html

Bien sûr, si vous ne parlez que de fichiers deb, ce sont généralement ces logiciels compilés comme les réponses ci-dessus ont déjà été dites.

Bharadwaj Srigiriraju
la source