HollowByte je zranitelnost typu Denial of Service (DoS) v kryptografické knihovně OpenSSL. Útočník může odesíláním škodlivého payloadu o velikosti pouhých 11 bajtů zaplnit paměť serveru. OpenSSL před ověřením dat vyhradí nepřiměřený blok paměti (až 131 KB). Server pak čeká na data, která nepřišla. Zranitelnost je opravena ve verzích OpenSSL 4.0.1, 3.6.3, 3.5.7, 3.4.6 a 3.0.21.
Ve španělské A Coruñě probíhá GUADEC 2026, tj. letošní konference vývojářů a uživatelů desktopového prostředí GNOME. Videozáznamy přednášek jsou k dispozici na YouTube.
Společnost Collabora ve spolupráci s Valve vyvíjí Holo Core, tj. port Arch Linuxu pro ARM64 procesory (AArch64), který bude pohánět VR headset Steam Frame. Pro testování Arch Linuxu pro AArch64 jsou k dispozici binární balíčky, zdrojové kódy i kontejner pro Docker nebo Podman.
Mikroprocesor Zilog Z80 byl oficiálně uveden na trh před 50 lety, tj. v červenci 1976. Výroba mikroprocesoru skončila v roce 2024.
Výzkumníci ze společnosti ESET objevili 11 zapomenutých UEFI shim zavaděčů, které byly podepsány společností Microsoft, a které umožňují útočníkům obejít ochranu UEFI Secure Boot na většině zařízení. Microsoft je zneplatnil (přidal jejich hash do databáze dbx) v rámci aktualizace Patch Tuesday dne 9. června 2026. Uživatelé Linuxu mohou databází aktualizovat pomocí LVFS. Ověřit zneplatnění zavaděčů lze pomocí skriptu uefi-dbx-audit. Jedná se o CVE-2026-8863 a CVE-2026-10797.
pico-usb-wifi je open source firmware pro Raspberry Pi Pico W, který jej promění v USB Wi-Fi adaptér. Po připojení k počítači se objeví jako zařízení USB CDC-NCM.
Americká společnost Google ze skupiny Alphabet bude muset podle nových požadavků Evropské unie umožnit společnosti OpenAI i dalším konkurentům v oblasti umělé inteligence (AI) a internetových vyhledávačů přístup ke svým službám. Ve svém rozhodnutí o tom včera informovala Evropská komise (EK). Opatření má zajistit dodržování pravidel, jejichž cílem je omezit v EU tržní sílu velkých technologických firem. Google s tím nesouhlasí.
… více »Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 150. Aktuální verze Firefoxu je 152. V březnu bylo oznámeno, že od září přejde Chrome na dvoutýdenní cyklus vydávání verzí. To by znamenalo, že Chrome v číslování verzí Firefox brzy přeskočí. Vývojáři Firefoxu proto také od září přecházejí na dvoutýdenní cyklus vydávání verzí. :-)
Microsoft Comic Chat (Wikipedie), tj. grafický IRC klient z devadesátek, který převáděl konverzace na IRC do podoby komiksových panelů, a který zpopularizoval font Comic Sans, je dnešním dnem open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Byla vydána (𝕏) nová verze 26.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 26.7 je Xenial Xenops. Přehled novinek v příspěvku na fóru.
tento blog slouží jako zápisník (blok) pro moje výplody
V mém posledním zveřejněném desktopu jsem si povzdechl nad tím, že mi Awesome v3.4.10 umísťuje firefox při plovoucím režimu o pár pixel přes horní wibox.
Nebudu tu příliš rozvádět jak to funguje, protože jsem se moc o problematiku signálů nezajímal - nebyl čas, tak tedy:
client.add_signal("manage", function (c, startup)
if not startup then
-- Set the windows at the slave,
-- i.e. put it at the end of others instead of setting it master.
awful.client.setslave(c)
-- Put windows in a smart way, only if they does not set an initial position.
if not c.size_hints.user_position and not c.size_hints.program_position then
awful.placement.no_offscreen(c)
awful.placement.no_overlap(c)
end
end
end)
Tato funkce/signál se mi stará o nové okna. V podstatě jde o to správně umístit okno na viditelnou plochu obrazovky a také aby nedošlo k překrytí. Hlavně maximalizovaný floating firefox či codeblocks o pár px překryly horní wibox o výšce 14px. Zjistil jsem, že za to může funkce no_offscreen() ve které byla chyba (feature?) v nastavování pozice okna v případě, že přesahuje maximální viditelnou šířku / výšku :
function no_offscreen(c)
local c = c or capi.client.focus
local geometry = c:geometry()
local border = c.border_width
local screen_geometry = capi.screen[c.screen].workarea
if geometry.x + geometry.width + 2*border > screen_geometry.x + screen_geometry.width then
-- geometry.x = screen_geometry.x + screen_geometry.width - geometry.width -- original , chybi odecet borderu
geometry.x = screen_geometry.x + screen_geometry.width - (geometry.width - 2*border)
elseif geometry.x < screen_geometry.x then
geometry.x = screen_geometry.x
end
if geometry.y + geometry.height + border > screen_geometry.y + screen_geometry.height then -- proc jen 1x border? radej nebudu patrat
-- geometry.y = screen_geometry.y + screen_geometry.height - geometry.height -- to same chybi border odecet
geometry.y = screen_geometry.y + screen_geometry.height - (geometry.height- 2*border)
elseif geometry.y < screen_geometry.y then
geometry.y = screen_geometry.y
end
-- c:geometry(geometry) -- v originale chybi return wtf?
return c:geometry(geometry) -- uprava luta
end
Jak je vidět, úprava byla elementární i pro člověka co programuje v C embedded a Lua umí jen editovat z rychlíku 
Doufám, že to třeba někdy někomu pomůže a doufám, že se kvůli této úpravě neobjeví další chyba / feature 
A ještě dotaz pro odborníky v Awesome: Je tohle na bugreport ? Nějak nemám čas zjišťovat, jestli to není jen můj osobní workaround a ve výsledku bych se třeba jen ztrapnil 
Jak jsem teď dodatečně zjistil, chyba bude ještě někde jinde, protože je nutno donutit okno větší, než je plocha, aby nepřesahovalo. To by ovšem měla řešit funkce no_overlap..patrně to ale neřeší dokonale, neboť firefox o pár pixel přesahuje spodek obrazovky a pomůže až toggle maximize..
Tiskni
Sdílej:
ps mám to celé blbě, žádný bugreport nebude
ale štvě mě to 
Ja to mám vpodstate tak isto (Debian Wheezy) placement.lua :
function no_offscreen(c)
local c = c or capi.client.focus
local geometry = c:geometry()
local border = c.border_width
local screen_geometry = capi.screen[c.screen].workarea
if geometry.x + geometry.width + 2*border > screen_geometry.x + screen_geometry.width then
geometry.x = screen_geometry.x + screen_geometry.width - geometry.width
elseif geometry.x < screen_geometry.x then
geometry.x = screen_geometry.x
end
if geometry.y + geometry.height + border > screen_geometry.y + screen_geometry.height then
geometry.y = screen_geometry.y + screen_geometry.height - geometry.height
elseif geometry.y < screen_geometry.y then
geometry.y = screen_geometry.y
end
c:geometry(geometry)
end
Nepozorujem prekrytie horného panela ami presah okna cez dolný okraj pri maximalizovaní Firefoxu. Fullscreen mám zakomentovaný.
já nevím přesně jak to popsat. Nakonec to vypadá, že tam chyběl jen ten return v té funkci. Dále jsem si dopsal funkci, která mi testuje velikost okna a pokud je okno zaručeně větší jak obrazovka, tak ho zmenší. Tohle asi ani jedna z těch funkcí nedělala. Takže výsledek vypadá nějako takto :
function w_resize(c)
local geometry = c:geometry()
local border = c.border_width
local screen_geometry = screen[c.screen].workarea
if geometry.width + 2*border > screen_geometry.width then
geometry.width = screen_geometry.width
end
if geometry.height + 2*border > screen_geometry.height then
geometry.height = screen_geometry.height
end
return c:geometry(geometry)
end
-- {{{ Signals
-- Signal function to execute when a new client appears.
client.add_signal("manage", function (c, startup)
w_resize(c)
if not startup then
-- Set the windows at the slave,
-- i.e. put it at the end of others instead of setting it master.
awful.client.setslave(c)
-- Put windows in a smart way, only if they does not set an initial position.
if not c.size_hints.user_position and not c.size_hints.program_position then
awful.placement.no_offscreen(c)
awful.placement.no_overlap(c)
end
end
end)
tak nějak to zatím funguje, než zase najdou nějakou chybu
w_resize(c) sa bude niekedy možno hodiť, zatial som ju nepotreboval.
trochu je v ní pořád bordel s těma borderama, protože netuším, jak s tím awesome počítá (jestli je už v geometry započítano), ale funguje to. Tenhle detail mě opravdu dlouho štval
Toto
awful.client.setslave(c)
mám zakomentované
-- awful.client.setslave(c)
-- SIGNALS
client.add_signal("manage", function (c, startup)
if not startup then
if not c.size_hints.user_position and not c.size_hints.program_position then
awful.placement.no_overlap(c)
awful.placement.no_offscreen(c)
end
end
end)
client.add_signal("focus", function(c) c.border_color = beautiful.border_focus end)
client.add_signal("unfocus", function(c) c.border_color = beautiful.border_normal end)
Ešte sa mi nestalo, aby sa mi niektoré okno zobrazilo nekorektne, skúšal som všetky graf. programy, ktoré mám nainštalované, až teda na Gimp, ktorý sa mi otvára maximalizovaný a ovládacie panely mi prekrýva hlavné okno, vpodstate mi to ale tak aj vyhovuje, lebo pár pixelov z nich je vidieť..
ja mel problem hlavne s floating layoutem. kazdopadne diky. btw gimp mi taky konecne startuje korektne. protoze mam wibox jen 14px vysoky tak nemam rad kdyz mi ho neco prekryva