Hvordan distribuere programvaren vår på Ubuntu og andre distroer

Hvis du er programmerer eller ikke og vil ha en metode for å installere det programmet eller skriptet, er det flere metoder.
DEB-pakke med skrifttyper (Bare for debian og derivater)

Denne metoden er for når vi har kildekoden til applikasjonen.

Først installerer vi programmet som gjør magien "Sjekkinstallasjon", i en terminal vi utfører

sudo aptitude installer sjekkinstallasjon

For eksemplet vil vi bruke biblioteket "LAME", last ned kilden fra her, lager vi en mappe og plasserer filen halt-3.98.4.tar.gz og fra terminal som root går vi inn i den mappen og kjører disse linjene.

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

Vi genererer deb-pakken, denne metoden installerer den genererte pakken på slutten.

Manuell DEB-pakke (Bare for debian og derivater)

Denne metoden er for våre skript eller forhåndskompilerte applikasjoner

Struktur av en DEB-pakke

| Oppsett (generell mappe) | | -DEBIAN (mappe der konfigurasjonsfilene er) | --control (konfigurasjonsfil) | --preinst (fil eller skript som kjører før installasjon) | --postinst (fil eller skript som kjører etter installasjon) | --prerm ( Fil eller skript som skal kjøres før avinstallering) | --postrm (Fil eller skript som skal kjøres etter avinstallering) | | -usr (Mappe der applikasjonsfilene dine er) | -usr / bin (Mappe der binærfiler eller skript er) | -usr / share / pixmaps (Mappe der ikonene er) | -usr / share / applikasjoner (Mappe hvor er bærerakettene)

Eksempel på en «kontroll» -fil

Pakke: TUPACKAGE Versjon: VERSJON Arkitektur: amd64 (i386 eller alle) Vedlikehold: FORFATTER Seksjon: partner / web Prioritet: valgfri Beskrivelse: TEKST

Generere en DEB-pakke

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

Med disse dataene kan vi allerede generere en deb-pakke for applikasjonen vår, som et eksempel skal vi lage et enkelt bash-skript

Vi oppretter en mappe med navnet «ubunlog» og innenfor dette andre navnet Oppsett
deretter i den siste mappen oppretter vi to mapper med navnet "DEBIAN" og en annen «Usr».

Dette er kontrollfilen

Pakke: ubunlog-web Versjon: 0.11.5.13 Arkitektur: alle Vedlikehold: TU NAVN Seksjon: partner/nett Prioritet: valgfritt Beskrivelse: Veiledninger, Linux-stasjonære datamaskiner, programvare, nyheter og alt om Ubuntu

Vi holder det inne i mappen "DEBIAN" som vi opprettet tidligere som «kontroll»

Denne koden er fra postinst-filen

#!/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

Vi lagrer dette i samme mappe som før som "postinst"

Nå oppretter vi mappene for skriptet, startprogrammet og ikonet, inne i mappen Oppsett vi lager en mappe med navnet «Usr»

Som du ser har vi to mapper en "DEBIAN" og en annen «Usr» som vi opprettet for sekunder siden, innen sistnevnte lager vi mapper en "Søppel" og en annen "Compartir"

Dette er manuskoden

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

vi lagrer den i mappen "Søppel" med navnet «ubunlog- Web".

Nå går vi til mappen "Compartir" i dette lager vi en mappe som heter "Pixmaps" og vi sparer med navnet «ubunlog-web.png» vi lastet ned dette bildet fra her

Vi trenger bare å lage lanseringen, for dette oppretter vi en siste mappe i aksje ved navn "Applikasjoner"

Dette er koden til det samme

[Desktop Entry] Encoding=UTF-8 Navn=Ubunlog Nettblogg Comment=Tutorials, Linux-stasjonære maskiner, programvare, nyheter og alt om Ubuntu GenericName=Tutorials, Linux-stasjonære maskiner, programvare, nyheter og alt om Ubuntu Exec=ubunlog-web Terminal=false Type=Applikasjonsikon=ubunlog-web Categories=Applikasjon;Nettverk;Internett; OppstartWMClass=ubunlog-web StartupNotify=true

De oppbevarer den i mappen "Applikasjoner" som «ubunlog-web.desktop»

Vi har allerede alt klart, det gjenstår bare generere deb-pakke, det ber deg om root-passord, men det installeres ikke noe.

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

Hvis alt stemmer, har du allerede pakken «ubunlog-web_0.11.5.13_all.deb».

