Lazygit byl vydán ve verzi 0.62.0. Jedná se o TUI (Text User Interface) nadstavbu nad gitem.
Jiří Eischmann se v příspěvku na svém blogu o rozepsal o tom, kam se vyhledávání v jeho očích posledních 10 let posunulo, jaké má zkušenosti s AI vyhledáváním, proč na něm nechce záviset a jaké vyhledávací služby ho v poslední době zaujaly.
Wayland kompozitor Labwc byl vydán ve verzi 0.20.0. Labwc je inspirován správcem oken Openbox. Postavený je na wlroots.
AlmaLinux OS byl vydán ve verzích 9.8 s kódovým jménem Olive Jaguar a 10.2 s kódovým jménem Lavender Lion. Podrobnosti v poznámkách k vydání (9.8 a 10.2). Opraveny byly zranitelnosti Copy Fail (CVE-2026-31431), Dirty FRAG, Fragnesia (CVE-2026-46300), nginx Rift (CVE-2026-42945) a SSH Keysign Pwn (CVE-2026-46333).
Seznam.cz vykázal za rok 2025 tržby v celkové hodnotě 6,454 miliardy korun. Oproti roku 2024 nárůst o 3,68 %. Zisk před zdaněním oproti předcházejícímu roku poklesl, a to o 11,21 % na 1,330 miliardy korun. Vlastní velké jazykové modely SeLLMa najdou dnes uživatelé téměř na všech seznamáckých službách. Na všechny obsahové služby byla zavedena technologie text-to-speech, díky níž si mohou uživatelé přehrát články v audio verzi namluvené
… více »Vláda představila strategické digitalizační projekty. Roadmapa zahrnuje celkem 55 projektů napříč státní správou, z toho 22 prioritních projektů vycházejících přímo z programového prohlášení vlády a 33 projektů založených na platné legislativě. Portfolio pokrývá oblasti financí, zdravotnictví, digitální identity, dat, registrů, dopravy, krizového řízení, sociálních agend i kybernetické bezpečnosti.
Vyjádřeni Software Freedom Conservancy (SFC) k porušování licence AGPLv3 společností Bambu Lab v jejich softwaru Bambu Studio pro 3D tisk. Bambu Studio vychází z PrusaSliceru. Ten zase z Slic3ru. Spuštěn byl projekt baltobu, který kombinuje několik strategií pro řešení problému. SFC zastřeší vývoj svobodné náhrady proprietární knihovny libbambu_networking pomocí reverzního inženýrství a reimplementace, forku OrcaSliceru pro Bambu Lab tiskárny od Paweła Jarczaka a forku celého Bambu Studia pod názvem Viscose.
Správce souborů GNOME Commander (Wikipedie) byl přepsán do Rustu a vydán v nové verzi 2.0.0.
Sway (Wikipedie), dlaždicový (tiling) správce oken pro Wayland kompatibilní s i3, byl vydán ve verzi 1.12. Do vývoje se zapojilo 50 vývojářů. Přehled novinek na GitHubu. Sway 1.12 závisí na wlroots 0.20.0.
Papež Lev XIV. ve své první encyklice Magnifica Humanitas (Skvělé lidství), která se věnuje umělé inteligenci (AI), varoval před dezinformacemi, které AI manipulací s obsahem vytváří. Moc mají podle něj sociální sítě ovládané hrstkou soukromníků. Upozornil také roli digitálních platforem v obchodování s lidmi, které podle něj musí být uznáno jako současná forma otroctví. Papež se také poprvé omluvil za roli, kterou Vatikán sehrál při legitimizaci otroctví, a za to, že jej po staletí neodsoudil.
lspci. Ne vždy nalezne člověk tento příkaz v příslušném repozitáři a kompilovat jej ručně bývá na dlouhé lokte,zvláště pro nějakou tu exotičtější architekturu. Ano, většinou má jádro připojené /sys, ale hrabat se v něm ručně taky není příliš user-friendly. Jako rychlou náhražku tu proto mám následující narychlo napsaný skript (závislosti: jádro se sysfs připojené na /sys, /bin/sh, /bin/sed a chcete-li lidsky čitelná jména, pak /usr/bin/host a DNS konektivita):
#!/bin/sh
PCIID_DNS=pci.id.ucw.cz
HOST_BIN=/usr/bin/host
SED_BIN=/bin/sed
(
cd /sys/bus/pci/devices/
for ID in * ;
do
ID_OK=$(echo $ID | $SED_BIN 's/^0000://')
VENDOR=$($SED_BIN 's/^0x//' < $ID/vendor )
DEVICE=$($SED_BIN 's/^0x//' < $ID/device )
CLASS=$($SED_BIN 's/^0x//' < $ID/class )
CLASS_H=$(echo $CLASS | $SED_BIN 's/^\(..\)....$/\1/')
CLASS_L=$(echo $CLASS | $SED_BIN 's/^..\(..\)..$/\1/')
if [ -x "$HOST_BIN" ] && [ "$1" != "-n" ]
then
VENDOR_HH=$($HOST_BIN -t TXT $VENDOR.$PCIID_DNS)
if test "$?" -eq "0" ; then
VENDOR_STR=$(echo $VENDOR_HH | $SED_BIN 's/.*descriptive\ text\ \"i=//' | $SED_BIN 's/\"$//')
else
VENDOR_STR="???"
fi
DEVICE_HH=$($HOST_BIN -t TXT $DEVICE.$VENDOR.$PCIID_DNS)
if test "$?" -eq "0" ; then
DEVICE_STR=$(echo $DEVICE_HH| $SED_BIN 's/.*descriptive\ text\ \"i=//' | $SED_BIN 's/\"$//')
else
DEVICE_STR="???"
fi
CLASS_HH=$($HOST_BIN -t TXT $CLASS_L.$CLASS_H.c.$PCIID_DNS)
if test "$?" -eq "0" ; then
CLASS_STR=$(echo $CLASS_HH | $SED_BIN 's/.*descriptive\ text\ \"i=//' | $SED_BIN 's/\"$//')
else
CLASS_STR="???"
fi
echo "$ID_OK $CLASS_STR: $VENDOR_STR $DEVICE_STR [$VENDOR:$DEVICE]"
else
echo "$ID_OK $CLASS_H$CLASS_L $VENDOR:$DEVICE"
fi
done
)
Výstup pak vypadá třeba nějak takto (skoro jako "lspci -nn"):
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub [8086:27a0] 00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller [8086:27a2] 00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller [8086:27a6] 00:1b.0 Audio device: Intel Corporation NM10/ICH7 Family High Definition Audio Controller [8086:27d8] 00:1c.0 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 1 [8086:27d0] 00:1c.1 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 2 [8086:27d2] 00:1c.2 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 3 [8086:27d4] 00:1c.3 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 4 [8086:27d6] 00:1d.0 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #1 [8086:27c8] 00:1d.1 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #2 [8086:27c9] 00:1d.2 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #3 [8086:27ca] 00:1d.3 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #4 [8086:27cb] 00:1d.7 USB controller: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller [8086:27cc] 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] 00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge [8086:27b9] 00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] [8086:27c4] 00:1f.3 SMBus: Intel Corporation NM10/ICH7 Family SMBus Controller [8086:27da] 06:01.0 Ethernet controller: Broadcom Limited BCM4401-B0 100Base-TX [14e4:170c] 06:02.0 Network controller: Qualcomm Atheros AR922X Wireless Network Adapter [168c:0029] 06:04.0 CardBus bridge: ENE Technology Inc CB-712/4 Cardbus Controller [1524:1412] 06:04.1 FLASH memory: ENE Technology Inc ENE PCI Memory Stick Card Reader Controller [1524:0530] 06:04.2 SD Host controller: ENE Technology Inc ENE PCI Secure Digital Card Reader Controller [1524:0550] 06:04.3 FLASH memory: ENE Technology Inc FLASH memory: ENE Technology Inc: [1524:0520] 06:04.4 FLASH memory: ENE Technology Inc SD/MMC Card Reader Controller [1524:0551]
Pokud ovšem v systému nemáme /usr/bin/host (nebo pokud skript spustíme s volbou „-n“ jako prvním parametrem), vypíše pouze numerická ID, asi takhle (prostřední číslo je „class“):
00:01.0 0604 11ab:6820 00:02.0 0604 11ab:6820 00:03.0 0604 11ab:6820 01:00.0 0280 168c:002e 02:00.0 0280 168c:003c 03:00.0 0200 10ec:8168
Pokud tento výpis uložíme do souboru, můžeme z něj dostat „lidsky čitelný“ výstup pomocí následujícího skriptu (třeba na jiném počítači, které /usr/bin/host nainstalované má...):
#!/bin/sh
if test $# -eq 0; then
echo "$0 <file>" 1>&2
exit 666
fi
PCIID_DNS=pci.id.ucw.cz
HOST_BIN=/usr/bin/host
SED_BIN=/bin/sed
while read line ; do
ID=$(echo $line| awk '{print $1}')
CLASS=$(echo $line | awk '{print $2}')
VENDEV=$(echo $line | awk '{print $3}')
VENDOR=$(echo $VENDEV | sed 's/^\(....\):....$/\1/')
DEVICE=$(echo $VENDEV | sed 's/^....:\(....\)$/\1/')
CLASS_H=$(echo $CLASS | $SED_BIN 's/^\(..\)..$/\1/')
CLASS_L=$(echo $CLASS | $SED_BIN 's/^..\(..\)$/\1/')
VENDOR_HH=$($HOST_BIN -t TXT $VENDOR.$PCIID_DNS)
if test "$?" -eq "0" ; then
VENDOR_STR=$(echo $VENDOR_HH | $SED_BIN 's/.*descriptive\ text\ \"i=//' | $SED_BIN 's/\"$//')
else
VENDOR_STR="???"
fi
DEVICE_HH=$($HOST_BIN -t TXT $DEVICE.$VENDOR.$PCIID_DNS)
if test "$?" -eq "0" ; then
DEVICE_STR=$(echo $DEVICE_HH| $SED_BIN 's/.*descriptive\ text\ \"i=//' | $SED_BIN 's/\"$//')
else
DEVICE_STR="???"
fi
CLASS_HH=$($HOST_BIN -t TXT $CLASS_L.$CLASS_H.c.$PCIID_DNS)
if test "$?" -eq "0" ; then
CLASS_STR=$(echo $CLASS_HH | $SED_BIN 's/.*descriptive\ text\ \"i=//' | $SED_BIN 's/\"$//')
else
CLASS_STR="???"
fi
echo "$ID $CLASS_STR: $VENDOR_STR $DEVICE_STR [$VENDOR:$DEVICE]"
done < $1
A výstup z něj bude vypadat třeba takto:
00:01.0 PCI bridge: Marvell Technology Group Ltd. ??? [11ab:6820] 00:02.0 PCI bridge: Marvell Technology Group Ltd. ??? [11ab:6820] 00:03.0 PCI bridge: Marvell Technology Group Ltd. ??? [11ab:6820] 01:00.0 Network controller: Qualcomm Atheros AR9287 Wireless Network Adapter (PCI-Express) [168c:002e] 02:00.0 Network controller: Qualcomm Atheros QCA986x/988x 802.11ac Wireless Network Adapter [168c:003c] 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168]
Tiskni
Sdílej:
/usr/share/misc/pci.ids, ale existuje i ta možnost pomocí DNS. A jelikož jsem byl línej parsovat ten soubor, použil jsem druhou možnost. Mimochodem, není vůbec náhoda, že ten DNS je v doméně .cz, protože za tím stojí (snad se neurazí, když řeknu) linuxová legenda Martin Mareš
.
.