Bezpečnostní specialista Graham Helton z Low Orbit Security si všímá podezřelých anomálií v BGP, zaznamenaných krátce před vstupem ozbrojených sil USA na území Venezuely, které tam během bleskové speciální vojenské operace úspěšně zatkly venezuelského diktátora Madura za narkoterorismus. BGP (Border Gateway Protocol) je 'dynamický směrovací protokol, který umožňuje routerům automaticky reagovat na změny topologie počítačové sítě' a je v bezpečnostních kruzích znám jako 'notoricky nezabezpečený'.
Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,58 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,32 %. Procesor AMD používá 67,43 % hráčů na Linuxu.
V Las Vegas probíhá veletrh CES (Consumer Electronics Show, Wikipedie). Firmy představují své novinky. Například LEGO představilo systém LEGO SMART Play: chytré kostky SMART Brick, dlaždičky SMART Tagy a SMART minifigurky. Kostka SMART Brick dokáže rozpoznat přítomnost SMART Tagů a SMART minifigurek, které se nacházejí v její blízkosti. Ty kostku SMART Brick aktivují a určí, co má dělat.
Vládní CERT (GovCERT.CZ) upozorňuje (𝕏) na kritickou zranitelnost v jsPDF, CVE-2025-68428. Tato zranitelnost umožňuje neautentizovaným vzdáleným útočníkům číst libovolné soubory z lokálního souborového systému serveru při použití jsPDF v prostředí Node.js. Problém vzniká kvůli nedostatečné validaci vstupu u cest k souborům předávaných několika metodám jsPDF. Útočník může zneužít tuto chybu k exfiltraci citlivých
… více »V úterý 13. ledna 2025 se v pražské kanceláři SUSE v Karlíně uskuteční 5. Mobile Hackday, komunitní setkání zaměřené na Linux na mobilních zařízeních, kernelový vývoj a související infrastrukturu. Akci pořádá David Heidelberg.
… více »Už je 14 dní zbývá do začátku osmého ročníku komunitního setkání nejen českých a slovenských správců sítí CSNOG 2026. Registrace na akci je stále otevřená, ale termín uzávěrky se blíží. I proto organizátoři doporučují, aby se zájemci přihlásili brzy, nejlépe ještě tento týden.
… více »Rok 2026 sotva začal, ale už v prvním týdnu se nashromáždilo nezvykle mnoho zajímavostí, událostí a zpráv. Jedno je ale jisté - už ve středu se koná Virtuální Bastlírna - online setkání techniků, bastlířů a ajťáků, kam rozhodně doražte, ideálně s mikrofonem a kamerou a zapojte se do diskuze o zajímavých technických tématech.
Dějí se i ne zcela šťastné věci – zdražování a nedostupnost RAM a SSD, nedostatek waferů, 3€ clo na každou položku z Číny … více »Vývojáři GNOME a Firefoxu zvažují ve výchozím nastavení vypnutí funkce vkládání prostředním tlačítkem myši. Zdůvodnění: "U většiny uživatelů tento X11ism způsobuje neočekávané chování".
Nástroj pro obnovu dat GNU ddrescue (Wikipedie) byl vydán v nové verzi 1.30. Vylepšena byla automatická obnova z disků s poškozenou čtecí hlavou.
Protokol IPv6 má již 30 let. První návrh specifikace RFC 1883 je z prosince 1995.
S časem je v jednotkových testech maličko problém. (Co když chci otestovat například funkci, která parsuje data s ohledem na aktuální datum?) V dynamičtějších jazycích se to naštěstí dá vyřešit snadno:
use Test::More 'no_plan';
use Test::MockTime 'set_absolute_time';
set_absolute_time('27/08/2009', '%d/%m/%Y');
# A jedeme.
Základ Test::MockTime je přitom jednoduchý:
BEGIN {
*CORE::GLOBAL::time = \&Test::MockTime::time;
*CORE::GLOBAL::localtime = \&Test::MockTime::localtime;
*CORE::GLOBAL::gmtime = \&Test::MockTime::gmtime;
}
use Modern::Perl; use Perl6::Junction qw/any all/; my @numbers = 1..5; say "Yes" if any(@numbers) == 3; say "Nope" if not all(@numbers) == 5;Není to hezké? Viz Perl6::Junction a Exegesis 6.
Při mergování běžně narážím na problém s projektovými soubory Xcode, které jsou sice textové, ale automaticky se příliš mergovat nedají a ručně je to nereálné, protože jde o stovky řádek XML. Naštěstí se většinou dá jednoduše použít verze z novější větve. Chvilku jsem musel hledat, než jsem zjistil, jak při merge konfliktu přijmout celý soubor z mergované větve:
$ git merge spawner-rewrite
…
Auto-merging Source/Paperworks.xcodeproj/zoul.mode1v3
CONFLICT (content): Merge conflict in Source/Paperworks.xcodeproj/zoul.mode1v3
Auto-merging Source/Paperworks.xcodeproj/zoul.pbxuser
CONFLICT (content): Merge conflict in Source/Paperworks.xcodeproj/zoul.pbxuser
Automatic merge failed; fix conflicts and then commit the result.
$ git checkout --theirs Source/Paperworks.xcodeproj/zoul.{mode1v3,pbxuser}
$ git add Source/Paperworks.xcodeproj/zoul.{mode1v3,pbxuser}
$ git commit -m "A je to."
Stejně by ale bylo pěkné, kdyby byl k dispozici nějaký specializovaný merge skript pro soubory Xcode.
Potřeboval jsem nějakou dobu pracovat offline, a když jsem hledal nástroje pro offline práci se Subversion, nakonec jsem skončil u gitu (konkrétně u git-svn). Jsem nadšený, jen mi trochu chyběla tolerance Subversion při zadávání příkazů. Zatímco Subversion stačí říct svn co a ono už si samo doplní co → checkout, git mě vždycky nechá vydusit. Nakonec jsem ale zjistil, že krátké varianty jdou nastavit pomocí aliasů:
$ git config --global alias.co checkout $ git config --global alias.st statusA jsem spokojený pantáta!
Psal jsem dneska jednoduchou třídu pro animované sprajty v OpenGL. Abych nemusel texturovací souřadnice počítat při každé změně snímku, předpočítal jsem si je všechny předem do bufferu. Když pak dojde na kreslení snímku, texturovací souřadnice zadám jednoduše jako offset do tohohle bufferu. V principu velmi jednoduchý kód, ale stejně se mi v něm podařilo vyrobit chybu, kterou jsem pak dlouho a nespokojeně hledal. Je to klasický přehmat v ukazatelové aritmetice – býval bych řekl, že takovou chybu bych neudělal, no ale zjevně ano:
A ještě jednou Perl, tentokrát REPL. REPL je praktická věc, zvlášť při ladění. Zvykl jsem si do některých svých modulů v průběhu vývoje a testování strčit malou funkci, díky které se dá modul v případě potřeby spustit jako běžný perlový skript a zobrazí REPL, ve kterém si s ním můžu hrát:
Včera vydal chromatic moc pěkný blogpost, ve kterém shrnuje některé moderní způsoby psaní v Perlu – Moose, výjimky a podobně. Příjemná drobnost je například psaní CLASS místo ošklivého __PACKAGE__ nebo Modern::Perl, díky kterému by se podobné moduly časem mohly dát zapnout jedním řádkem kódu.
In fact, it’s far more common to go backwards: to see just the surface gloss of something and try to mimic that, with no understanding at all of the decisions that inform the rest of the work, and how they depend on each other. (…) Our equivalent is the UI “skin”, like the hackery that can make a Windows or Linux desktop look like Mac OS X, but can’t change the fact that everything below the surface is built up with the respective ideas of those operating systems.