abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 08:00 | Nová verze
Před 15 lety, 1. října 1999, byla vydána první stabilní verze 1.0 unixového tiskového systému CUPS (Common Unix Printing System). Při této příležitosti vyšel CUPS 2.0.0. Přehled oprav a novinek v poznámkách k vydání.
Ladislav Hagara | Komentářů: 2
včera 23:03 | Zajímavý software
Byla vydána verze 0.6.0 multimediálního přehrávače mpv. Přehrávač mpv vychází z přehrávačů MPlayer a mplayer2. Rozdíly mezi přehrávači jsou uvedeny v dokumentaci.
Ladislav Hagara | Komentářů: 7
včera 15:19 | Zajímavý článek
Organizace Electronic Frontier Foundation (EFF) upozorňuje v rámci seriálu Stupidní patent měsíce (I, II) na společnost Blue Spike. Ta se během 14 dnů začala soudit hned s 45 společnostmi (Patent Blast). Prý porušují její 4 patenty US 7,346,472, US 7,660,700, US 7,949,494 a US 8,214,175. Patenty mají stejný název – Způsob a zařízení pro monitorování a analýzu signálů. Stejný je i abstrakt. Liší se jenom v nárocích. EFF na patentech ilustruje… více »
Ladislav Hagara | Komentářů: 9
30.9. 22:22 | Zajímavý projekt
Mozilla představuje na svém blogu Mozilla Hacks zaměřeném na vývojáře zařízení Matchstick s Firefox OS. Jedná se o otevřenou alternativu k Chromecastu. Otevřený je jak software, tak i hardware. Projekt lze podpořit na Kickstarteru. Matchstick lze objednat za 18 dolarů.
Ladislav Hagara | Komentářů: 1
30.9. 11:19 | Zajímavý projekt
V prosinci 2012 byl potvrzen linuxový port legendárního RPG Baldur's Gate (zprávička). Trent Oster před několika hodinami na Twitteru oznámil, že bylo na Steamu spuštěno testování Baldur's Gate: Enhanced Edition verze 1.3.
Ladislav Hagara | Komentářů: 49
30.9. 09:17 | Pozvánky
S novým semestrem se nám opět rozjíždí cyklus Androidích přednášek a setkání Android vývojářů aDev Meetups. Přijďte si ve středu 8. října v 18 hodin do budovy FIT ČVUT poslechnout přednášku od Jany Moudré o tom, jak se dá automatizovat testování uživatelského rozhraní. … více »
Gug.cz | Komentářů: 0
27.9. 22:02 | Humor
Dnes, 27.9.2014, slaví životní jubileum Larry Wall, jeden z největších programátorů historie. Evropské oslavy tohoto významného jubilea se konají dnes v obci Perl, která sousedí s městečkem Schengen na hranici mezi Sárskem a Lucemburskem. Laudatio pronesou pánové Guido van Rossum a Yukihiro Matsumoto. :-)
m-bi | Komentářů: 184
27.9. 12:24 | Nová verze
Vyšla OpenMandriva Lx 2014.1. Jedná se o opravné vydání OpenMandrivy Lx 2014.0 (zprávička). Opravuje 233 chyb. Řada balíčků byla aktualizována. Nejnovější OpenMandriva přináší Linux 3.15.10 (nrjQL), KDE 4.13.3, Firefox 32.0.3 nebo LibreOffice 4.3.1. Podrobnosti v poznámkách k vydání.
Ladislav Hagara | Komentářů: 11
26.9. 21:42 | Humor
Shellshock není jenom aktuální bezpečnostní problém v Bashi (zprávička). Již v březnu 2012 byla představena v Bashi napsaná vesmírná střílečka ShellShock.
Ladislav Hagara | Komentářů: 8
26.9. 12:22 | Pozvánky

Letošní ročník konference LinuxDays vám přinese 47 přednášek od zajímavých osobností nejen z linuxového světa, stánky velkých i malých projektů, stavbu 3D tiskáren, HPC workshop, občerstvení s dobrou kávou a hlavně setkání se zajímavými lidmi pohybujícími se okolo otevřeného světa.

… více »
Petr Krčmář | Komentářů: 0
Hlasuji z:
 (81%)
 (13%)
 (3%)
 (2%)
 (1%)
 (1%)
Celkem 3976 hlasů
 Komentářů: 45, poslední 21.9. 11:10
Rozcestník
Reklama
Autoškola testy online Levný benzín

Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)

23. 10. 2008 | Michal Čihař | Návody | 3049×

Předchozích jedenáct dílů vás provedlo základy vytváření balíčků pro Debian. Tento poslední díl je jakási všehochuť doplňující některé chybějící informace a drobné změny, ke kterým došlo, než byl seriál dopsán, nebo které se chystají.

Obsah

Verze balíčků

link

Verze balíčku je ve většině případů jen kombinací verze zabaleného softwaru a revize balíčku pro Debian, tedy něco jako 1.2.3-1. Bohužel ne vždy je to tak jednoduché a verze může klidně narůst do obludností jako například 3:3.10.dfsg.4~r3724-1.1+b1. Obecně můžeme popsat verzi jako [epocha:]verze_programu[-revize_balíčku], kde jediná povinná část je verze programu, ostatní nemusí být použity.

