Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.
Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.
Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Jsem zakladatelem tohoto portálu. Linux jsem používal spousty let, nějaký čas jsem se aktivně podílel na jeho propagaci v Česku (CZLUG, časopisy ComputerWorld, Network Magazine atd). Se současným Abíčkem už nemám nic společného.
Na abíčku máme systém variant pro webové stránky. Kromě hlavní varianty pro běžné prohlížeče existují varianty pro lynx, PDA a tisk. Stačí přidat za libovolné URL parametr varianta=lynx a můžete si to vyzkoušet. Nicméně údržba tolika verzí byla dost náročná a nepříjemná.
Fyzicky to je realizováno tak, že každá stránka má svůj soubor se šablonou. V ní je na začátku includnut soubor header.ftl a na konci footer.ftl. Adresářová struktura vypadá asi takto:
/pda/header.ftl /pda/footer.ftl /pda/show/index.ftl /web/header.ftl /web/footer.ftl /web/show/index.ftl /web/show/zpravicka.ftl
Jak je vidět, každá varianta má svůj podadresář s totožnou strukturou.
Dosud jsem to měl realizováno tak, že jsem fyzicky změnil jen soubory, které se obsahově lišily (header.ftl a footer.ftl), zatímco ostatní soubory jsem nalinkoval přes ln -s
. To zní na první pohled jako elegantní řešení, ale mělo několik problémů. Za prvé když jsem se rozhodl obsahově změnit soubor ve variantě, nesměl jsem zapomenout odstranit symlink, jinak jsem si omylem přepsal i šablonu v hlavní variantě web.
Další problém byl s údržbou. Nezvládal jsem dávat nové funkce do ostatních variant (pokud to nebyly jen symlinky), zapomínal jsem vytvářet symlinky na nové soubory, logy se plnily chybami. Tahle cesta neměla budoucnost a zrušit ostatní varianty jsem nechtěl. Nikdo se ani nenabídl, že by je spravoval.
Proto jsem hledal jiné řešení a tím se stal vlastní implementace rozhraní TemplateLoader z freemarkeru. Jak název napovídá, má za úkol nahrávat šablony. Můj FallbackTemplateLoader bere jako parametry konstruktoru FileTemplateLoader a název defaultního adresáře. Přes delegate pattern volá instanci FileTemplateLoaderu pro všechny implementované metody. Jenom v metodě findTemplateSource má speciální chování - pokud není nalezena šablona, pokusí se ji najít v defaultní variantě. Takže v podstatě stejné chování, jako se symlinky, jen bez noční můry s jejich udržováním.
Například když někdo chce zobrazit zprávičku v PDA variantě, systém požádá o šablonu /pda/show/zpravicka.ftl
. Takový soubor ale neexistuje, což by mělo vyústit ve výjimku. Nicméně FallbackTemplateLoader se pokusí stáhnout /web/show/zpravicka.ftl
a ta už existuje.
Zatím to vypadá, že systém funguje dobře. Smazal jsem většinu souborů z ostatních variant, čímž jsem se zbavil nekonzistencí s hlavní variantou a chyb. Implementace třídy je kupodivu velice krátká, klauzule GPL je snad delší než vlastní kód.
Tiskni
Sdílej: