Do-it-yourself deb pakotņu krātuve: steidzami veidojiet Debian paketes no avotiem un bināriem failiem. Debian instalācijas failu izveide - Deb faili Deb pakotnes izveide

→ Norādījumi deb paketes izveidei

Tīklā ir diezgan daudz rakstu par to, kā izveidot deb pakotni, taču diemžēl ne visi no tiem būs saprotami izstrādātājam, kurš nolēma izveidot pirmo reizi. Tātad jums ir savs kods. Tas ir noderīgi, labi, taču instalēšanai serverī vai darbvirsmā ir nepieciešamas dažas prasmes un pūles. Izvairīties roku darbs kas saistīti ar failu kopēšanu, manipulēšanu ar datu bāzi, start-stop skriptu iestatīšanu (dēmoniem) un konfigurāciju iestatīšanu, jūs nolēmāt visu apkopot deb paketē.

Ideālā gadījumā pareizā deb pakete jāparaksta ar gpg atslēgu. Pretējā gadījumā apt uzskatīs paketi par neuzticamu un attiecīgi izdos brīdinājumu. Bet mēs pagaidām izlaidīsim šo daļu. Rokasgrāmata par to, kā izveidot gpg atslēgu un kā parakstīt deb pakotni ar gpg atslēgu, tiks apskatīta vēlāk.

1. solis. Instalējiet utilītprogrammas, kas nepieciešamas pakotnes izveidošanai:

Sudo apt-get install autoconf automake libtool autotools-dev dpkg-dev fakeroot

2. solis. Izveidojiet saknes direktoriju nākotnes pakotnei un kopējiet visus savas utilītas failus šajā direktorijā, kas būs nepieciešama darbībai un instalēšanai. Piemēram:

Mkdir -p / home / lietotājvārds / deb / my_package cp / some_source_files / home / username / deb / my_package

Ja jūsu utilīta būs mapē:

/ usr / local / share / my_project

/ home / lietotājvārds / deb / my_package / usr / local / share / my_project

3. solis. Paketes saknē izveidojiet direktoriju DEBIAN.

Kataloga nosaukumam obligāti jābūt lielie burti... Šajā direktorijā ir meta informācija, kas tiek izmantota instalēšanas laikā.

Cd / home / username / deb / my_package mkdir DEBIAN

Tālāk katalogā DEBIĶIS izveidot obligātu teksta fails - kontrole... IN šo failu satur pamatinformāciju par iepakojumu. Failā katrā rindā ir atslēgu un vērtību pāri, atdalīti ar kolu.

Cd. / DEBIAN pieskāriena vadība

Faila piemērs:

Iepakojums: my-pack Versija: 1.0.0 Nodrošina: my-pack Uzturētājs: Vasilijs Batareikins Arhitektūra: viss Sadaļa: tīmekļa prioritāte: izvēles Pre-Depends: gcc, make, perl (> = 5.10), mysql-server Atkarīgs: gcc, make, perl (> = 5.10), perlmagick, mysql-server, unzip, rar Apraksts : Mana pirmā debian pakete

Iepakojums- Iepakojuma nosaukums. Derīgas rakstzīmes. Nepieciešamais parametrs.

Versija- Iepakojuma versija. Nepieciešamais parametrs.

Nodrošina- Sistēmā reģistrēts lietojumprogrammas nosaukums.

Uzturētājs- Iepakojuma uzturētāja vārds un pasta adrese. Nepieciešamais parametrs.

Arhitektūra- Procesora arhitektūra, kurai paredzēta pakotne. Nepieciešamais parametrs.

Iedaļa- nosaka lietojumprogrammu grupu. Nepieciešamais parametrs.

Prioritāte- Iepakojuma prioritāte. Parametrs nosaka, cik svarīga sistēmai ir jūsu pakete.

Iepriekš atkarīgs- Komatu atdalīts to pakotņu saraksts, kas nepieciešamas pakas instalēšanas laikā. Pakotņu pārvaldnieks automātiski instalēs norādītās paketes.

Atkarīgs- komatatdalīts to paku saraksts, kas nepieciešami, lai šī pakotne darbotos. Pakotņu pārvaldnieks automātiski instalēs norādītās paketes.

Apraksts- Iepakojuma apraksts. Nepieciešamais parametrs.

Ja instalējot vai atinstalējot pakotni, jums ir jāveic noteiktas darbības, varat izmantot īpašus skriptus. Mēs tos izveidojam un iestatām izpildes tiesības:

Cd ./DEBIAN touch preinst postinst prerm postrm chmod 775 preinst postinst prerm postrm

preinst- Darbojas pirms pakotnes instalēšanas.

postinst- Izpildīts tūlīt pēc pakotnes instalēšanas.

prerm- Darbojas tieši pirms pakotnes atinstalēšanas.

postrm- Izpildīts tūlīt pēc iepakojuma noņemšanas.


4. solis. Paketes veidošana.

Mēs ar paketes saknes mapi pakāpamies vienā līmenī un veidojam.


Autors: Maikls Rīds
Publicēšanas datums: 2014. gada 4. janvāris
Tulkojums: N. Romodanovs
Pārsūtīšanas datums: 2014. gada jūnijs

Mēs parādīsim, kā izveidot divus visizplatītākos veidus Linux paketes izplatīšanai programmatūru un pats varat izplatīt pats savus iepakojumus.

Mēs iepazīsimies ar divu populārāko iesaiņošanas sistēmu DEB un RPM programmatūras iepakošanas procesu. Šīs metodes varat izmantot, lai izveidotu savas programmatūras paketes vai pat uzturētu programmatūras paketes, kuras, jūsuprāt, paliek nepamanītas.

Mēs sāksim ar apmācību par to, kā izveidot DEB failus ((.deb) Debian atvasinātajiem izplatījumiem - kā pamatu tam izmantojam Xubuntu, pēc tam sīki aprakstīsim metodes, kas nepieciešamas, lai izveidotu RPM paketes lietošanai Red Hat izplatītie izplatījumi, un mēs tam izmantosim Fedora. Jūs bieži varat izveidot paketi vienā izplatīšanā un pēc tam instalēt to saistītajā izplatīšanā (piemēram, Ubuntu> Debian), taču, ja tas ir svarīgi, jūs varētu vēlēties to izmēģināt pats.

Programmai mēs izmantosim vieglo Dillo tīmekļa pārlūkprogrammu kā no avota izveidotas paketes piemēru. Veidojot no avota, ja būvējums nenotiek tā, kā vajadzētu, jūs, kā parasti, varat meklēt risinājumus internetā. Piemēram, Dillo 3.0.3 gadījumā avota kodu arhīva pārraudzības dēļ mums bija jāpievieno "LIBS = -lX11" pirms būvēšanas komandām, lai komandas darbotos.

Veidošana notiek komandrindā

Resursi

Uzstādīšana (vai virtuālā iekārta) Ubuntu un Fedora

Soli pa solim apraksts

01. darbība: Izmantojot virtuālo mašīnu

Tādu virtualizācijas rīku kā VirtualBox vai Vmware izmantošana bieži ir labākā pieeja citu sistēmu iesaiņošanai. No vienas puses, šī pieeja ļauj uzturēt samērā tīru pamatnes uzstādīšanu, kas ir salīdzināma ar iestatījumiem, ar kuriem, visticamāk, strādās citi. Tas arī nozīmē, ka jūs varat iegūt mērķa sistēmu kolekciju, izmantojot dažādus sadalījumus. Turklāt lielākā daļa virtualizācijas rīku ļauj atdarināt dažādas arhitektūras, un tāpēc ir iespējams palaist 64 bitu operētājsistēmas uz 32 bitu platformas, lai gan veiktspēja cietīs.

02. darbība: Sākot no nulles

Ja Ubuntu vai Fedora kaut kas noiet greizi, ir pilnīgi droši vienkārši izdzēst sākotnējo direktoriju un sākt no jauna. Ņemiet vērā, ka Debian rīki pārveido oriģinālo arhīvu, tāpēc jums būs jāsāk ar jaunu kopiju.

1. daļa: Debian

03. solis: Instalējiet būvēšanas vidi

Mēs sāksim instalēt lielāko daļu instrumenti kas mums jāizveido programmas no pirmkodiem. Dial:

$ sudo apt-get install build-essential autoconf automake autotools-dev

Tagad mums jāinstalē rīki, kurus izmanto darbam ar DEB pakotnēm. Dariet to ar šādu komandu ...

$ sudo apt-get install dh-make debhelper devscripts fakeroot xutils lintian pbuilder

04 solis: Izveidojiet GPG atslēgu

Ja iepriekš neesat izveidojis GPG publisko atslēgu, tā jāizveido tūlīt, lai varētu parakstīt paketes. Vispirms ievadiet tekstu gpg –gen-key. Atlasiet noklusējumus un pēc uzaicinājuma ievadiet savu īsto vārdu un kontaktinformāciju. Noteikti rūpīgi pierakstiet visus datus, jo vēlāk mums tie būs precīzi jāsaskaņo konfigurācijas failā. Pēc tam palaidiet komandu ls ~ / .gnupg, lai pārliecinātos, ka eksistē jaunā atslēga (tas ir faila nosaukums_pavediena.gpg). No tā izveidojiet publisko atslēgu:

Gpg -a --output ~ / .gnupg / .gpg --eksportēt "[jūsu vārds]"

Importējiet to ar:

Gpg --import ~ / .gnupg / .gpg

05. solis: Lejupielādējiet paketi

Šajā piemērā mēs lejupielādēsim un izveidosim jaunāko Dillo tīmekļa pārlūkprogrammas versiju. Dodieties uz Dillo vietni (www.dillo.org) un lejupielādējiet jaunāko .tar.bz arhīvu. Izmantojiet komandu mkdir ~ / srcand, lai izveidotu avota direktoriju un pārvietotu arhīvu tajā.

06. darbība: Izpakojiet arhīvu

Izpakojiet arhīvu ar darvas komandas-xjvf [arhīva nosaukums] .tar.bz2. Ņemiet vērā, ka mūsu mērķiem ir svarīgi ievērot direktoriju nosaukumu konvencijas (pakotnes versiju), un par laimi Dillo pakete to dara. Ir arī svarīgi, lai avota arhīvs atrastos vienā līmenī virs avota direktorija.

07. solis: Konfigurēšana Debian

Pārvietojiet skriptu dh_make tikko izsaiņotajā direktorijā, kas parūpēsies par lielāko daļu darba - pievienojiet konfigurācijas failu un izveidojiet direktoriju struktūru, kas ir daļa no iepriekš pievienotās izstrādātāja rīkkopas.

Dh_make -e -c licence -f ../

Mūsu piemērā komandrinda izskatīsies šādi:

Dh_make -c gpl3 -e [e-pasts aizsargāts]-f ../dillo-3.0.3.tar.bz2

Kad tiek prasīts, atlasiet vienu bināru. Palīga skripta avota direktorijā jāizveido direktorijs ar nosaukumu Debian.

8. solis: Atveriet vadības failu

Atvērt teksta redaktors vadības fails Debian apakšdirektorijā. Aizpildiet sadaļu “Sākums” (izmantojiet Google, lai aizpildītu Debian programmu sarakstu) un šī faila apraksta laukus.

9. solis: Izpētiet esošās atkarības

Varat izpētīt, kādas atkarības ir nepieciešamas, lai palaistu komplektēto programmu. Pārslēdzieties uz avota direktoriju un terminālā ierakstiet dpkg-depcheck -d ./configure. Ja to izdarīsit, jūs saņemsit kļūdas, norādot, kuras paketes trūkst, kas nepieciešama programmas izveidošanai (piegādāta atsevišķi). Šo pakotni var atvērt, ierakstot sudo apt-get build-dep [pakotnes nosaukums], un tam vajadzētu palīdzēt, ja pakete tiek atbalstīta izplatīšanas krātuvē. Ja tas netiek atbalstīts, jums būs atkārtoti jādarbina dpkg-depcheck -d ./configur un jāpievieno pakotnes manuāli, ierakstot psudo apt-get install [paketes nosaukums].

10. solis: Vadības failā pievienojiet atkarības

Kad visas darbības no iepriekšējās darbības ir pabeigtas, jums vajadzētu būt visu nepieciešamo pakotņu sarakstam. Pievienojiet šo atkarību sarakstu vadības faila sadaļai atkarīgs: Sarakstā esošajam vienumam jābūt atdalītam ar komatu un atstarpi.

Izmēģiniet šo soli, cik vien iespējams, un neizlaidiet to. Avots: parasti ir mājas lapa projektu. Sadaļā Faili: * aizstājiet informāciju par autortiesībām ar projekta autoru vārdiem. Varat redzēt sadaļu Faili: debian / * aizpildīšanas piemēru, kurā jāievada atbilstošā informācija. Jums var būt nepieciešams mazliet detektīvs, lai atrastu nepieciešamo informāciju. Avota direktorijā meklējiet tādus failus kā AUTHORS un COPYING.

12. darbība: Rediģējiet izmaiņu žurnāla failu

Atveriet izmaiņu žurnāla failu un pārliecinieties, vai nosaukums un adrese E-pasts ir tādas pašas kā tās, kuras ievadījāt, izveidojot GPG atslēgu. Parasti palīgs skripts var pievienot failam lietotājvārdu, nevis jūsu īsto vārdu. Tāpat kā ar autortiesību failu, neizlaidiet šo sadaļu, jo tas var apturēt paketes izveides procesu vai izveidot nepareizu pakotni.

13. solis: Izveidojiet paketi

Ja viss ir pareizi konfigurēts, mēs beidzot varam izveidot DEB pakotni. Pārslēdzieties uz pirmkodu direktoriju un, lai izveidotu pakotni, kas tiks ievietota direktorijā ~ / src /, ierakstiet dpkg-buildpackage -b. Piemēram, izveidojiet pakotni, izmantojot komandu dpkg -I [package]. Lai pārbaudītu Debian politikas atbilstību, izmantojiet komandu lintian [package], lai palaistu programmu Lintian. Ņemiet vērā, ka šis rīks, kā zināms, ir stingrs, un jums ir jāizlemj, vai daži nelieli brīdinājumi par neatbilstību jums ir pieņemami. Visbeidzot, instalējiet pakotni, izmantojot komandu sudo dpgk -i [pakete].

2. daļa: RPM izveide Fedorā

14. solis: Atveriet vadības failu

Pārslēdzieties uz root lietotāja režīmu, ierakstot su. Sāciet ar izstrādes rīku instalēšanas grupu yum un pēc tam izmantojiet yum, lai instalētu gcc-c ++ fedora-bundler. Palaidiet komandu usermod -a -G izspēles, lai pievienotu savu lietotāju izspēles grupai. Tas ļauj mums pabeigt izveidošanas procedūru, nepārejot uz galvenā lietotāja lomu.

15. solis: Izveidojiet būvēšanas vidi

Nospiediet Ctrl + D, lai atteiktos no saknes lomas. Ievadiet rpmdev-setuptree, lai izveidotu direktoriju koku (zem ~ / rpmbuild), kas mums nepieciešams.

16. darbība: Lejupielādējiet arhīvu un pārvietojiet to vēlamajā vietā

Lejupielādējiet Dillo pakotni no Dillo vietnes un pārvietojiet arhīvu uz atbilstošo direktoriju - ierakstiet mv [arhīva nosaukums] ~ / rpmbuild / SOURCES.

17. solis Izveidojiet .spec failu

Red Hat balstīti izplatījumi, piemēram, Fedora, izmanto .spec failus, lai norādītu būvēšanas procesu. Izmantojot komandu cd ~ / rpmbuild / SPECS / andcreateablank.spec, pārejiet uz direktoriju, kurā atrodas šie faili, un izveidojiet tukšu .spec failu, izmantojot komandu rpmdev-newspaperec dillo.

18. solis Rediģējiet .spec failu

Palaidiet komandu gedit dillo.spec. Aizpildiet laukus Versija, Kopsavilkuma licence ( Šis gadījums- GPLv3 +). URL norāda Mājas lapa projekts; Source0 norāda avota koda adresi. Sniedziet komentārus laukos BuildRequires un Requires. Pievienot Pilns apraksts uz% description apgabalu.

19. solis Veidot pirmkodu

Ja pakete sistēmā vispār tiek atbalstīta, palaidiet komandu yum-builddep [pakotnes nosaukums]. Pretējā gadījumā jums būs jāatkārto komanda build, lai saņemtu kļūdu ziņojumus, vai meklēt dokumentāciju avota arhīvā. SPEC direktorijā ierakstiet rpmbuild -ba [pakotnes nosaukums] .spec. Ja šī būvēšana neizdodas un jūs saņemat ziņojumus par papildu neiesaiņotiem failiem, atlasiet un kopējiet šo failu sarakstu faila.spec sadaļā% files un atkārtoti iesniedziet komandu build. Pakotne tagad atradīsies RPMS direktorijā. Lai to instalētu, ierakstiet rpm -ivh [package]. Rpm -qa tips grep [pakete], lai pārliecinātos, ka tā ir instalēta.

Centīšos pēc iespējas vieglāk aprakstīt deb pakotņu izveidošanas procesu, kā piemēru izmantojot ruby-zookeper. Es jūs tūlīt brīdinu, ka manis aprakstītā rubīna dārgakmeņu iesaiņošanas metode ir nepareiza, labāk šim nolūkam izmantot gem2deb, bet tā kā izveidojiet ruby-zookeper no avotiem, izmantojot gem2deb jaunākā versija Man nepaveicās, tad šeit ir vienkāršākā montāžas metode.

Ja jūs veidosiet rubīna pakas, kā ieteikts, izmantojot gem2deb, tad labāk ir pievienot līniju

Eksportēt DH_RUBY_IGNORE_TESTS = visus / eksportēt DH_RUBY_IGNORE_TESTS = visus

debianā / noteikumos.

Tā kā mēs izveidosim rubīna kodu, tad mums ir nepieciešams rubīns un rīku komplekts deb pakotņu veidošanai.

Sudo apt-get instalējiet rubīnu dpkg-dev

Ja Jums ir vecā versija rubīns, tad tajā nav komandas gem, jums būs arī jāinstalē pakete rubygems vai jāatjaunina rubīns.

Tagad uzstādīsim dārgakmeni fpm kas mums izveidos deb paketi.

Sudo gem instalējiet fpm fpm -s gem -t deb zookeeper

Pašreizējā direktorijā mums ir pakete rubygem-zookeeper_1.4.11_amd64.deb, šķiet, ka tas jau ir somā, bet kopš tā laika mums ir nepieciešama avota pakete, lai varētu no tās sastādīt deb, piemēram, OBS, tad mēs turpināsim.

Izveidosim būvēšanas direktoriju

Cp rubygem-zookeeper_1.4.11_amd64.deb ~ / cd mkdir -p ruby-zookeeper / fakeroot cd ruby-zookeeper / fakeroot

Iegūsim tajā tikko samontētā iepakojuma saturu.

Dpkg-deb -R ~ / rubygem-zookeeper_1.4.11_amd64.deb ruby-zookeeper_1.4.11-1

Tagad mēs izveidosim failus, kas nepieciešami pakotnes izveidošanai. Viņiem vajadzētu būt debian direktorijā. Mēs varam nokopēt dažus failus no izpakotā iepakojuma.

Mkdir debian cp rubygem-zookeeper_1.4.11-1 / DEBIAN / control debian / control

Rediģēsim to nākamajā stāvoklī. Neaizmirstiet nomainīt uzturētāju

Avots: rubīna zookeeper uzturētājs: Sadaļa: rubīns Build-Depends: debhelper (> = 7.0.50 ~) Prioritāte: extra Mājas lapa: https://github.com/slyphon/zookeeper Iepakojums: ruby-zookeeper Arhitektūra: amd64 Depends: $ (shlibs: Depends) , $ (misc: Depends), rubīns Apraksts: Zema līmeņa vairāku rubīnu iesaiņojums ap ZooKeeper API stiprinājumiem. Draudzīgāku saskarni skatiet vietnē http://github.com/slyphon/zk. Pašlaik tiek atbalstīta: MRI: (1.8.7, 1.9.2, 1.9.3), JRuby: ~> 1.6.7, Rubinius: 2.0.testēšana, REE 1.8.7. ... Šajā bibliotēkā tiek izmantota zookeeper saistījumu versija 3.4.5.

Mums ir nepieciešami arī debian / noteikumi. Izveidosim to. override_dh_shlibdeps ir nepieciešams, lai nepārbaudītu zookeeper bibliotēku saistīšanu, jo tas nepāriet.

#! / usr / bin / make -f # - * - makefile - * -%: dh [e-pasts aizsargāts] override_dh_shlibdeps: taisnība

Debian / noteikumi cilnes ir nepieciešamas, un tās nevar aizstāt ar atstarpēm. Padarīsim to izpildāmu.

Chmod + x debian / noteikumi

Usr / * var / *

Tagad izveidosim debian / changelog un rakstīsim tur:

Rubīna zoodārza sargs (1.4.11-1) NELIETOTS; steidzamība = vidēja * Sākotnējā atbrīvošana - sakne Trešdiena, 2015. gada 25. novembris 20:01:55 +0300

Mums vajag arī debian / compat

Echo 7> debian / compat

Kopēsim instalējamos failus uz vietējo direktoriju un izdzēsīsim mapi ar izpakotu paketi, tā mums vairs nebūs noderīga.

Mv ruby-zookeeper_1.4.11-1 / (usr, var). rm -r rubīns-zoodārznieks_1.4.11-1

Izveidosim jaunu pakotni, kā arī avota pakotni.

Dpkg-buildpackage -rfakeroot -uc -F

Iepriekš direktorijā mums būs visi nepieciešamie faili.

Ll .. kopā 5528 drwxr-xr-x 3 saknes sakne 4096 20. decembris 20 13:32 ./ drwx ------ 12 saknes sakne 4096 20. decembris 13:31 ../ drwxr-xr-x 5 saknes sakne 4096 decembris 20 13:28 fakeroot / -rw-r - r-- 1 saknes sakne 1261 gada 20. decembris 13:32 ruby-zookeeper_1.4.11-1_amd64.changes -rw-r - r-- 1 saknes sakne 2375044 20. decembris 13 13: 32 rubīns -zookeeper_1.4.11-1_amd64.deb -rw-r - r-- 1 saknes sakne 565. gada 20. decembrī 13:32 ruby-zookeeper_1.4.11-1.dsc -rw-r - r-- 1 saknes sakne 3263381 20. decembra 13: 32 rubīnu zoodārza turētājs_1.4.11-1.tar.gz

Jūs varat pārbaudīt iegūtās deb pakotnes saturu

deb fails ir formāta arhīvs ar satur programmas instalācijas failus, informāciju par programmu, kā arī skriptus (pakešfailus), kas izpildīti pirms un pēc programmas instalēšanas un atinstalēšanas (skriptu klātbūtne nav obligāta - tie var nebūt iekļauti paketē).

Deb faila formāts ir aprakstīts deb (5) man lapās - šī palīdzība tiek parādīta, kad terminālā ierakstāt man deb. Internetā ir arī daudzas lapas, kurās ir šī informācija - vienkārši atrodiet meklēšanas joslā deb (5), lai tās atrastu. Šī rokasgrāmata šeit nav iekļauta, jo tā ir oficiālā Debian izstrādātāju rokasgrāmata, pakotnes formāta atsauce (kas rakstīšanas laikā atrodas vietnē http://www.debian.org/doc/manuals/debian-faq/ch- pkg_basics .en.html) ir rakstīts, ka pakešu formāts var mainīties, un tāpēc darbam ar tiem ieteicams izmantot utilītu dpkg-deb. Palīdzību par utilītas dpkg-deb izmantošanu varat saņemt, terminālā ierakstot man dpkg-deb.

GUI-deb programmas uzdevums ir tieši izveidot direktoriju, kurā ir nepieciešamie dati, un sākt programmu dpkg-deb, norādot šo direktoriju un citus nepieciešamos parametrus.

Pareizajā direktorijā dpkg-deb, lai izveidotu instalācijas pakotni, vispirms jāietver apakšdirektorija "DEBIAN". Šajā direktorijā jāiekļauj visi dati, kas sistēmā netiek kopēti, bet programmas tieši izmanto darbam ar pakotnēm - informācija par pakotni, kas izpildīta pirms un pēc instalēšanas, skripti utt. Instalējot pakotni, neviens fails, kas atrodas direktorijā DEBIAN, netiks pārsūtīts uz tā datora failu sistēmu, kurā pakotne tiek instalēta.

Ārpus direktorija "DEBIAN" ir faili, kas tiks kopēti tā datora failu sistēmā, kurā tiks instalēta pakotne. Failiem jāatrodas direktorijos, kur tie tiks ievietoti, instalējot pakotni. Tas ir, direktorijā, kas izveidots dpkg-deb, jāizveido mums nepieciešamo failu sistēmas daļu kopija - it kā šī direktorija būtu tās sakne ("/"). Tas ir, piemēram, ja direktorija nosaukums, uz kura pamata tiks izveidota pakete, ir "~ / TMP_DEBS / MyProgram", un jums ir failu sistēma fails "MyProgram.png" tika ierakstīts direktorijā "/ usr / share / pixmaps" - direktorijā "~ / TMP_DEBS / MyProgram" jāizveido direktorija "usr", tajā - direktorija "share", iekšpusē "share" - direktorija "pixmaps" un ievietojiet failu "MyProgram.png" direktorijā "pixmaps". Rezultātā pilns faila ceļš būs "~ / TMP_DEBS / MyProgram / usr / share / pixmaps / MyProgram.png". Veidojot pakotni, daļa no direktorija "~ / TMP_DEBS / MyProgram" tiks nogriezta, un instalēšanas laikā fails "MyProgram.png" vienkārši nokļūs pareizo adresi"/ usr / share / pixmaps". Tādējādi katram failam ir jāizveido nepieciešamie direktoriji.

Pēc direktorija izveides atliek tikai palaist dpkg-deb, nododot vēlamos parametrus... Pakotņu veidošanai visvairāk nepieciešamās opcijas dpkg-deb ir aprakstītas sadaļā "Komandrindas opcijas utilītam dpkg-deb". Ja vadības failā nav kļūdu, tiks izveidota instalācijas pakotne.

Programmu instalēšanai ir vairāki veidi. Gandrīz visiem ir kopīga daļa - avotu izpakošana:

Tar xvfj mega_app.tar.bz2

Tar xvfz mega_app.tar.gz

Izpildiet komandu ./konfigurēt, pēc tam veidot... Šīs komandas tiek izmantotas, lai izveidotu izpildāmos failus, bibliotēkas utt. No avota kodiem.
Atsevišķi ir vērts atzīmēt pirmo komandu - ./konfigurēt
Ja jūs izpildāt ./configure --help tad jūs saņemsiet sarakstu ar parametriem, kurus var nodot ./konfigurēt
Piemēram, bieži ir iespējama šāda komanda:

./configure --prefix = / opt / mega_app

Vai arī norādiet ceļu uz bibliotēku, kas kādu iemeslu dēļ nav atrasta pati:

./konfigurēt --kerberos-lib = / opt / kerberos / lib

Klasisks.
Tātad mēs veicam secību:

./konfigurēt izgatavošanu

Un komanda, kas faktiski instalē visus programmas komponentus sistēmā:

Veiciet instalēšanu

BRĪDINĀJUMS !!! Izmantojot šo metodi, vēlāk ir viegli iegūt ļoti nopietnas problēmas. Pirmkārt, visticamāk, jūs nevarēsiet atinstalēt programmu (veiciet atinstalēšanu).

Mēs izmantojam Checkinstall programmu.
Pareizais ceļš. Pēc vispārīgās daļas pabeigšanas palaidiet:

Pati programma jums jautās par visu, vai arī jūs varat visur nospiest taustiņu ENTER.
cilvēks checkinstall arī ļoti labs veids :))

Pakotnes veidošana no avota Debian.
Tas ir atsevišķs un grūts ceļš- jums ir jāsaprot daudzi deb pakotņu (vai citu) veidošanas aspekti. Šis ceļš šeit netiks pilnībā aprakstīts, tikai piemērs tam, kā no jau sagatavotiem materiāliem salikt iepakojumu.
Tātad, šeit ir piemērs. Mēs dodamies uz paketēm.ubuntu.com, atrodam nepieciešamo pakotni (piemēram, diff) un lejupielādējam divus failus - avotu (http: //archive.ubuntu.com/ubuntu/pool/main/d/diffutils/diffutils_2.8.1. o ...) un ielāpu tam, kas izlabos avotus un izveidos debian mapi ar burvju likumu failu iekšpusē (http: //archive.ubuntu.com/ubuntu/pool/main/d/diffutils/diffutils_2. 8,1-1 ...).
Kopējiet tos mapē ~ / test un vispirms izpakojiet avotus:

Tar xvfz diffutils_2.8.1.orig.tar.gz

Pēc tam pielīmējiet plāksteri:

Cd diffutils-2.8.1 / gzip -cd ../diffutils_2.8.1-11ubuntu4.diff.gz | plāksteris -p1

Tagad mums tas jādara debian / noteikumi izpildāms:

Chmod + x debian / noteikumi

Un savāciet iepakojumu:

Fakeroot debian / noteikumi binārs

Fakeroot ir nepieciešams, lai izveidotu paketi parastam lietotājam (parasti daudzas nepieciešamās darbības neļautu jums izveidot pakotni).

Ls ../ diff_2.8.1-11ubuntu4_i386.deb diffutils-2.8.1 diffutils_2.8.1-11ubuntu4.diff.gz diffutils_2.8.1.orig.tar.gz

Kā redzat, iepakojums ir gatavs.

Vai Debian:

wget paketes_nosaukums.dsc, paketes_nosaukums.diff.gz, paketes_nosaukums.orig.tar.gz dpkg-avots -x paketes_nosaukums.dsc cd. / paketes_nosaukums / dpkg-buildpackage -rfakeroot

Secinājums
Ir arī metodes - padarīt paketi no sākuma līdz beigām. Ir nepieciešams paņemt rokasgrāmatu paku izveidei no izplatīšanas komplekta un izpētīt šo procesu no tā un uz to. Izgatavojiet daudz, labu un nepieciešamu iepakojumu. Ja izveidojāt labu uzbūvi - nosūtiet to izplatīšanas komplekta izstrādātājiem, saglabājiet to atjauninājumu. Atcerieties, ka pat viena jūsu uzturētā pakete var būt noderīga simtiem cilvēku visā pasaulē.

Atstāsim nelielu pārtraukumu un noskatīsimies video par SEO vietņu optimizāciju: