Po 9 týdnech vývoje od vydání Linuxu 7.0 oznámil Linus Torvalds vydání Linuxu 7.1. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a časem také na Linux Kernel Newbies.
Cheat Engine (Wikipedie) je s verzí 7.7 k dispozici už také pro Linux. Jedná se o proprietární skener/debugger paměti používaný především k cheatování v počítačových hrách.
Vláda USA nařídila společnosti Anthropic pozastavit přístup k modelům Fable 5 a Mythos 5 pro všechny cizince, včetně zaměstnanců Anthropicu.
Společnost Murena představila (YouTube) novou verzi 4.0 mobilního operačního systému /e/OS (Wikipedie) založeného na Androidu a LineageOS bez aplikací a služeb od Googlu.
V Arch User Repository (AUR) bylo kompromitováno přes 400 opomíjených balíčků (jejich seznam). Útočník do nich začlenil škodlivý npm balíček atomic-lockfile, který krade citlivá data uživatelů. Publikována byla předběžná analýza spouštěného malwaru deps.
Homebrew, správce balíčků nejen pro macOS, byl vydán ve verzi 6.0.0 (seznam změn). Hlavními novinkami jsou bezpečnostní mechanismus tap trust kvůli důvěryhodnosti závislostí, vylepšení sandboxingu na Linuxu, interní JSON API nebo zlepšení výkonu.
Byla nalezena a 9. června opravena kritická zranitelnost ve FreeBSD v Kernel TLS (KTLS). Pojmenována byla Bumsrakete (FreeBSD-SA-26:26.ktls, CVE-2026-45257). Lokální neprivilegovaný uživatel může přepisovat soubory, ke kterým má právo pouze pro čtení. Přepsáním setuid binárky a jejím spuštěním může získat roota. Na všech verzích od verze 13.0 vydané v dubnu 2021.
Vývojáři open source operačního systému ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, se na síti 𝕏 pochlubili, že ReactOS zvládne počítačovou hru Half-Life.
Byla vydána nová verze 4.8 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.
Apple container dospěl do verze 1.0.0. Jedná se o open source nástroj pro spouštění linuxových kontejnerů na macOS postavený nad containerization. Napsaný je v programovacím jazyce Swift a optimalizovaný pro Apple silicon.
Chcete rozchodit všechny speciální klávesy na vašem notebooku HP nx9020, na kernelu 2.4 či 2.6? Chcete to udělat přes XFree86 a vyhnout se bastlům typu lineakd? Pak čtěte dále ...
Máme notebook, na jádru 2.6 se nám detekují pomocí xev jen některé klávesy (ty zvukové na boku počítače), řádka tlačítek na vrchu nejeví zájem o spolupráci.
Nejdřív se tedy přepneme do konzole, a tlačítka řádně promačkáme. Na konzoli dostaneme (či pomocí dmesg vyvoláme) hlášky tohoto typu:
atkbd.c: Unknown key pressed (translated set 2,
code 0x9e on isa0060/serial)
atkbd.c: Use 'setkeycodes e01e <keycode>'
to make it known.
Poslechneme tedy a učiníme tak pro všechny speciální klávesy, které chybu hlásí. Patřičné keycody naleznete v /usr/include/linux/input.h. Protože se při každém bootu musí keykody nastavovat znovu, udělal jsem si malý init skript, který to provede za mne. Je sestaven v duchu Debianu, a není vůbec složitý:
#! /bin/sh
# sets up multimedia keys for HP nx9020 notebook under 2.6.x kernels
N=/etc/init.d/keyboard
set -e
case "$1" in
start|force-reload)
echo -n "Configuring keyboard: setkeycodes"
setkeycodes e01e 155 # mail button
setkeycodes e01a 217 # search button
setkeycodes e023 150 # browser button
setkeycodes e00a 148 # lock button
setkeycodes e031 138 # help button
setkeycodes e039 142 # Fn+F12 Sleep
# volume side-buttons seem to work out-of-box
;;
stop|reload|restart)
;;
*)
echo "Usage: $N {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0
Skript stačí spustit jednou při startu systému, například nalinkováním do /etc/rc.S. Skript spustíme, a od té chvíle by nám všechny klávesy měly posílat keycody, s kterými lze v Xkách dále pracovat. Celý první krok lze u kernelu 2.4 vynechat, protože klávesy jsou rozpoznány bez problémů.
XF86Config-4
Nastavení klávesnice v Xkách je záležitostí mnoha nepřehledných konfiguračních souborů. Především jde o sekci InputDevice v /etc/XF86Config-4:
Section "InputDevice" Identifier "HP nx9020 Keyboard" Driver "keyboard" Option "CoreKeyboard" Option "XkbLayout" "us,cz_qwerty" Option "XkbModel" "hpnx26" Option "XkbRules" "xfree86" Option "XkbOptions" "grp:shift_toggle,altwin:super_win,altwin:menu" EndSection
V tomto případě máme nastaveny dvě skupiny, anglickou a českou. Model klávesnice (zde hpnx26) si musíme ovšem vytvořit sami, protože Xfree86 standardně o naší klávesnici neví, a žádná z nabízených na ní nepasuje. Options nastavují přepínání klávesnice pomocí shiftů, mapují Win klávesu na Super_L (nevím proč, ale mapování na Meta_L funguje pouze u kernelu 2.4), a z menu klávesy je Menu. Indikaci aktuální skupiny Scrollock LEDkou jsem nenastavil, protože notebook žádnou nemá.
Zvolil jsem cestu přidání vlastní definice klávesnice do souboru /etc/X11/xkb/symbols/inet, kde se už mnoho podobných klávesnic nachází. Definice vypadá následovně:
partial alphanumeric_keys
xkb_symbols "hpnx26" {
// Describes the multimedia buttons on HP nx9020 notebook under 2.6 kernel
name[Group1]= "Hewlett-Packard nx9020 kernel26";
key <I1F> { [ XF86ScreenSaver ] };
key <I20> { [ XF86AudioMute ] };
key <I2E> { [ XF86AudioLowerVolume ] };
key <I30> { [ XF86AudioRaiseVolume ] };
key <I32> { [ XF86WWW ] };
key <I5F> { [ XF86Standby ] };
key <I65> { [ XF86Search ] };
key <I6C> { [ XF86Mail ] };
key <I75> { [ Help ] };
};
Předtím, než tento záznam vytvoříte, musíte zjistit ty hexadecimální kody, které XFree používá. Pusťte tedy xev, promačkejte klávesy a zjistěte keycody. To že kernel nastavil klávesám jiné keycody, než které jste pracně definovali, tomu se nedivte, kernel 2.6 se rád chová jako prase. Keycody si poznamenejte, a následně vyhledejte jejich hexadecimální protějšky v /etc/X11/xkb/keycodes/xfree86. pro kernel 2.4 budou hexadecimální hodnoty většiny kláves jiné. Finální řešení tedy nebude fungovat pod oběma řadami zároveň.
Symbolická jména kláves naleznete v /usr/lib/X11/XKeysymDB. Zpravidla se používají jména začínající na XF86- inspirujte se u definic ostatních klávesnic.
Klávesnici máme definouvanou, zbývá ji už jen připsat do /etc/X11/xkb/rules/xfree86, do seznamu internetových klávesnic $inetkbds. Restartujte Xka, a v xevu se ujistěte, že vám všchny klávesy dávají symbolická jména, která jste chtěli. Pokud ano, máte vyhráno a můžete už v libovolné aplikaci, window manageru či desktopovém prostředí klávesy vesele přiřazovat různým funkcím.
Toto si píšu pro sebe, abych to po celonočním laborování nezapomněl. Patrně to bude fungovat i vám, ale ruku do ohně za to nedám. Řešení typu lineak odmítám pouze z ideologických důvodů. To, že lze cíle dosáhnout i jednodušší cestou je možné, a nikomu to upírat nehodlám. Termíny klávesová mapa, skupina, keycody, scankody, symboly atd. mávám dle libosti, páč tomu prd rozumím.
Tiskni
Sdílej: