Hlavní navigace

Softwarová sklizeň (7. 8. 2002)

Michal Krause

Oblíbená sonda do světa (převážně) otevřeného softwaru. Dnes tu máme zajímavý projekt pro implementaci virtuálních souborových systémů, jednoduchou utilitku usnadňující vypalování audio CD, otevřenou implementaci kodeku JPEG-2000 a mnoho dalšího.

Pondělí 5. 8.
Pascal To Doxygen Convertor nebo též Pas2Dox je preprocesor pro dokumentační systém Doxygen, díky kterému mohou vývojáři komentovat pascalovský kód jednoduchými značkami ve stylu JavaDocu a podobných projektů. Pas2Dox je samozřejmě cílen zejména na uživatele Kylixu, případně Delphi, ale zřejmě by měl fungovat i s „obyčejným“ Pascalem.
Pro někoho je to možná překvapením, jiní o tom byli skálopevně přesvědčeni, ale faktem je, že jazyk C#, který navrhl Microsoft pro svou platformu .NET, si nachází stále více vyznavačů i mimo svět Windows. Jedním z prvních otevřených projektů, které s tímto jazykem souvisejí, je i Qt#, propojení GUI toolkitu Qt a C#. Qt# by měl podporovat všechny nejvýznamnější implementace .NETu – Mono, Portable.NET i původní Microsoft.NET.
Nová preverze MPlayeru

podporuje tři nové důležité kodeky: microsoftí WMV1, Sorenson v1 používaný zejména v QuickTime videích a rodinu kodeků RV20/RV30/Cook od RealNetworks (RealPlayer 8.0).
Vyšel OpenOffice.org 1.0.1.

Neděle 4. 8.
Pod prostým názvem SimpleTemplate se ukrývá další šablonový systém pro PHP, který stojí za zmínku. Mezi jeho nejzajímavější vlastnosti patří implementace jakéhosi kompilátoru, který může udržovat šablony v „předkompilované“ podobě a ušetřit tak čas při opakovaném zpracování, nechybí také možnost kešovat kompletní výsledek transformace (tedy vlastně výsledný HTML dokument) či podpora vícejazyčných webů. Zajímavá je také možnost definovat různé parametry pro jednotlivé šablony či celé adresáře, takže vývojář může například velmi precizně určovat, co má a nemá smysl kešovat a podobně.
Aktuální verze programu Scribus konečně obsahuje funkci Undo. Navíc přibyla podpora jednotek palec a pica a color management je nyní implementován pomocí LittleCMS 1.09.

Sobota 3. 8.
O implementaci takzvaného DNS key serveru jsme se tu už zmiňovali. Výhody tohoto řešení jsou zřejmé – distribuované kešování, automatické překonání výpadků serverů či možnost výběru geograficky nejbližšího serveru. Ovšem nic z toho si příliš neužijete, nebudete-li mít klienta, který umí s DNS key servery komunikovat. Takovým klientem je například plugin pro GPG s dlouhatánským názvem GNU Privacy Guard DNS keyserver client. Pakliže si jej nainstalujete, stačí už jenom použít coby jméno keyserveru URL v podobě jkp://cosi.kdesi a o víc se nemusíte starat.
Nová verze Offline HTMLHelp.com Validatoru podporuje kromě HTML a XHTML také validaci MathML 2.0 a WML 1.0 až 3.0.
Nelze se nezmínit o tom, že vyšlo linuxové jádro 2.4.19. Změn je v něm požehnaně, což prozrazuje mimo jiné také délka ChangeLogu, která tentokrát činí 107 KiB. Pro srovnání: dosavadní nejdelší ChangeLog řady 2.4 měl pouhých 10 KiB.

