Byli vyhlášeni vítězové ocenění Steam Awards 2025. Hrou roku a současně nejlepší hrou, která vám nejde, je Hollow Knight: Silksong.
Byla vydána nová verze 26.0 linuxové distribuce Manjaro (Wikipedie). Její kódové jméno je Anh-Linh. Ke stažení je v edicích GNOME, KDE PLASMA a XFCE.
Jednotný seznam blokovaných internetových stránek vedený Českým telekomunikační úřadem obsahoval také Český telekomunikační úřad.
Byl představen webový prohlížeč Brow6el, běžící v terminálu. Pro prohlížení webu je využit Chromium Embedded Framework, vyrendrovaná webová stránka je následně zobrazena v terminálu převodem na sixely pomocí knihovny libsixel. Brow6el se ovládá modálním klávesnicovým rozhraním, inspirovaném populárním textovým editorem Vim. Demonstrační video s ukázkou používání.
Společnost Pebble představila (YouTube) chytré hodinky Pebble Round 2. S kulatým e-paper displejem, s open source PebbleOS a vydrží baterie přibližně dva týdny. Předobjednat je lze za 199 dolarů s plánovaným dodáním v květnu.
Na novoroční inauguraci starosty New Yorku Zohrana Mamdaniho bylo zakázáno si s sebou přinést Raspberry Pi anebo Flipper Zero. Raspberry Pi i Flipper Zero jsou explicitně uvedeny v seznamu zakázaných věcí jak na na veřejné pozvánce, tak i na oficiálních stránkách města.
OpenTTD (Wikipedie), tj. open source klon počítačové hry Transport Tycoon Deluxe, byl vydán v nové stabilní verzi 15.0. Přehled novinek v seznamu změn a také na YouTube. OpenTTD lze instalovat také ze Steamu.
Správce oken IceWM byl vydán ve verzi 4.0.0, která např. vylepšuje navigaci v přepínání velkého množství otevřených oken.
Od 1. ledna 2026 jsou všechny publikace ACM (Association for Computing Machinery) a související materiály přístupné v její digitální knihovně. V rámci této změny je nyní digitální knihovna ACM nabízena ve dvou verzích: v základní verzi zdarma, která poskytuje otevřený přístup ke všem publikovaným výzkumům ACM, a v prémiové zpoplatněné verzi, která nabízí další služby a nástroje 'určené pro hlubší analýzu, objevování a organizační využití'.
Dnes jsem absolvoval již druhou přednášku jednoho z velice zajímavých předmětů na FI MUNI aneb "Unix – programování a správa systému". Je to jeden z předmětů, kde se člověk konečně dozví nějaké praktické detaily (o programovování pod UNIXem...) a ne jen obecné teoretické blafy nebo IMHO věci, které by měly být náplní středoškolské informatiky. Dnes jsme věnovali část přednášky knihovnám a po zjištění, že pomocí LD_PRELOAD lze programům podstrčit "poupravené" funkce, jsem se vrhl na přepisování printf a scanf
.
LD_PRELOAD je proměnná shellu, do které lze umístit název knihovny, která má být dynamicky přilinkovaná jako první ke spuštěnému programu. Co to v praxi znamená? Že pokud knihovna obsahuje nějaké funkce, které jsou v jiné dynamicky načítané knihovně, pak budou tyto "odstíněny" naší novou verzí... Řekl jsem si, že většina programů se mnou nekomunikuje dostatečně přívětivě a tak jsem si zkusil napsat printf a scanf tak, aby byl ke mně počítač milejší
. Postup je jednoduchý. Nejdříve napíšeme zdroják s nově definovanými funkcemi. Třeba libhell.c:
#include <stdio.h>
#include <stdarg.h>
int printf(const char *format, ...) {
va_list args;
va_start(args, format);
vfprintf(stdout, "[Hello my boss!]
", NULL);
vfprintf(stdout, format, args);
va_end(args);
return vfprintf(stdout, "(-: [You're the best user!]\n", NULL);
}
int scanf(const char *fmt, ...)
{
int rc;
va_list args;
va_start(args, fmt);
vfprintf(stdout, "(?)
[Tell me something nice, my darling.]: ", NULL);
rc = vfscanf(stdin, fmt, args);
vfprintf(stdout, " :-O [Thank you, boss!]\n", NULL);
va_end(args);
return rc;
}
To bychom měli to podstatné. Teď to ještě zkompilovat a nainstalovat. To uděláme s pomocí libtool: libtool --mode=compile gcc -g -O -c libhell.c; libtool --mode=link gcc -g -O -o libhell.la libhell.lo -rpath /usr/local/lib. Tak, knihovna je zkompilovaná a slinkovaná, takže ji už jen nakopírujeme do /usr/local/lib: cp libhell.la .libs/libhell.so* /usr/local/lib/.
Naše nová a uživatelsky přívětivější
implementace funkcí printf a scanf je na světě (dokonce i v našem počítači), ale ještě jsme ji nepodstrčili žádnému programu. Nicméně není to nic těžkého. Bashi řekneme export LD_PRELOAD="/usr/local/lib/libhell.so" a schválně si zkuste spustit "hello world" nebo jiný program, který používá přepsané funkce... Já jsem se nejvíc nasmál, když jsem provedl změny v libhell.c, spustil libtool a ten mi místo příkazů, které spouští, vypisoval jen "Burn in hell!" – to byla původní implementace
.
Tiskni
Sdílej:
Nemělo by místo „Say me something…“ být „Tell me something…“ ?
Ale tomuhle příkladu teda říkám „zvrhlost“…
Myslím, že se najde hromada užitečnějších využití, třeba mnou kdysi zmíněná knihovna libtrash a podobně.
.
Jinak s tím "Tell me...": aspoň vidíte, proč jsem dostal za vstupní text z angliny jen 17 bodů z 50
. Díky za korekci
Ale ono tam má být "Tell me". Já tam měl původně "Say me" a pak jsem to opravil
. Holt se musím ještě hodně učit
Viz třeba tohle:
A: „Say me something.“ B: „As you wish: Me something.“

Tak to jsme se museli na přednášce potkatJJ, byl jsem překvapen, že nás tam bylo dneska (vzhledem ke včerejšímu státnímu svátku a zítřejšímu výkendu) tolik
. Asi to poukazuje nejen na fakt, že nejsou dostupné videozáznamy, jak říkal pan Kasprzak
Jinak já si s tím hrál, protože jsem čekal, až se mi provede dist-upgrade mého slackware
:%s/\(#include \)\(.*\)/\1<\2>/A UNIXpass byl dobrý předmět. Bohužel jsem si z časových důvodů loni nemohl zapsat dvojku, ale už se těším na příští semestr.