Porovnávání verzí postupuje zleva doprava a vždy je nejdříve lexikálně porovnána nenumerická část a poté numerická část jako čísla a tyto kroky se opakují, dokud je co porovnávat. Nevyplněná epocha se považuje za 0, stejně tak jako nepoužitá revize. Lexikografické porovnání je trochu zvláštní -- nejnižší hodnotu má tilda (~), která má dokonce menší hodnotu než prázdný text, poté všechna písmena a nakonec ostatní povolené znaky (+, ., případně - a :). Porovnání si můžete vyzkoušet pomocí dpkg --compare-versions.

Epocha

link

Epocha se používá obvykle za situace, kdy se z nějakého důvodu změnilo číslování verzí programů a novější verze mají nižší číslo než starší. Epocha obsahuje jediné (obvykle malé) celé kladné číslo. Například při modularizaci X.org spousta balíčků přešla z verze 7.0 na 1.0 a správce balíčků by si tedy myslel, že se nejedná o novější verzi. Přidáním epochy se porovnávají verze 7.0 a 1:1.0, kde první sice nemá explicitní epochu uvedenu, ale použije se implicitní hodnota 0. Tímto trikem tedy zajistíme, že verze 1.0 bude považována za novější než 7.0.

Verze

link

Verze programu je obvykle to, co používá jeho autor. Nicméně občas dojde na situaci, kdy nemůže být verze použita přímo, ale musíme jí trochu přiohnout. A jak můžete vidět z příkladu v úvodu, je zde prostoru pro ohýbání dost.

Přebalení tarballu

link

Pokud je potřeba tarball z nějakého důvodu (obvykle licenčního) přebalit oproti tomu, který šíří původní autor, musíme to vyznačit ve verzi. Toto se provede přidáním textu dfsg (zkratka Debian Free Software Guidelines) do verze. Pokud očekáváme, že na první pokus nebude vše ještě úplně v pořádku, můžeme použít i verzi přebalení. Verze balíčku pak může vypadat například 3.10.dfsg.4. Jako oddělovací znak mezi verzí a textem dfsg se kromě tečky může použít i plus, záleží na preferenci autora (verze tedy může být 1.2+dfsg).

Pokud je tarball přebalen z jiných důvodů než kvůli licencím, místo textu dfsg se použije text debian, ale tato situace není moc častá.

SVN snapshoty, alfa verze a podobné

link

Pokud se jedná třeba o snapshot ze SVN nebo alfa verzi, musíme to nějak zohlednit ve verzi. Pro tyto případy se používá už dříve zmíněná tilda, která zajistí, že verze 3.10~alpha1 bude menší než 3.10. Podobně snapshot verze 1.2 pojmenujeme 1.2~r1234 a při vydání finální verze můžeme použít verzi 1.2.

Revize, nativní balíčky

link

Revize balíčku je obvykle jen kladné celé číslo, ale při dále zmíněných situacích se může zkomplikovat. Revize se nepoužívá jen pro nativní programy, tedy věci vyvíjené přímo pro Debian (tedy tak by to mělo být, nicméně skutečnost je občas poněkud jiná).

NMU

link

Pokud není správce balíčku k dispozici, nebo nereaguje dostatečně rychle na kritické chyby, může jiný Debian developer zaskočit a nahrát do archívu opravenou verzi. Tomuto se říká Non-Maintainer Upload a zkracuje se to NMU. Pro takovouto verzi se ovšem nepoužije standardní číslování (tedy zvýšení revize), ale za revizi se rozšíří o tečku a další číslo. Případné další NMU už jen zvyšují číslo za tečkou, takže balíček můžeme třeba dostat ve verzi 1.0-1.3, což znamená, že na balíčku byly provedeny tři změny prostřednictvím NMU.

Binární NMU

link

Pokud je potřeba balíček překompilovat (například se změnilo soname knihovny, kterou program používá) a není potřeba nijak měnit zdrojový balíček, může dojít k binárnímu NMU -- balíček je jen překompilován, ale zdrojový balíček zůstal beze změny. Binární balíček má poté k revizi připojenu indikaci tohoto stavu, a to ve formě +b1. Opět je možné tento proces opakovat a získat tak verzi 2.3-1+b4.

Backporty

link

V případě, že používáme backportované balíčky, tak by měly mít ještě revizi rozšířenou o indikaci backportu: ~bpo${debian_release}+${build_int}. První backport balíčku v původní verzi 1.0-1 pro Debian 4.0 (etch) tedy bude mít verzi 1.0-1~bpo40+1. Při změnách v backportovaném balíčku se zvyšuje poslední číslice, tilda v revizi zajistí přeinstalování balíčkem z distribuce při aktualizaci, protože původní verze je považována za novější.

Jaké změny hrozí?

link

Když je seriál na konci, je na čase čtenáře připravit na případné změny, které v dohledné době nastanou (nebo mohou nastat). Tento seznam rozhodně není autoritativní, je jen založen na pozorováních autora a jeho odhadu, takže všechno nakonec může dopadnout úplně jinak :-).

Nejbližší změna se asi bude týkat zdrojových balíčků, protože brzy po vydání Lennyho již pravděpodobně bude povoleno používání verze 3.0 a tedy možnosti použít více tarballů a sadu patchů. Tato změna se ovšem také promítne do Debian Policy spolu s dalšími menšími úpravami (takže do Standards-Version budeme opět psát vyšší číslo).

Strojově zpracovatelný debian/copyright si také získává stále větší oblibu a dnes již u nových balíčků převažuje. Proto je na čase si na jeho používání zvyknout. Tento formát se pravděpodobně také do dalšího vydání stane součástí Debian Policy.

Další změna bude užitečná především pro velké balíčky -- bude možné volitelně balíček komprimovat pomocí lzma. Jedná se sice o podstatně lepší kompresní algoritmus, ale také mnohem náročnější na paměť a výkon, proto nebude použit jako výchozí pro celou distribuci, ale jen pro balíčky, kde se jeho použitím ušetří značné místo a u kterých se dá předpokládat, že uživatel disponuje dostatečně výkonným hardwarem (např. pokud chce někdo provozovat OpenOffice.org, tak se dá předpokládat, že to nebude na počítači s 16 MB paměti).

       

Hodnocení: 100 %

        špatnédobré        

Nástroje: Tisk bez diskuse

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

23.10.2008 09:25 r0
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
diky moc za vyborny serial
23.10.2008 09:42 Robert Krátký | skóre: 94 | blog: Robertův bloček | Praha
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
Připojuji se, něco takového mi velmi chybělo.
23.10.2008 13:12 Pev | skóre: 28
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
Taky moc děkuji.

Jak za celý seriál tak za tento díl - konečně vím, jak to s těmi divnými verzemi je :-).
23.10.2008 09:58 Michal.P
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
Super seriál. Díky!
23.10.2008 10:35 zito | blog: zito
Rozbalit Rozbalit vše skvělý seriál
Nedávno jsem tyhle informace vstřebával z Debian Policy Manual, Debian Developer's Reference, Debian New Maintainers' Guide apod. a tohle je výborné intro. I když jsem už základ celkem měl, tak jsem se stejně dozvěděl některé další souvislosti.

Výborná práce - díky!
belisarivs avatar 23.10.2008 11:30 belisarivs | skóre: 22 | blog: Psychobláboly
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
LZMA je IMHo narocne jenom na kompresi. Dekomprese ma byt zase pro zmenu velice nenarocna.

Vim, ze nebyl problem nainstalovat veci v instalatoru NSIS kompiromavanem LZMA a velikem ~ 800 MB na 333 MHz K6.

Ale zkomprimovat to na nem uz neslo.
IRC is just multiplayer notepad.
23.10.2008 11:43 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
Při dekompresi je asi třikrát pomalejší než gzip a potřebuje podstatně víc paměti (u lzma to dost záleží na stupni komprese). Což je rozdíl, který je na embedded zařízeních docela znát a prostě to u většiny věcí nestojí za tu drobnou úsporu místa.
belisarivs avatar 23.10.2008 13:48 belisarivs | skóre: 22 | blog: Psychobláboly
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
http://en.wikipedia.org/wiki/Lzma

Decompression-only code for LZMA generally compiles to around 5kB and the amount of RAM required during decompression is principally determined by the size of the sliding window used during compression. Small code size and relatively low memory overhead, particularly with smaller dictionary lengths, make the LZMA decompression algorithm well-suited to embedded applications.
IRC is just multiplayer notepad.
23.10.2008 14:54 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
Při defaultní kompresi podle man stránky potřebuje lzma 9 MB na dekompresi. To je luxus, který je na systému s 16 MB docela drahý a bez swapu v podstatě nemožný (package manager a ostatní procesy taky něco potřebují).
belisarivs avatar 23.10.2008 17:28 belisarivs | skóre: 22 | blog: Psychobláboly
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
OK. S 16 MB embedded jsem nepocital. Na druhou stranu, je dobry napad na ne cpat Debian? nebudou veci jako OpenWRT lepsi?
IRC is just multiplayer notepad.
23.10.2008 23:17 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
No ono i když přidáme na dvojnásobek, tak na 32MB je těch 9MB pro dekompresi je docela dost. A pořád je pohodlnější mít plnodnotnou distribuci než ořezanou věc typu OpenWRT.
24.10.2008 01:23 Pev | skóre: 28
Rozbalit Rozbalit vše Re: Balíčky pro Debian - 12 (závěr aneb co se jinam nevešlo)
OK. S 16 MB embedded jsem nepocital. Na druhou stranu, je dobry napad na ne cpat Debian? nebudou veci jako OpenWRT lepsi?
U nás v síti je na routerboardu s 59MB (tak to píše free) Debian a jsem za něj moc rád :-).

Použito bývá víc než polovina...

Založit nové vláknoNahoru

ISSN 1214-1267   Powered by Hosting 90 Server hosting
© 1999-2013 Argonit s. r. o. Všechna práva vyhrazena.