Pátek 2. 8.
Pod názvem JasPer se ukrývá otevřená implementace kompresního algoritmu JPEG-2000 Part-1, která je dokonce v patřičném ISO standardu definována jako implementace referenční. Připomínám, že JPEG-2000 je waveletový kompresní algoritmus vyznačující se velmi dobrými kompresními poměry při zachování lepší kvality, než jaké dosahuje například „obyčejný“ JPEG.
ProSilla je program pro zvýšení rychlosti přenosu souborů pomocí ssh. Pracuje podobně, jako obyčejné scp, ovšem v duchu klasických akcelerátorů stahování navazuje několik současných spojení a tak lépe využívá kapacity linky. Nezanedbatelnou výhodou proSilly je i skutečnost, že dokáže navazovat přerušené transfery, a to jak vlastní, tak i ty realizované přes klasické scp.
Projekt gnokii je myslím dobře známý, ale možná už méně se ví o jeho vzdáleném bratranci nazvaném prozaicky Mygnokii2. Celá věc se má tak, že jistý Marcin Wiacek podle svých slov kdysi přispíval do původní gnokii, pak se rozhodl napsat vlastní projekt nad zdrojáky gnokii 0.3.3 a nakonec dospěl k názoru, že nejlepší bude začít na zelené louce. Mimo jiné v Mygnokii2 klade důraz na stoprocentní použití Unicode, co nejlepší kompatibilitu s kompilátory C na nejrůznějších platformách včetně přenosných zařízení, dobrou dokumentaci a vůbec pokud možno co „nejčistší“ vývoj.

Čtvrtek 1. 8.
V jednoduchosti je síla, říká známe rčení, a platí to zřejmě i o programu Make audio, který je určen pro snadné vytváření audio CD z wavů a nebo MP3 souborů. Všechno, co musíte udělat, je zadat správně zařízení vypalovačky, nastavit podle požadavků asi šest v podstatě nevýznamných voleb a sestavit playlist – ostatní už program udělá za vás.
Aphid je další utilitka, která si klade za cíl usnadnění kompilace Apache. Cílem je tentokrát dát snadno dohromady Apache s podporou SSL via mod_ssl a zabudovaným mod_perlem. Jeho hlavní výhodou je, že se nemusíte starat ani o stahování zdrojáků – Aphid udělá sám prakticky všechno.
Pod názvem Tamber se ukrývá zajímavý engine pro vývoj webových aplikací založený na kombinaci několika otevřených standardů. Data jsou uložena v separátních XML souborech, o logiku aplikace se stará JavaScript s ASP (což, pravda, asi není až tak otevřený standard, nicméně Tamber běží na různých implementacích ASP, včetně té od Chillisoftu a Apache::ASP) a transformace do výsledného dokumentu je prováděna pomocí XSL. V projektu najdete moduly pro správu sezení, bezpečné logování či některé funkce pro eCommerce.

Středa 31. 7.
OpenOffice Indexer je poměrně jednoduchý, leč praktický program, který dokáže sestavit HTML index dokumentů z OpenOffice, přičemž podporuje popis dokumentu a klíčová slova, zadáte-li je. Tam, kde vzniká příliš mnoho dokumentů na to, aby se v nich člověk snadno vyznal, ale ještě ne tolik, aby stálo zato uvažovat o nějakém sofistikovanějším řešení, může být OpenOffice Indexer vhodnou volbou.
Virtuální souborové systémy jsou krásná věc. Je skvělé, když můžete bez velkých obtíží přejít z lokálního disku na vzdálený server přes FTP nebo SSH, ale řešení tohoto problému skýtá některá úskalí. Například je vhodné implementovat VFS v jádře nebo raději na aplikační úrovni? Jaderná implementace bude nejspíš rychlejší a fungovalo by to všude, ale cpát třeba FTP protokol do jádra? Brrr. Naproti tomu implementace na aplikační úrovni je snazší, není třeba do jádra zavléct to, co tam nepatří, ale zase to nebude tak rychlé a VFS nejspíš nebude dostupný pro všechny aplikace. Řešení je tedy nasnadě – je třeba dostat VFS někam mezi jádro a aplikace. A právě tohle řeší projekt LUFS Userland Filesystem. O to, aby virtuální systémy byly dostupné transparentně pro všechny aplikace, se postará univerzální jaderný modul, ale implementaci konkrétních typů filesystému má v režii samostatný démon. Tyto dvě komponenty spolu komunikují přes unixový socket. Pravda, neřeší to nižší rychlost, takže autoři doporučují používat LUFS zejména pro implementaci VFS pro síťové služby, kde se režie komunikace jádra a démona neprojeví tolik. Momentálně LUFS podporuje systémy localfs (zpřístupnění lokálního souborového systému), sshfs a ftpfs, do budoucna se pak plánují socketfs, httpfs, webdavfs, freenetfs a možná i nutellafs. Co říkáte představě připojení Freenetu nebo Nutelly jako kdyby šlo o lokální souborový systém? :)
OpenSSL bylo objeveno několik závažných chyb, takže pokud jste to doposud neudělali, doporučuji okamžitě upgradovat.

A to je pro dnešek vše…

Našli jste v článku chybu?