10
votes

Distribuer des applications binaires à travers les distributions Linux

J'ai écrit une application qui, pourtant, n'est pas ouverte et que je souhaite distribuer l'exécutable à travers diverses distributions Linux. Quelle est la meilleure façon de le faire, j'ai regardé un peu à l'emballage de .rpm et .deb, mais je ne trouve pas que cela peut être utilisé pour les binaires ou non. Idéalement, j'aimerais quelque chose comme le packagemaker sur OS X ou un installateur régulier sous Windows qui l'aura automatiquement copier dans / usr / bin. Est-ce ce que les packages .RPM et .deb sont pour ou dois-je faire pencher un script shell qui le fera automatiquement?


0 commentaires

5 Réponses :


0
votes

Le RPM et Deb stockeront les fichiers binaires. Vous aurez besoin d'avoir des fichiers binaires différents pour chaque distribution ou variante de distribution le plus probable, juste parce que sur différentes distributions, les choses sont différentes comme des chemins.

Je recommande de commencer par les deux que vous avez rpm et deb et ongles ces deux distributions. Ensuite, peut-être que la Tarball pour DIG Distro est que des personnes peuvent extraire et répertoire structurer et copier et gérer les autorisations par elles-mêmes.

Aussi, pour des choses comme Deb, vous pouvez configurer un site en tant que référentiel. Cela permet aux gens d'ajouter le repo et d'obtenir / installer le Deb à Ubuntu très facilement. Un grand nombre de devs de source fermée tiers font cela.


0 commentaires

0
votes

C'est ce que les fichiers .RPM et .deb font, mais vous devez être sûr que la distribution Installee a la possibilité de gérer les fichiers .RPM et .deb. Si vous voulez quelque chose qui est sûr de fonctionner à plusieurs distributions, où vous ne pouvez pas être sûr qu'ils auront le bon gestionnaire de paquets, vous devez donc avoir lieu à la méthode du script Shell. Je conseillerais, si vous pouvez vous en tirer, construire votre binaire pour .rpm et .deb - de cette façon, vous obtenez la plupart des distributions couvertes et que vous autorisez les utilisateurs à installer d'une manière Ils sont confortables et familiarisés et vous n'avez pas besoin d'essayer de rouler vos propres scripts d'installateur / de désinstallation.


0 commentaires

7
votes

Les packages RPM et Deb sont les deux mécanismes principaux de la distribution de packages binaires sous Linux. RPM est utilisé par Redhat et ses dérivés (Fedora, Centos), tandis que Deb est utilisé à Debian et Ubuntu.

Les fichiers .RPM et .deb eux-mêmes sont généralement des archives "muettes" et sont installées dans les emplacements corrects du système de fichiers par des applications d'assistance pré-installées. Vous n'avez pas à vous soucier de l'écriture de scripts pour installer des fichiers, à moins que ce ne soit une application très compliquée qui nécessite une configuration par système spéciale.

Les modèles habituels que je vois pour la distribution des fichiers binaires sont les suivants:

  • Relâchez une citacle compressée (.tar.gz ou .tar.bz2), et laissez les emballages de distribution s'inquiéter des détails. Cela fonctionne bien pour les applications populaires, mais si elle est récemment publiée, personne ne s'en souciera de votre application pour l'emballer.
  • Libération en tant que Tarball, plus des packages RPM et / ou Deb (selon les besoins des clients). Les clients ayant une distribution prise en charge peuvent installer le package pré-effectué. Toute personne qui utilise une distribution inhabituelle est probablement heureuse d'installer de toute façon une table d'archives.

1 commentaires

Notez également que vous devrez spécifiquement gérer différentes versions RPM / Deb pour des ordinateurs 64 bits et / ou plus de processeurs exotiques, si vous souhaitez que l'application s'exécute sur elles.



0
votes

Vous devriez probablement fournir un package natif pour chaque distribution Linux que vous prenez officiellement soutenir (lorsque vous les appuierez officiellement, vous les testerez, ce que cela devrait être trivial) et fournir un .tar.gz que les gens peuvent déposez-vous pour d'autres.

Les utilisateurs peuvent toujours faire leur propre .rpm, etc. pour une distribution extraterrestre que vous ne supportez pas; Mais ils ne peuvent pas vous plaindre à moins que cela ne fonctionne pas sur un système d'exploitation officiellement pris en charge.

Quel OSSS soutiens-tu officiellement? Vous aurez évidemment besoin de les tester tout (à tout le moins, vous aurez besoin de transmettre toute votre suite de tests de régression sur chaque système d'exploitation sur chaque version).

Ceci est bien sûr compliqué si vous prenez en charge plusieurs architectures.


0 commentaires

1
votes

Mojosetup est une solution conviviale, parfaitement la solution de transversale et joliment -Licued (zlib, très permissive). Tout ce qu'il faut est la norme sh shell fourni avec n'importe quelle distribution Linux. Il permet également aux raccourcis de bureau facilement en créant des raccourcis de spécifications FreeDesktop.org, qui sont pris en charge par tous les environnements graphiques de Linux (donc vider simplement dans une PNG à différentes résolutions et remplissez les blancs du fichier .desktop).

Les installateurs sont scriptés à l'aide du langage de programmation Lua très simple et il existe plusieurs exames de scripts d'installateur Dans le référentiel mercurial ainsi qu'un long tutoriel. Il y a aussi de nombreuses années pour sauvegarder son développement dans un programme d'installation transversal léger.


0 commentaires