Comment distribuer nos logiciels sur Ubuntu et d'autres distributions

Si vous êtes des programmeurs ou non et que vous souhaitez une méthode pour installer cette application ou ce script, voici plusieurs méthodes.
Package DEB avec polices (Uniquement pour Debian et Derivatives)

Cette méthode est utilisée lorsque nous avons le code source de l'application.

Nous installons d'abord le programme qui fait la magie "Vérifier l'installation", dans un terminal nous exécutons

vérification d'installation d'aptitude sudo

Pour l'exemple, nous utiliserons la bibliothèque "BOITEUX", téléchargez la police depuis ici !, nous créons un dossier et plaçons le fichier lécher-3.98.4.tar.gz et depuis le terminal en tant que root, nous entrons dans ce dossier et exécutons ces lignes.

tar -xzvf lame-3.98.4.tar.gz cd lame-3.98.4 ./configure make checkinstall cp * .deb ../ cd .. rm -R lame-3.98.4 chmod 777 lame-3.98.4 *. deb

Il génère le package deb, cette méthode installe le package généré à la fin.

Package DEB manuel (Uniquement pour Debian et Derivatives)

Cette méthode est pour nos scripts ou applications précompilés

Structure d'un package DEB

| Configuration (dossier général) | | -DEBIAN (dossier où se trouvent les fichiers de configuration) | --control (fichier de configuration) | --preinst (fichier ou script qui s'exécute avant l'installation) | --postinst (fichier ou script qui s'exécute après l'installation) | --prerm ( Fichier ou script à exécuter avant la désinstallation) | --postrm (Fichier ou script à exécuter après la désinstallation) | | -usr (Dossier où se trouvent vos fichiers d'application) | -usr / bin (Dossier où se trouvent les binaires ou scripts) | -usr / share / pixmaps (Dossier où se trouvent les icônes) | -usr / share / applications (Dossier où se trouvent les lanceurs)

Exemple de fichier «contrôle»

Package: TUPACKAGE Version: VERSION Architecture: amd64 (i386 ou tout) Responsable de la maintenance: AUTHOR Section: partenaire / web Priorité: optionnel Description: TEXT

Générer un package DEB

sudo chmod -R root: configuration racine / sudo chmod -R 755 configuration / sudo dpkg -b configuration / package.deb chmod 777 package.deb chown -R configuration

Avec ces données, nous pouvons déjà générer un package deb pour notre application, à titre d'exemple, nous allons faire un simple script bash

Nous créons un dossier nommé «ubunlog» et dans cet autre nom Installer
puis dans le dernier dossier, nous créons deux dossiers dont un de nom "DEBIAN" et d'autres «Usr».

Ceci est le fichier de contrôle

Paquet: ubunlog-web Version : 0.11.5.13 Architecture : tous Responsable : TU NAME Section : partenaire/web Priorité : facultative Description : Tutoriels, bureaux Linux, logiciels, actualités et tout sur Ubuntu

Nous le gardons dans le dossier "DEBIAN" que nous avons créé auparavant en tant que «contrôle»

Ce code provient du fichier postinst

#!/bin/sh chmod 755 /usr/bin/ubunlog-web chmod +x /usr/bin/ubunlog-web chmod 755 /usr/share/pixmaps/ubunlog-web.png chmod 755 /usr/share/applications/ubunlog-web.desktop chmod +x /usr/share/applications/ubunlog-web.desktop

Nous enregistrons ceci dans le même dossier que précédemment sous "postinst"

Maintenant, nous créons les dossiers pour le script, le lanceur et l'icône, à l'intérieur du dossier Installer nous créons un dossier nommé «Usr»

Comme vous pouvez le voir, nous avons deux dossiers un "DEBIAN" et d'autres «Usr» que nous avons créé il y a quelques secondes, dans ce dernier nous créons des dossiers un "Poubelle" et d'autres "Compartir"

Ceci est le code du script

#!/bin/sh firefox https://ubunlog.com/ &

nous le sauvegardons dans le dossier "Poubelle" avec le nom «ubunlog-La toile".

Maintenant, nous allons dans le dossier "Compartir" en cela, nous créons un dossier nommé "Pixmaps" et nous économisons avec le nom «ubunlog-web.png» nous avons téléchargé cette image à partir de ici !

Nous n'avons qu'à créer le lanceur, pour cela nous créons un dernier dossier dans Partager de nom "Applications"

C'est le code du même

[Entrée du bureau] Encodage=Nom UTF-8=Ubunlog Web Blog Comment=Tutoriels, bureaux Linux, logiciels, actualités et tout sur Ubuntu GenericName=Tutoriels, bureaux Linux, logiciels, actualités et tout sur Ubuntu Exec=ubunlog-web Terminal=false Type=Icône d'application=ubunlog-Web Catégories=Application;Réseau;Internet; DémarrageWMClass=ubunlog-web StartupNotify = vrai

Ils le gardent dans le dossier "Applications" comme «ubunlog-web.desktop»

On a déjà tout prêt, il ne reste plus que générer un package deb, il vous demande le mot de passe root, mais il n'installe rien.

sudo chmod -R root: configuration racine/ sudo chmod -R 755 configuration/ sudo dpkg -b configuration/ ubunlog-web_0.11.5.13_all.deb chmod 777 ubunlog-web_0.11.5.13_all.deb chown -R configuration

Si tout est correct, vous disposez déjà du package «ubunlog-web_0.11.5.13_all.deb».

Manuel auto-extractible (Uniquement testé sur Ubuntu, fonctionne sur n'importe quelle distribution)

Cette méthode consiste à générer des fichiers avec le script makeself (http://megastep.org/makeself/)

Ils téléchargent depuis le Web, c'est un fichier .run, ils lui donnent des permissions et nous l'exécutons,

Comment on l'utilise.

makeself.sh FOLDER / SOURCE / RESULT.RUN "TEXT" ./setup.sh

Comme tu peux le voir "DOSSIER / ORIGINE / » sont les fichiers et dossiers de notre application ou script «RESULT.RUN» est le fichier résultant ou le fichier auto-extractible
"TEXTE" est le message qui s'affiche lorsque vous exécutez le fichier auto-extractible et il est placé entre guillemets.
"./Setup.sh" est le script qui s'exécute lors de la décompression du fichier auto-extractible, n'oubliez pas de lui donner des autorisations.

Pour le rendre plus compréhensible, nous utiliserons le même exemple du paquet deb mais adapté à celui-ci.

Nous créons un dossier nommé «ubunlog» et nous copions le dossier qui se fait générer, le renommons comme Se faire
Dans le dossier «ubunlog» créer un autre nom installation et à l'intérieur de cet endroit les fichiers suivants.

Script d'installation

#!/bin/shcp ubunlog-web /usr/bin/ chmod 755 /usr/bin/ubunlog-web chmod +x /usr/bin/ubunlog-cp web ubunlog-web.png /usr/share/pixmaps/ chmod 755 /usr/share/pixmaps/ubunlog-web.png cp ubunlog-web.desktop /usr/share/applications/ chmod 755 /usr/share/applications/ubunlog-web.desktop chmod +x /usr/share/applications/ubunlog-web.desktop

Ils l'enregistrent sous setup.sh

Notre scénario

#!/bin/sh firefox https://ubunlog.com/ &

Ils l'enregistrent sous "ubunlog-web» l'icône est enregistrée avec le nom «ubunlog-web.png» nous avons téléchargé cette image à partir de ici !

Le lanceur

[Entrée du bureau] Encodage=Nom UTF-8=Ubunlog Web Blog Comment=Tutoriels, bureaux Linux, logiciels, actualités et tout sur Ubuntu GenericName=Tutoriels, bureaux Linux, logiciels, actualités et tout sur Ubuntu Exec=ubunlog-web Terminal=false Type=Icône d'application=ubunlog-Web Catégories=Application;Réseau;Internet; DémarrageWMClass=ubunlog-web StartupNotify = vrai

Ils l'enregistrent sous «ubunlog-web.desktop»

Maintenant, nous générons le fichier auto-extractible

chmod 755 setup/ chmod +x setup/setup.sh sh ../makeself/makeself.sh setup ubunlog-web.run "Ubunlog - Tutoriels, bureaux Linux, logiciels, actualités et tout sur Ubuntu" ./setup.sh

Nous avons déjà le fichier auto-extractible.

J'espère que cela vous aide avec quelque chose

Merci pour vos commentaires, s'il y a une ERREUR c'est le produit de votre imagination, hahaha


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   David Gómez dit

    Excellent manuel, bravo ...

  2.   Utilisons Linux dit

    Excellent article Luciano!
    Je vous félicite vraiment.
    Un câlin! Paul.

  3.   maty1206 dit

    Toutes nos félicitations! Cet article est l'un des meilleurs que j'ai vus pour apprendre à empaqueter des binaires .deb pour Debian et des dérivés comme Ubuntu.

    Dans le cas d'ArchLinux, nous utilisons le PKGBUILD dans le meilleur style BSD: https://wiki.archlinux.org/index.php/PKGBUILD_%28Espa%C3%B1ol%29

    Un câlin!

    1.    Luciano Lagassa dit

      Bonjour, merci pour votre commentaire, si vous pensez que nous pouvons ajouter dans le post comment créer des packages pour arch, je précise que je n'utilise que ubuntu et un peu de centos, je commente que c'est très bien j'ai essayé une fois mais je n'ai pas eu le temps de l'installer, ce qui serait très bien puisque si je peux n'importe qui le peut.

  4.   Luciano Lagassa dit

    Bonjour, merci pour vos commentaires, comme je l'ai déjà mentionné à d'autres occasions, mes posts sont basés sur mes expériences, j'espère qu'ils vous seront utiles.

  5.   Josh dit

    Salut Luciano.

    J'ai commencé à suivre les étapes et je n'ai pas pu réussir le checkinstall. Il renvoie l'erreur suivante:

    "Makefile: 349: la recette de la cible 'install-recursive' a échoué
    make: *** [install-recursive] Erreur 1

    **** L'installation a échoué. Annulation de la création du package. "

    Avant cela, la commande "make" montre ceci dans la sortie:

    "Make [3]: Rien à faire pour 'tous'."

    Je ne comprends pas ce qui échoue. J'ai essayé de télécharger la version la plus récente de LAME pour voir si cela résoudrait mon problème, mais rien à faire.

    Salutations.