Kako distribuirati naš softver na Ubuntuu i drugim distribucijama

Ako ste programer ili ne i želite da metoda instalira tu aplikaciju ili skriptu, evo nekoliko metoda.
DEB paket sa fontovima (Samo za debian i derivate)

Ova metoda je namijenjena kada imamo izvorni kod aplikacije.

Prvo instaliramo program koji čini čaroliju "Checkinstall", u terminalu koji izvršavamo

sudo aptitude install checkinstall

Za primjer ćemo koristiti biblioteku "LAME", preuzmite font sa ovdje, kreiramo mapu i smjestimo datoteku hrom-3.98.4.tar.gz i iz terminala kao root unosimo tu mapu i izvršavamo ove redove.

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

Za nas generira deb paket, ovaj metod na kraju instalira generirani paket.

Ručni DEB paket (Samo za debian i derivate)

Ova metoda je namijenjena našim skriptama ili prekompajliranim aplikacijama

Struktura DEB paketa

| Postavljanje (Opšta mapa) | | -DEBIAN (Mapa u kojoj su datoteke konfiguracije) | --control (datoteka konfiguracije) | --preinst (datoteka ili skripta koja se pokreće prije instalacije) | --postinst (datoteka ili skripta koja se pokreće nakon instalacije) | --prerm ( Datoteka ili skripta za pokretanje prije deinstalacije) | --postrm (Datoteka ili skripta za pokretanje nakon deinstalacije) | | -usr (Mapa u kojoj su datoteke vašeg programa) | -usr / bin (mapa u kojoj su binarne datoteke ili skripte) | -usr / share / pixmaps (mapa u kojoj su ikone) | -usr / share / applications (mapa u kojoj se nalaze lanseri)

Primjer datoteke «control»

Paket: TUPACKAGE Verzija: VERSION Arhitektura: amd64 (i386 ili svi) Održavač: AUTHOR Odjeljak: partner / web Prioritet: opcionalno Opis: TEKST

Generiranje DEB paketa

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

S ovim podacima već možemo generirati deb paket za našu aplikaciju, kao primjer napravit ćemo jednostavnu bash skriptu

Kreiramo fasciklu sa imenom «ubunlog» i unutar ovog drugog imena Postaviti
onda unutar posljednje mape kreiramo dvije mape s imenom "DEBIAN" i još jedna «Usr».

Ovo je kontrolna datoteka

paket: ubunlog-web verzija: 0.11.5.13 Arhitektura: sve Održavač: TU NAZIV Odjeljak: partner/web Prioritet: opciono Opis: Tutorijali, Linux desktopi, softver, vijesti i sve o Ubuntuu

Držimo ga u fascikli "DEBIAN" koje smo prije stvorili kao «kontrolu»

Ovaj kod je iz datoteke 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

Spremimo ovo u isti folder kao i prije "postinst"

Sada kreiramo mape za skriptu, pokretač i ikonu unutar mape Postaviti kreiramo fasciklu sa imenom «Usr»

Kao što vidite, imamo dvije mape "DEBIAN" i još jedna «Usr» koju smo kreirali prije nekoliko sekundi, a unutar ove druge kreiramo jednu mapu "Bin" i još jedna "Compartir"

Ovo je kod skripte

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

spremimo u mapu "Bin" sa imenom «ubunlog-web".

Sada idemo u fasciklu "Compartir" u ovome kreiramo fasciklu sa imenom "Pixmaps" i štedimo s imenom «ubunlog-web.png» preuzeli smo ovu sliku sa ovdje

Moramo samo stvoriti pokretač, za to kreiramo zadnju mapu u udio po imenu "Aplikacije"

Ovo je kod istog

[Desktop Entry] Encoding=UTF-8 Name=Ubunlog Web Blog Comment=Tutorijali, Linux desktopi, softver, vijesti i sve o Ubuntu GenericName=Tutorijali, Linux desktopi, softver, vijesti i sve o Ubuntu Exec=ubunlog-web Terminal=false Type=Ikona aplikacije=ubunlog-web Categories=Aplikacija;Mreža;Internet; StartupWMClass=ubunlog-web StartupNotify=true

Čuvaju ga u mapi "Aplikacije" como «ubunlog-web.desktop»

Sve smo već pripremili, ostaje samo generiraj deb paket, pita vas za root lozinku, ali ne instalira ništa.

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 podešavanje

Ako je sve ispravno, već imate paket «ubunlog-web_0.11.5.13_all.deb».

Priručnik za samoraspakiranje (Testirano samo na Ubuntuu, radi na bilo kojem Distro-u)

Ova metoda je generiranje datoteka pomoću makeself skripte (http://megastep.org/makeself/)

Oni preuzimaju s weba, to je .run datoteka, daju joj dozvole i mi je izvršavamo,

Kako se koristi.

makeself.sh MAPA / IZVOR / REZULTAT.POKRENI "TEKST" ./setup.sh

Kao što možete vidjeti "MAKA / POREKLO / » su datoteke i mape naše aplikacije ili skripte «RESULT.RUN» je rezultirajuća datoteka ili samoraspakirajuća datoteka
"TEKST" je poruka koja se prikazuje kada pokrenete samoraspakirajuću datoteku i nalazi se u navodnicima.
"./Setup.sh" je skripta koja se pokreće prilikom raspakiranja samoraspakirajuće datoteke, ne zaboravite joj dati dozvole.

Da bismo ga učinili razumljivijim, poslužit ćemo se istim primjerom deb paketa, ali njemu prilagođenim.

Kreiramo fasciklu sa imenom «ubunlog» i kopiramo mapu koju smo sami generirali, preimenujemo je u Napravi se
U mapi «ubunlog» stvoriti drugo ime postaviti a unutar ovog mjesta slijedeće datoteke.

Skripta za instalaciju

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

Spremaju ga kao setup.sh

Naša skripta

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

Čuvaju ga kao "ubunlog-web» ikona se čuva sa imenom «ubunlog-web.png» preuzeli smo ovu sliku sa ovdje

Bacač

[Desktop Entry] Encoding=UTF-8 Name=Ubunlog Web Blog Comment=Tutorijali, Linux desktopi, softver, vijesti i sve o Ubuntu GenericName=Tutorijali, Linux desktopi, softver, vijesti i sve o Ubuntu Exec=ubunlog-web Terminal=false Type=Ikona aplikacije=ubunlog-web Categories=Aplikacija;Mreža;Internet; StartupWMClass=ubunlog-web StartupNotify=true

Spremaju ga kao «ubunlog-web.desktop»

Sada generiramo samoraspakirajuću datoteku

chmod 755 setup/ chmod +x setup/setup.sh sh ../makeself/makeself.sh setup ubunlog-web.run "Ubunlog - Tutorijali, Linux desktopi, softver, vijesti i sve o Ubuntu" ./setup.sh

Već imamo datoteku koja se samoraspakuje.

Nadam se da će vam ovo pomoći s nečim

Hvala vam na komentarima, ako postoji neka greška, proizvod je vaše mašte, hahaha


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   David gomez rekao je

    Odličan priručnik, čestitke ...

  2.   Koristimo Linux rekao je

    Odličan članak Luciano!
    Zaista vam čestitam.
    Zagrljaj! Paul.

  3.   maty1206 rekao je

    Čestitamo! Ovaj je članak jedan od najboljih koje sam vidio da naučim kako spakirati .deb binarne datoteke za Debian i derivate poput Ubuntua.

    U slučaju ArchLinux-a koristimo PKGBUILD u najboljem BSD stilu: https://wiki.archlinux.org/index.php/PKGBUILD_%28Espa%C3%B1ol%29

    Zagrljaj!

    1.    Luciano Lagassa rekao je

      Pozdrav, hvala na komentaru, ako mislite da u postu možemo dodati kako kreirati pakete za arch, pojašnjavam da koristim samo ubuntu i malo centos-a, komentiram da je vrlo dobro da sam jednom pokušao, ali nisam imao vrijeme je za njegovu instalaciju, što bi bilo jako dobro jer ako mogu bilo tko može.

  4.   Luciano Lagassa rekao je

    Pozdrav, hvala na vašim komentarima, kao što sam već spomenuo i drugim prilikama, moj post temelji se na mojim iskustvima, nadam se da su korisna.

  5.   josh rekao je

    Zdravo luciano.

    Počeo sam slijediti korake i nisam uspio proći provjeru. Vraća sljedeću grešku:

    "Makefile: 349: recept za cilj 'install-rekurzivno' nije uspio
    make: *** [install-rekurzivno] Greška 1

    **** Instalacija nije uspjela. Prekid stvaranja paketa. "

    Prije toga, naredba "make" prikazuje ovo u izlazu:

    "Make [3]: Ništa se ne može učiniti za" sve "."

    Ne razumijem šta propada. Pokušao sam preuzeti najnoviju verziju LAME-a kako bih vidio hoće li to riješiti moj problem, ali ništa za vidjeti.

    Pozdrav.