Forum Linux.général création d'un installeur pour tout système linux

Posté par . Licence CC by-sa
Tags : aucun
1
26
juin
2015

Bonjour,
Dans le cadre de mon stage, je vais prochainement avoir à faire un installeur pour le logiciel que ma boite développe. Je ne vais bien sur pas vous demander de le faire à ma place, je cherche juste un bon tuto.

L'installateur doit pouvoir tourner sous à peu prêt n'importe quoi (Ubuntu, Debian, Rhel, BSD, Windows, Mac, …). Pour Mac et Windows, je verrais plus tard et sur d'autre forum, c'est pas le plus pressé. La solution n'a pas besoin d'être propre, juste fonctionnelle (et donc être compatible avec les systèmes rpm et deb). Si besoin, l'installateur peut-être en python. L'installeur doit-être très simple pour l'utilisateur final (download puis ./mon_instalateur et c'est tout). L'idéal serait que ce soit le même quelque soit le Linux. Il est tout à fait possible que l'installeur aile chercher des choses sur internet (c'est même l'idéal, comme ça on peut récupérer la dernière version du logiciel à tout moment avec le même installeur).
Pour l'inclusion dans les dépôts officiels, ce n'est pas à l'ordre du jour (je ne suis pas sûr que le soft sera open-source, et de toute façon, il faut que le soft soit installable d'ici pas longtemps, disons un mois tout au plus ce qui est beaucoup trop court).

Ça m'intéresse d'apprendre à faire proprement un paquet pour ma culture personnelle, mais il ne faut pas que ce soit trop long (disons que je peut passer quelques heures dessus, mais il ne faudrait pas abuser non plus :) ). Donc je préfère une solution sale qui marche qu'une solution propre trop difficile.

TL;DR J'attends qu'on me dise RTFM. Je veux créer un installeur autonome fonctionnant sous tout les linux, ulta-simple pour l'utilisateur, pas trop long à fabriquer

Merci d'avance.
PS - faut que j'arrête d'utiliser ctrl+w pour effacer un mot en arrière, j'ai fermé au moins 8 fois cet onglet pour écrire ce message ;(

EDIT: L'installeur ne doit pas avoir de dépendance externe, à par python si nécessaire, pour être sur que ça marche partout. Le logiciel à installer est à distribuer sous forme binaire.

  • # Shell + tar

    Posté par (page perso) . Évalué à 4.

    Ça se faisait dans le temps de faire des scripts shell qui contenaient une grosse partie de données détarrée et utilisée par le shellscript.
    Il me semble que ça se fait aussi en Python : https://chut.readthedocs.org/en/latest/ (cliquer sur le script chutify).

    La manière propre serait de déterminer le système sur lequel on tourne (facile en Python : os.uname() + lecture de /etc/issue et autres fichiers spécifiques si pas assez précis) puis de télécharger un .deb pour Debian, un .rpm pour RedHat etc.

    Au passage, pour créer des exécutables Windows avec Python (si c'est le langage du logiciel) et py2exe, le plus simple est d'en faire un et un seul qui charge dynamiquement un fichier run.py … qui bootstrap le logiciel.

  • # [Résolu]

    Posté par . Évalué à 3.

    J'ai littéralement trouvé la solution à mon problème avec fpm. Cet outil est tellement génial que j'en ferai un journal quand je l'aurais mieux testé. En à peine 5 minutes lors de ma première utilisation, j'ai réussi à fabriquer un .deb installable sur mon système. Fpm permet de fabriquer également des paquets rpm, solaris, pkg, …

    Au passage, après avoir lu la remarque de feth, j'ai cherché le moyen de faire des script auto-décompréssant.

    bépo powered

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.