Byl vydán Debian 13.5, tj. pátá opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.14, tj. čtrnáctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
CiviCRM (Wikipedie) bylo vydáno v nové verzi 6.14.0. Podrobnosti o nových funkcích a opravách najdete na release stránce. CiviCRM je robustní open-source CRM systém navržený speciálně pro neziskové organizace, spolky a občanské iniciativy. Projekt je napsán v jazyce PHP a licencován pod GNU Affero General Public License (AGPLv3). Český překlad má nyní 45 % přeložených řetězců a přibližuje se milníku 50 %. Potřebujeme vaši pomoc, abychom se dostali dál. Pokud máte chuť přispět překladem nebo korekturou, přidejte se na platformu Transifex.
Další lokální zranitelností Linuxu je ssh-keysign-pwn. Uživatel si může přečíst obsah souborů, ke kterým má právo ke čtení pouze root, například soubory s SSH klíči nebo /etc/shadow. V upstreamu již opraveno [oss-security mailing list].
Singularity (YouTube) je nejnovější otevřený film od Blender Studia. Jedná se o jejich první 4K HDR film.
Vyšla hra Život Není Krásný: Poslední Exekuce (Steam, ProtonDB). Kreslená point & click adventura ze staré školy plná černého humoru a nekorektního násilí. Vžijte se do role zpustlého exekutora Vladimíra Brehowského a projděte s ním jeho poslední pracovní den. Hra volně navazuje na sérii Život Není Krásný.
Společnost Red Hat představila Fedora Hummingbird, tj. linuxovou distribuci s nativním kontejnerovým designem určenou pro vývojáře využívající AI agenty.
Hru The Legend of Zelda: Twilight Princess od společnosti Nintendo si lze nově díky projektu Dusklight (původně Dusk) a reverznímu inženýrství zahrát i na počítačích a mobilních zařízeních. Vyžadována je kopie původní hry (textury, modely, hudba, zvukové efekty, …). Ukázka na YouTube. Projekt byl zahájen v srpnu 2020.
Byla vydána nová major verze 29.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Detailní přehled novinek na GitHubu.
Po zranitelnostech Copy Fail a Dirty Frag přichází zranitelnost Fragnesia. Další lokální eskalace práv na Linuxu. Zatím v upstreamu neopravena. Přiřazeno ji bylo CVE-2026-46300.
Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří KDE částkou 1 285 200 eur.
Mozilla souce code - najmodulárnejšie zdrojové kódy písané v C a C++ aké pod slnkom nájdete.
Cez sviatky som si chcel oddýchnuť od programovania na svojich nedokončených projektoch. Jednoznačne som chcel využiť technológie Mozilly v nejakej 3D blbinke. Zistil som, že Mozilla má veľký potenciál, ktorým mrhá na obyčajný prehliadač. Prečo je Mozilla taká obrovská, prečo zaberá toľko pamäte a výkonu CPU a prečo vlastne ešte neezistuje OS Mozilla/Linux? Pokúsme si to domyslieť.
Každoročne napíšem aspoň jednu implementáciu farebnej kocky otáčajúcej sa v priestore. Vminule som to robil v jazyku Haskell ("prehnane" čisto funkcionálny jazyk). Dnes som sa rozhodol vložiť všetko, čo moja obľúbená kocka potrebuje do tela Mozilly a celú logiku aplikácie naskriptovať v JavaScripte.
Z Mozilly som sa rozhodol využiť technológie XPCOM, XPConnect, JavaScript.
XPCOM je komponentový systém. Napíšete zopár tried v C++ (alebo C), skompilujete ich do knižnice, podhodíte ju aplikácii a XPCOM sa postará o zavedenie pluginu. V COM-systémoch každá trieda implementuje aspoň jeden interface. Narozdiel od M$, ktorý si vždy patentuje teplú vodu, Mozilla popisuje interfaci pomocou jazyka IDL s kompatibilných dialektom.
XPConnect je systém, ktorý umožnuje transparentne prepájať komponenty písané v rozličných jazykoch. C a C++ sú spojené linkerom a sú binárne kompatibilné. XPConnect sa postará, aby sa objekty (triedy a pod.) navzájom videli, aj ak sú implementované v binárne nekompatibilných jazykoch.
Z dokumentácie k Mozille je cítiť istý nezáujem o projekty, ktoré neimplementujú internetový prehliadač. Z tisícok dokumentov sa našiel iba jeden, ktorý hovoril o tom, ako nainštalovať knižnice XPCOM samostatne, Ten bol z roku 2002 a nehovoril všetkých problémoch, ktoré pri procese osamostatňovania môžu nastať.
Vývojári Mozilly sú zaslepený vidinou najlepšieho prehliadača. Ich taktika spočíva v čo najzbesilešom vývoji Firefoxu. Sú ochotný oddialiť dokoncenie niektorých komponentov prehliadača, len aby určená verzia vyšla v určený čas. V tomto ošiali zabúdajú na svoje vlastné projekty (Thunderbird) a na potenciál svojej platformy.
Áno, hovorím platformy. Tak ako platformou môže byť Java, alebo .NET, aj tak ňou je aj Mozilla. Ale je to trochu nekompletná platforma, čo by sa dalo s pomocou 40-tich vývojárov zamestnaných na plný úväzok rýchlo zmeniť. Dodám, že tak, ako existuje Java Desktop, tak existuje aj Mozilla Desktop... ale keďže sa Mozilla nechopila diela, volá sa SymphonyOS.
Mozilla pomaly štartuje, pretože sa celá skladá z desiatok, až stoviek knižníc, ktoré musí XPCOM do aplikácie zaviesť. Cache, doktorej XPCOM ukladá informácie o knižniciach s komponentmi veľmi nepomáha. Ani prelink pri takom množstve knižníc veľmi nepomôže.
Ďalej, logika produktov Mozilly je písaná v JavaScripte. JavaScript je síce veľmi užitočný jazyk, ale pri večších aplikáciách, ako je Mozilla Firefox, alebo Mozilla Thnderbird je veľmi pomalý.
Mozilla zaberá veľa pamäte, pretože drží informácie v cache v operačnej pamäti. Radšej by mohla využívať cache OS a využiť tak silu blokovej cache Linuxu. Samozrejme ma nezaujíma, že nekompatibilné OS by si s tým neporadili.
Veľká záťaž Mozilly na CPU je spôsobená JavaScriptom a Gecko enginom. JavaScript nemá priamu podporu thread-ov a podpora paralelných výpočtov je otrasná. Ak v okne niečo urobíte, musí prebehnúť celý JS pripojený k udalosti, ktorú ste vykonali. Kým neprebehne, Mozilla žerie toľko výkonu, koľko mu OS dovolí a pritom sa aplikácia tvári, ako zatuhnutá.
Slávny Gecko engine (vykresuje HTML a pod.) je vlastne niekoľko XPCOM komponentov. Gecko trávy priveľa času volaniami funkcií XPCOMu a vôbec neimplementuje všetky služby, ktoré by mohol užívateľom ponúknuť. A nepodporuje ani inkrementálny reflow (rýchlejšie vykreslenie sránky po zmene napr. veľkosti okna.). Gecko je rýchle, ale mohlo by byť ešte rýchlejšie.
Akurát som rozbehal OpenGL pomocou SDL a moja aplikácia už vykresľuje jeden trojuholník. Musím dorobiť obsluhu vstupu a potom to zverejním. Najbližšie svoju aplikáciu trochu zovšeobecním. Pridám priamu podporu X a glx, zakomponujem XPConnect. Pomocou XPConnect budem môcť do aplikácie pridať aj JavaScript a Python (prípadne ďalšie jazyky).
Minimálna aplikácia: inicializuje XPCOM, načíta jeden modul so 4-mi komponentmi a vytvorí inštanciu z každého. Komponenty inicializujú SDL, jedno okno a OpenGL a nealokujú žiadne ďalšie dáta. Aplikácia zastane v cykle, kde dookola kontroluje, či ju užívateľ vypína a vykresluje jeden bily trojuholník do okna pomocou OpenGL.
Alokovaná pamäť: 4.67MB
Predchádzajúca kompletná implementácia farebnej kocky v Haskelli (z leta 2005) zaberala cca 2MB pamäte. Uvedmte si, že Haskell je čisto funkcionálny jazyk a cacheuje výsledky všetkých volaní funkcií.
UPDATE: s/konkurenčných výpočtov/paralelných výpočtov/
UPDATE: + test
Tiskni
Sdílej:
... konkurenčných výpočtov ...Opravdu hezký překlad slova concurrent
, ale lepší je to překládat jako souběžný (ve slovenštině súbežný ), nebo paralelní.
),
Škoda, že v Mozilla Foundation a Mozilla Corporation sú len kravaťáci s bičom, bez očí a bez uší. Mozilla by si len prilepšila ak by sa snažila uľahčiť cudzím vývojárom prebrať ich technológiu.
Čisté Gecko bez knižice Necko (sieť, protokoly, ...), vlastnej grafickej knižnice a iných komponentov z Mozilla source code jednoducho nevyrežeš. Chcel som použiť Gecko aspoň na vykreslovanie menu (písané v upravenom XUL) v tej OpenGL blbinke, ale to by ma asi stálo vlasy.
Ja v tom vidím zisk pre Mozillu... aj keď ťažko vydobyteľný, ale je tam.
Nešlo napsat grafický editor, na to se musela vytvořit speciální knihovna GTK.Problém byl v tom, že v té době neexistoval vhodný a zároveň dostatečně otevřený grafický toolkit, na němž by to bylo možné postavit. Nezapomeň, že se jedná o doby, kdy žádný openmotif ještě neexistoval.