Hoe onze software op Ubuntu en andere distributies te distribueren

Als u programmeurs bent of niet en u een methode wilt om die applicatie of dat script te installeren, zijn hier verschillende methoden.
DEB-pakket met lettertypen (Alleen voor debian en derivaten)

Deze methode is voor als we de broncode van de applicatie hebben.

Eerst installeren we het programma dat de magie doet "Checkinstall", in een terminal die we uitvoeren

sudo aptitude install checkinstall

Voor het voorbeeld zullen we de bibliotheek gebruiken "LAME", download het lettertype van hier, we maken een map en plaatsen het bestand lik-3.98.4.tar.gz en vanuit terminal als root gaan we die map binnen en voeren we deze regels uit.

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

Het genereert het deb-pakket voor ons, deze methode installeert het gegenereerde pakket aan het einde.

Handmatig DEB-pakket (Alleen voor debian en derivaten)

Deze methode is voor onze voorgecompileerde scripts of applicaties

Opbouw van een DEB-pakket

| Setup (algemene map) | | -DEBIAN (map met configuratiebestanden) | --control (configuratiebestand) | --preinst (bestand of script dat wordt uitgevoerd vóór installatie) | --postinst (bestand of script dat wordt uitgevoerd na installatie) | --prerm ( Bestand of script dat moet worden uitgevoerd voordat de installatie wordt verwijderd) | --postrm (bestand of script dat moet worden uitgevoerd na verwijdering) | | -usr (map waar uw applicatiebestanden zijn) | -usr / bin (map waar de binaire bestanden of scripts zijn) | -usr / share / pixmaps (map waar de pictogrammen zijn) | -usr / share / applicaties (map waar zijn de draagraketten)

Voorbeeld van een «control» -bestand

Pakket: TUPACKAGE Versie: VERSION Architectuur: amd64 (i386 of alles) Beheerder: AUTHOR Sectie: partner / web Prioriteit: optioneel Beschrijving: TEXT

Een DEB-pakket genereren

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

Met deze gegevens kunnen we al een deb-pakket genereren voor onze applicatie, als voorbeeld zullen we een eenvoudig bash-script maken

We maken een map met de naam «ubunlog» en binnen deze andere naam Opstelling
vervolgens maken we in de laatste map twee mappen met een naam "DEBIAN" en nog een «Usr».

Dit is het controlebestand

Pakket: ubunlog-web Versie: 0.11.5.13 Architectuur: alle Beheerder: TU NAAM Sectie: partner/web Prioriteit: optioneel Beschrijving: Tutorials, Linux desktops, software, nieuws en alles over Ubuntu

We bewaren het in de map "DEBIAN" die we eerder hebben gemaakt als «controle»

Deze code komt uit het postinst-bestand

#!/bin/sh chmod 755 /usr/bin/ubunlog-webchmod +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

We slaan dit op in dezelfde map als voorheen als "postinst"

Nu maken we de mappen voor het script, het opstartprogramma en het pictogram in de map Opstelling we maken een map met de naam «Usr»

Zoals u kunt zien, hebben we twee mappen een "DEBIAN" en nog een «Usr» die we seconden geleden hebben gemaakt, binnen deze laatste maken we mappen een "Prullenbak" en nog een "Compartir"

Dit is de scriptcode

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

we slaan het op in de map "Prullenbak" met de naam «ubunlog-Web".

Nu gaan we naar de map "Compartir" hierin maken we een map met de naam "Pixmaps" en we sparen met de naam «ubunlog-web.png» we hebben deze afbeelding gedownload van hier

We hoeven alleen de launcher te maken, hiervoor maken we een laatste map aan deel bij naam "Toepassingen"

Dit is de code van hetzelfde

[Bureaubladinvoer] Codering=UTF-8 Naam=Ubunlog Web Blog Comment=Tutorials, Linux-desktops, software, nieuws en alles over Ubuntu GenericName=Tutorials, Linux-desktops, software, nieuws en alles over Ubuntu Exec=ubunlog-web Terminal=false Type=Applicatiepictogram=ubunlog-web Categorieën=Applicatie;Netwerk;Internet; OpstartWMClass=ubunlog-web StartupNotify=waar

Ze bewaren het in de map "Toepassingen" als «ubunlog-web.desktop»

We hebben alles al klaar, het blijft alleen deb-pakket genereren, vraagt ​​u om het root-wachtwoord, maar installeert niets.

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

Als alles klopt, heb je het pakket al «ubunlog-web_0.11.5.13_all.deb».

Zelfuitpakkende handleiding (Alleen getest op Ubuntu, werkt op elke distro)

Deze methode is om bestanden te genereren met het makeelf-script (http://megastep.org/makeself/)

Ze downloaden van internet, het is een .run-bestand, ze geven het toestemming en wij voeren het uit,

Hoe te gebruiken.

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

Zoals je kan zien "MAP / OORSPRONG / » zijn de bestanden en mappen van onze applicatie of script "RESULT.RUN" is het resulterende bestand of zelfuitpakkend bestand
"TEKST" is het bericht dat wordt weergegeven wanneer u het zelfuitpakkende bestand uitvoert, en het staat tussen aanhalingstekens.
"./Setup.sh" is het script dat wordt uitgevoerd bij het uitpakken van het zelfuitpakkende bestand, vergeet niet om het machtigingen te geven.

Om het begrijpelijker te maken, zullen we hetzelfde voorbeeld van het deb-pakket gebruiken, maar daaraan aangepast.

We maken een map met de naam «ubunlog» en we kopiëren de map die zichzelf maakt, hernoemen als Zichzelf maken
In de map «ubunlog» maak een andere naam setup en op deze plek de volgende bestanden.

Installer-script

#!/bin/sh cp ubunlog-web /usr/bin/chmod 755 /usr/bin/ubunlog-webchmod +x /usr/bin/ubunlog-web-cp 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

Ze slaan het op als setup.sh

Ons script

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

Ze slaan het op als "ubunlog-web» het pictogram wordt opgeslagen met de naam «ubunlog-web.png» we hebben deze afbeelding gedownload van hier

De werper

[Bureaubladinvoer] Codering=UTF-8 Naam=Ubunlog Web Blog Comment=Tutorials, Linux-desktops, software, nieuws en alles over Ubuntu GenericName=Tutorials, Linux-desktops, software, nieuws en alles over Ubuntu Exec=ubunlog-web Terminal=false Type=Applicatiepictogram=ubunlog-web Categorieën=Applicatie;Netwerk;Internet; OpstartWMClass=ubunlog-web StartupNotify=waar

Ze slaan het op als «ubunlog-web.desktop»

Nu genereren we het zelfuitpakkende bestand

chmod 755 setup/ chmod +x setup/setup.sh sh ../makeself/makeself.sh setup ubunlog-web.run "Ubunlog - Tutorials, Linux-desktops, software, nieuws en alles over Ubuntu" ./setup.sh

We hebben het zelfuitpakkende bestand al.

Ik hoop dat dit je ergens mee helpt

Bedankt voor je opmerkingen, als er een FOUT is, is dit het product van je verbeelding, hahaha


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.

  1.   David Gómez zei

    Uitstekende handleiding, gefeliciteerd ...

  2.   Laten we Linux gebruiken zei

    Uitstekend artikel Luciano!
    Ik feliciteer je echt.
    Een knuffel! Paul.

  3.   maty1206 zei

    Gefeliciteerd! Dit artikel is een van de beste die ik heb gezien om te leren hoe u .deb-binaire bestanden voor Debian en derivaten zoals Ubuntu kunt verpakken.

    In het geval van ArchLinux gebruiken we de PKGBUILD in de beste BSD-stijl: https://wiki.archlinux.org/index.php/PKGBUILD_%28Espa%C3%B1ol%29

    Een knuffel!

    1.    Luciano Lagassa zei

      Hallo, bedankt voor je opmerking, als je denkt dat we in de post kunnen toevoegen hoe je pakketten voor arch kunt maken, verduidelijk ik dat ik alleen ubuntu en een beetje centos gebruik, ik merk op dat het heel goed is, ik heb het een keer geprobeerd, maar ik had het niet de tijd om het te installeren, wat heel goed zou zijn, want als ik kan, kan iedereen het.

  4.   Luciano Lagassa zei

    Hallo, bedankt voor je opmerkingen, zoals ik al bij andere gelegenheden heb vermeld, mijn post is gebaseerd op mijn ervaringen, ik hoop dat ze nuttig zijn.

  5.   Josh zei

    Hallo luciano.

    Ik ben begonnen met het volgen van de stappen en ik heb de checkinstall niet kunnen doorstaan. Het retourneert de volgende fout:

    "Makefile: 349: recept voor doel 'install-recursive' is mislukt
    make: *** [install-recursive] Fout 1

    **** De installatie is mislukt. Het maken van het pakket wordt afgebroken. "

    Voordien toont het "make" -commando dit in de uitvoer:

    "Make [3]: niets te doen voor 'allen'."

    Ik begrijp niet wat er mis is. Ik heb geprobeerd de meest recente versie van LAME te downloaden om te zien of dit mijn probleem zou oplossen, maar er is niets te doen.

    Groeten.