Selvutpakkende manual (Bare testet på Ubuntu, fungerer på hvilken som helst distro)

Denne metoden er å generere filer med makeself-skriptet (http://megastep.org/makeself/)

De laster ned fra nettet, det er en .run-fil, de gir den tillatelse, og vi utfører den,

Hvordan bruke det.

makeself.sh MAPPE / KILDE / RESULTAT.KJØR "TEKST" ./setup.sh

Som du kan se "MAPP / OPPRINNELSE / » er filene og mappene til applikasjonen eller skriptet vårt "RESULTAT.KJØR" er den resulterende filen eller den selvutpakkende filen
"TEKST" er meldingen som vises når du kjører den selvutpakkende filen, og den er vedlagt anførselstegn.
"./Setup.sh" er skriptet som kjører når du pakker ut den selvutpakkende filen, ikke glem å gi den tillatelse.

For å gjøre det mer forståelig vil vi bruke det samme eksemplet på deb-pakken, men tilpasset den.

Vi oppretter en mappe med navnet «ubunlog» og vi kopierer mappen som gjør meg generert, gir den navnet nytt navn Gjør seg selv
I mappen «ubunlog» opprette et annet navn oppsett og inne på dette stedet følgende filer.

Installatørskript

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

De lagrer det som setup.sh

Skriften vår

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

De lagrer det som "ubunlog-web» ikonet lagres med navnet «ubunlog-web.png» vi lastet ned dette bildet fra her

Kannen

[Desktop Entry] Encoding=UTF-8 Navn=Ubunlog Nettblogg Comment=Tutorials, Linux-stasjonære maskiner, programvare, nyheter og alt om Ubuntu GenericName=Tutorials, Linux-stasjonære maskiner, programvare, nyheter og alt om Ubuntu Exec=ubunlog-web Terminal=false Type=Applikasjonsikon=ubunlog-web Categories=Applikasjon;Nettverk;Internett; OppstartWMClass=ubunlog-web StartupNotify=true

De lagrer det som «ubunlog-web.desktop»

Nå genererer vi den selvutpakkende filen

chmod 755 setup/ chmod +x setup/setup.sh sh ../makeself/makeself.sh setup ubunlog-web.run "Ubunlog - Veiledninger, Linux-stasjonære datamaskiner, programvare, nyheter og alt om Ubuntu" ./setup.sh

Vi har allerede den selvutpakkende filen.

Jeg håper dette hjelper deg med noe

Takk for kommentarene dine. Hvis det er noe FEIL, er det et produkt av fantasien din, hahaha


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   David Gomez sa

    Utmerket manual, gratulerer ...

  2.   La oss bruke Linux sa

    Utmerket artikkel Luciano!
    Jeg gratulerer deg virkelig.
    En klem! Paul.

  3.   maty1206 sa

    Gratulerer! Denne artikkelen er en av de beste jeg har sett for å lære å pakke .deb-binærfiler for Debian og derivater som Ubuntu.

    Når det gjelder ArchLinux, bruker vi PKGBUILD i den beste BSD-stilen: https://wiki.archlinux.org/index.php/PKGBUILD_%28Espa%C3%B1ol%29

    En klem!

    1.    Luciano Lagassa sa

      Hei, takk for kommentaren din, hvis du tror vi kan legge til i innlegget hvordan du lager pakker for arch, klargjør jeg at jeg bare bruker ubuntu og litt centos, jeg kommenterer at det er veldig bra jeg prøvde en gang, men jeg hadde ikke tiden for å installere den, noe som ville være veldig bra siden hvis jeg kan noen kan.

  4.   Luciano Lagassa sa

    Hei, takk for kommentarene dine, som jeg allerede har nevnt ved andre anledninger, er innlegget mitt basert på mine erfaringer, jeg håper de er nyttige.

  5.   Josh sa

    Hei Luciano.

    Jeg har begynt å følge trinnene, og jeg har ikke klart å passere sjekkinstallasjonen. Den returnerer følgende feil:

    "Makefile: 349: oppskrift på målet" install-rekursiv "mislyktes
    make: *** [install-rekursiv] Feil 1

    **** Installasjonen mislyktes. Avbryter opprettelsen av pakken. "

    Før det viser kommandoen "make" dette i utdataene:

    "Lag [3]: Ingenting å gjøre for" alle "."

    Jeg forstår ikke hva som feiler. Jeg har prøvd å laste ned den nyeste versjonen av LAME for å se om det ville løse problemet mitt, men ingenting å se.

    Hilsener.