Byl vydán Mozilla Firefox 159.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 159 bude brzy k dispozici také na Flathubu a Snapcraftu.
Nasazení softwaru, který nyní používá ve svých autech pro čínský trh, zvažuje automobilový koncern Volkswagen také v Evropě, kde by se mohl používat v budoucích vozech značek Volkswagen, Škoda a Cupra. Základem pro budoucí evropské modely by se mohla stát takzvaná China Electronic Architecture, elektronická architektura vyvinutá pro čínské modely ve spolupráci s tamní automobilkou Xpeng.
Vedoucím brněnské pobočky Red Hatu se stal Radek Vokál [LinkedIn].
Open source download manager Fatrat povstal z popela. Autor k dvacetiletému výročí projektu přidal do vínku podporu nejnovější knihovny libtorrent, rozhraní portoval na QT6, došlo k nahrazení podpory java rozšíření pythonem. Webové rozhraní bylo přepsáno s podporou mobilních zařízení. Aplikaci je taktéž možno zkompilovat bez podpory GUI. Více informací v releases.
Zranitelnost Broccoli2Shell (CVE-2026-111497) v kompresní knihovně Brotli se netýká pouze Node.js. Ohroženy jsou také aplikace využívající HTTP. Knihovnu používají webové prohlížeče, servery i řada dalších aplikací a technologií, například také Python nebo Bun. Identifikace všech zranitelných komponent může být obtížná, protože knihovna bývá součástí dalších softwarových balíčků nebo je přímo začleněna do spustitelných souborů aplikací.
Quad9, švýcarský celosvětově působící neziskový poskytovatel DNS, od 24. listopadu 2026 ukončí své služby ve Francii kvůli soudnímu sporu s katarskou televizní stanicí beIN. Ta požadovala blokování domén, které podle ní nelegálně zpřístupňují sportovní přenosy. Francouzský soud Katarům vyhověl a nařídil (🇫🇷, PDF) Quad9 blokaci zavést, pod hrozbou pokuty 1000 eur denně. Provozovatel příkaz odmítá s tím, že blokace
… více »Článek na blogu APNIC vysvětluje, jak správně vytvářet a používat ASPA záznamy — podepsané objekty v RPKI, které uvádějí, kteří poskytovatelé směrování jsou pro dané autonomní číslo (ASN) oprávněni. Síťoví operátoři je mohou využít k ověřování tras BGP a k odhalování úniků tras či podvržených tras.
Byla vydána (𝕏) verze 8.0.0 open source programu pro prolamování hesel hashcat (GitHub, Wikipedie). Přehled novinek v příspěvku v diskusním fóru a pdf.
Byla vydána (𝕏, Bluesky) nová verze 2026.3 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem 6 nových nástrojů v oficiálním oznámení na blogu.
ctenari abclinuxu nejsou jedini, koho pravidelne otravuji vykladanim jiraskovsky dlouhych pribehu o schemikovi, implicitne paralelnim dialektu scheme a lispu. jelikoz ze schemika delame vedu, tak clanky o nem obstastnujem v pravidelnych cyklech i recenzenty na konferencich... s ruznymi vysledky...
vedle pozitivnich ohlasu mame i ty negativni. vetsinou se vyskytuji v konstalaci, ze ke kazdym dvema rozumnym recenzentum (s uzitecnyma komentarema) se najde nejaky magor... jehoz komentar vypada, jak z ,,A Brief, Incomplete, and Mostly Wrong History of Programming Languages''
takovi magori jsou schopni napriklad tvrdit, ze scheme je ,,idealizovany jazyk'', a ze bysme se meli zabyvat nejakym normalnim jazykem. najdou se i jedinci, kteri jsou schopni strhat cely clanek proto, ze vykon neodpovida ,,optimalizujicimu prekladaci''.
nejdriv mne to prislo normalni... na trouby a japonske turisty narazite vsude... ale kdyz jsem takove poznamky cetl snad po desate, docela luxusne jsem se nas...tval. kolik ,,normalnich'' jazyku podporuje takove veci jako jsou funkce vyssiho radu, makra, kontinuace, ...? kdyz z toho budu chtit udelat ,,normalni jazyk'' napisu novy parser a vyhodim polovinu vlastnosti! a koho dneska zajima vykon, kdyz se vesele programuje ve vecech jako je Python nebo PHP?
...nicmene, to byl vyborny motivacni bod.
stupen meho nastvani byl dostatecny, abych zacal premyslet, co bych potreboval, abych mohl schemik zacit prakticky pouzivat na normalni programy... treba na takove to domaci programovani... male jednoduche veci na ktere pouzivam python, bash nebo php. ...a vysledkem byl schemik verze 1.2.38.0. a tady je takovy mirne komentovany changelog:
zacnu od naprostych banalit. upravil jsem instalator tak, aby fungovala korektni instalace a odinstalace primo z scons a nemusel jsem se bat to instalovat na produkcni pocitace. takze, diky novemu instalatoru mam schemik nainstalovany, ale co dal... dalsim logickym krokem, bylo umoznit spoustet programy v schemiku jako shellove skripty... neni problem... obligatni hello world vypada nejak takhle:
#!/usr/bin/schemik -s (display "Hello World!") (newline)
dal to chtelo zapracovat na uzivatelskem rozhrani. ono se to nezda, ale programovaci jazyk bez rozumneho hlaseni chyb je pomalu nepouzitelny... jako odstrasujici priklad jsem si vzal SBCL a pokusil se navrhnout neco, co by bylo trochu vic user-friendly a slo z toho poznat, kde je chyba. napr. zadani spatneho argumentu se ohlasi nasledovne:
schemik> (+ 1 2 'a 4) plus: argument of type 'number' expected at the 3rd position at line 1 passed 4 argument(s): #1: 1 #2: 2 #3:>a #4: 4
pri prepisovani chybovych hlaseni jsem zjistil, ze potrebuju preciznejsi informace o zpracovavanem zdrojovem kodu... a to jsem se nas...tval podruhe... a skoncilo tim, ze jsem konecne vyhodil parser generovany pomoci kombinace bison+flex a napsal si vlastni... no, neni to zadna velka elegance, ale jako ukazka znasilneni preprocessoru je to asi dokonale... ;-]
nejvetsi problem, ktery jsem nejak musel poresit je standardni knihovna. bez rozsahle knihovny funkci se nedaji delat normalni programy. takze jedno z reseni je najit hromadu opic, ktere budou psat knihovny a bindingy... coz je neresitelne... nebo jde na to jit od lesa...
vsiml jsem si, ze posledni dobou na male programky cim dal casteji pouzivam bash. bash jako programovaci jazyk je vylozene hloupy, nevzhledny a vlastne toho ani moc neumi... laskavy ctenar si povsimne, zajimave skutecnosti a to faktu, ze bash v zakladu obsahuje minimum funkci a presto je to mocny programovaci jazyk... kouzelnou vlastnosti bashe, potazmo shellu, je to, ze vlastne kazda aplikace se muze stat ,,funkci'' jazyka. no, neni to bajecne? a nemuzeme toho vyuzit?
yes, we can! schemik dostal novou funkci s ponekud kryptickym nazvem ext:shell*, ktera nedela nic jineho nez, ze spusti zadany program s argumenty, nasype mu data na stdin a vybere si je zpracovane ze stdout. neuveritelne banalni! ale ucinne! je potreba dopsat podporu pro regularni vyrazy mame tu sed, je potreba podpora pro http, mame tu wget...
funkce ma nasledujici tvar (ext:shell* result-type program [ input arg-1 ... arg-n ]), kde result-type je symbol LIST nebo STRING, program je retezec, ktery chceme spustit, input je hodnota nebo seznam hodnot poslanych na standardni vstup programu a arg-1 az arg-n jsou argumenty programu.
myslim, ze vsechny argumenty s vyjimkou result-type nepotrebuji nejake specialni vysvetleni. result-type udava jakym zpusobem chceme nakladat se standardnim vystupem programu, i.e., v pripade, ze result-type ma hodnotu STRING, bere se vystup jako jeden velky textovy retezec, jinak se vystup povazuje za seznam retezcu, kde kazdy radek je jeden retezec.
v praxi to pak znamena, ze si muzeme definovat napr. funkci vracejici aktualni adresar jako:
(define (pwd) (ext:shell* 'STRING "pwd"))a pokud chceme funkci vracejici seznam souboru v aktualnim adresari, muzeme ji definovat nasledovne:
(define (ls) (ext:shell* 'LIST "ls"))
pro zacatek dobre... ne? ale muzeme jit jeste dal... je libo trideni:
(define (string-sort list)
(ext:shell* 'LIST "sort" list))
schemik> (string-sort '("a" "b" "ab" "c" "abc"))
(a ab abc b c)
nebo regularni vyrazy:
(define (regexp:grep pattern list) (ext:shell* 'LIST "grep" list "-e" pattern)) schemik> (regexp:grep "\.c$" (ls)) (dump_vm.c env.c errors.c functions.c initial_env.c int_funcs.c lexer.c parser.c readline_wrapper.c rt.c schemik.c stack.c stack_eval.c thread_pool.c tm_log.c types.c vm.c)pomoci
ext:shell* jde implementovat elegantne prace se soubory... napr. nacteni jednotlivych radku souboru jde realizovat nasledovne:
(define (file->list file) (ext:shell* 'LIST "cat" "" file))
dalsi moznosti ext:shell* jsou mimo rozsah tohoto textu... jenom naznacim, ze pomoci ni jdou implementovat (naprasit) takove ultimatni funkce jako jsou bindingy do databaze nebo plnohodnotne cgi-scripty.
to by snad mohlo pro dnesek stacit... pokud by nekdo docetl az sem a zajimaly jej nejake dalsi pikantni detaily... vyuzijte prosim diskuze.
na zaver si neodpustim veselou historku z konference: nedavno na konferenci ACM, za mnou prisel chlapik ze SUNu (na jmeno si uz nevzpominam, ale kdyz jsem se pak dival, kdo to byl, tak by mel byt odpovedny za ideovou cistotu Javy a JVM) a nechal si povykladat vsechno, co delame a asi se mu to libilo. a pak na me, jestli uz to videl Guy Steele. neco takoveho me vyvedlo natolik z miry, ze jsem si vlastne nebyl jisty jestli jsem se nepreslechl. tak rikam, ze o nas Guy Steele pravdepodobne nema ani tuseni... a on hned neco v tom smyslu: ,,fakt mu to musite poslat, urcite ho to bude zajimat''. ...chlapci u SUNu opravdu maji zajimavy smysl pro humor. ;-]
Tiskni
Sdílej:
Tak mu to posli, treba se mu to bude libit.
+1
co to nazvat třeba Lambda: The Ultimate Load Balancer? :)
Skvělá práce! Na Schemik jsem se chtěl sice podívat už delší dobu, ale až poslední změny mě přiměly si jej konečně stáhnout a přeložit. Při svém krátkém experimentování jsem nicméně narazil na drobný problém, a to ten, že mi uvedené příklady do jednoho vracejí prázdný řetězec/seznam, nepřidám-li prázdný řetězec na místo vstupu, srov.:
schemik> (ext:shell* 'STRING "pwd") schemik> (ext:shell* 'STRING "pwd" "") /home/blackened
Podobně se u mě chová i procedura pwd předdefinovaná v scm/base.scm.
Zkoušeno na Debianu testing s jádrem 2.6.26-2-686 a libc6 ve verzi 2.9-4.
Nedávno jsi psal něco o tom, že máš možnost poslat papery slovutnému Simonu Peyton Jonesovi, a teď tohle...
Seš fakt dobrej.
Minule mě obecenstvo dokopalo, abych dostal Schemik do overlaye Sunrise.
Vzhledem k tomu, že se otěží chopili lidi z gentooáckého projektu Lisp, bude od teď balíček pro Gentoo udržován v oborově bližším repozitáři Lisp (commit).
Ebuildy v Sunrise budou zamaskovány a po nějaké době smazány. Případní uživatelé tak dostanou šanci k čistému přechodu.
Mimochodem lidi se na IRC divili popisu balíku převzatého z domovské stránky:
fe[nl]ix: it interprets scheme *and* CL ? fe[nl]ix: this would be the first time I've seen such a thing
Je tomu opravdu tak?
Minule mě obecenstvo dokopalo, abych dostal Schemik do overlaye Sunrise. Vzhledem k tomu, že se otěží chopili lidi z gentooáckého projektu Lisp, bude od teď balíček pro Gentoo udržován v oborově bližším repozitáři Lisp (commit).diky. v soucasne dobe to vyvijim a testuju na omezenem mnozstvi systemu. ...jinymi slovy na slackwaru a stabilnim debianu. takze pokud to zkousi (nebo snad pouziva) nekdo na jinych platformach jsem jenom rad. pred casem jsem se snazil skamaradit s opensuse buildservice, abych mohl sestavovat balicky pro dalsi distra. ale zatim je to bez nejakeho pouzitelneho uspechu, jelikoz jsem narazil na problemy s casem a tim, ze mam v buildeni rpm-baliku docela mezery. snad o prazdninach bude vic casu...
fe[nl]ix: it interprets scheme *and* CL ?Je tomu opravdu tak?
fe[nl]ix: this would be the first time I've seen such a thing
neni. zatim...
,,Schemik is a ... dialect of Scheme and Common LISP'' znamena (by melo znamenat), ze jsme si vzali to nejlepsi ze schemu (jazyk) a commonlispu (makra) a upravili si to posvem. teda uz delsi dobu premyslim o tom, ze zkusim z commonlispu jeste vykrast i keyword arguments. ;-]