plwm je nový, poměrně minimalistický správce oken pro X11. Podporuje dynamické dláždění okny, plochy, pravidla pro okna atd. Zvláštností je, že je napsaný v logickém programovacím jazyce Prolog. Používá implementaci SWI-Prolog.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Sean Heelan se na svém blogu rozepsal o tom, jak pomocí OpenAI o3 nalezl vzdálenou zranitelnost nultého dne CVE-2025-37899 v Linuxu v implementaci SMB.
Jiří Eischmann v příspěvku na svém blogu představuje typy, jak lépe chránit své soukromí na mobilním telefonu: "Asi dnes neexistuje způsob, jak se sledování vyhnout úplně. Minimálně ne způsob, který by byl kompatibilní s tím, jak lidé technologie běžně používají. Soukromí ovšem není binární věc, ale škála. Absolutního soukromí je dnes na Internetu dost dobře nedosažitelné, ale jen posun na škále blíže k němu se počítá. Čím méně dat se o vás posbírá, tím nepřesnější budou vaše profily a tím méně budou zneužitelné proti vám."
Byla vydána nová stabilní verze 25.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Warbler. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.
Multiplatformní open source spouštěč her Heroic Games Launcher byl vydán v nové stabilní verzi 2.17.0 Franky (Mastodon, 𝕏). Přehled novinek na GitHubu. Instalovat lze také z Flathubu.
Organizace Apache Software Foundation (ASF) vydala verzi 26 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Klávesnice IBM Enhanced Keyboard, známá také jako Model M, byla poprvé představena v roce 1985, tzn. před 40 lety, s počítači IBM 7531/7532 Industrial Computer a 3161/3163 ASCII Display Station. Výročí připomíná článek na zevrubném sběratelském webu Admiral Shark's Keyboards. Rozložení kláves IBM Enhanced Keyboard se stalo průmyslovým standardem.
Vyšlo Pharo 13 s vylepšenou podporou HiDPI či objektovým Transcriptem. Pharo je programovací jazyk a vývojové prostředí s řadou pokročilých vlastností.
Java má dnes 30. narozeniny. Veřejnosti byla představena 23. května 1995.
Event code 256 (BTN_0) Event code 257 (BTN_1) Event code 258 (BTN_2) Event code 259 (BTN_3) Event code 260 (BTN_4) Event code 261 (BTN_5) Event code 262 (BTN_6) Event code 263 (BTN_7) Event code 264 (BTN_8) Event code 265 (BTN_9) Event code 266 (?) Event code 267 (?) Event code 268 (?) Event code 269 (?) Event code 270 (?) Event code 271 (?) Event code 272 (BTN_LEFT) Event code 273 (BTN_RIGHT) Event code 274 (BTN_MIDDLE) Event code 275 (BTN_SIDE) Event code 276 (BTN_EXTRA) Event code 277 (BTN_FORWARD) Event code 278 (BTN_BACK) Event code 279 (BTN_TASK) Event code 280 (?) Event code 281 (?) Event code 282 (?) Event code 283 (?) Event code 284 (?) Event code 285 (?) Event code 286 (?) Event code 287 (?) Event code 288 (BTN_TRIGGER) Event code 289 (BTN_THUMB) Event code 290 (BTN_THUMB2) Event code 291 (BTN_TOP) Event code 292 (BTN_TOP2) Event code 293 (BTN_PINKIE) Event code 294 (BTN_BASE) Event code 295 (BTN_BASE2) Event code 296 (BTN_BASE3) Event code 297 (BTN_BASE4) Event code 298 (BTN_BASE5) Event code 299 (BTN_BASE6) Event code 300 (?) Event code 301 (?) Event code 302 (?) Event code 744 (?) Event code 745 (?) Event code 746 (?) Event code 747 (?) Event code 748 (?) Event code 749 (?) Event code 750 (?) Event code 751 (?) Event code 752 (?) Event code 753 (?) Event code 754 (?) Event code 755 (?) Event code 756 (?) Event code 757 (?) Event code 758 (?) Event code 759 (?) Event code 760 (?) Event code 761 (?) Event code 762 (?) Event code 763 (?) Event code 764 (?) Event code 765 (?) Event code 766 (?)ale i některé z reagujícÍch tlačítek mají ten otazník pak je tu dost otazníků které nedělají nic mám z toho dojem, že systém cosi tuší, ale neví co si má myslet jestli třeba nejde použít jinej ovladač možná jsem to zamotal, nejsem zrovna admin :-/
#define KEY_ESC 1
a zároveň #define KEY_CALENDAR 0x18d
), evdev pro terminál by měl jít přinutit.
lsusb -v
, které je vhodné pustit pod rootem. Výpis desktriptoru začíná řádkem Device descriptor:
a může být docela dlouhý.
Bus 001 Device 005: ID 0000:0002 Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x0000 idProduct 0x0002 bcdDevice 1.03 iManufacturer 1 www.mindaugas.com iProduct 2 MJ16 iSerial 3 1.3 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 34 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 2 MJ16 bmAttributes 0x80 (Bus Powered) MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 0 No Subclass bInterfaceProtocol 0 None iInterface 3 1.3 HID Device Descriptor: bLength 9 bDescriptorType 33 bcdHID 1.01 bCountryCode 0 Not supported bNumDescriptors 1 bDescriptorType 34 Report wDescriptorLength 153 Report Descriptors: ** UNAVAILABLE ** Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 10 Device Status: 0x0000 (Bus Powered)
*UNAVAILABLE*
. To nevadí, lze jej získat několika dalšími způsoby. Ukázka na vypůjčené bezdrátové USB myši:
1) Přes debugfs
less /sys/kernel/debug/hid/0003:0458:0185.0002
.
Ty čísla znamenají: ID zařízení, Vendor ID, Product ID, Interface No (nebo jak se tomu říká, jádro k němu vždycky připočte nějaký offset)
2) Přes usbhid-dump
a hidrd-convert
.
usbhid-dump -s 001:008
kde 001 je číslo sběrnice a 008 číslo zařízení; to zjistíš z lsusb
. Tohle bohužel vyplivne špatně čitelný syrový výstup. Klidně ho sem ale pošli, převod do lidsky srozumitelné formy zařídím. Případně by se provedl takto:
usbhid-dump -s 001:008 | grep -v : | xxd -r -p | /home/madcat/Misc/hidrd/src/hidrd-convert -o spec
. Nástroj hidrd-convert
roste tady.
80: USB 00.0: 0000 Unclassified device [Created at usb.122] Unique ID: n8KV.wznJ2PIm_z5 Parent ID: 2UT6.WvppkBPnhU7 SysFS ID: /devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.3/1-3.3:1.0 SysFS BusID: 1-3.3:1.0 Hardware Class: unknown Model: "www.mindaugas.com MJ16" Hotplug: USB Vendor: usb 0x0000 "www.mindaugas.com" Device: usb 0x0002 "MJ16" Revision: "1.03" Serial ID: "1.3" Speed: 1.5 Mbps Module Alias: "usb:v0000p0002d0103dc00dsc00dp00ic03isc00ip00in00" Driver Info #0: Driver Status: usbhid is active Driver Activation Cmd: "modprobe usbhid" Config Status: cfg=new, avail=yes, need=no, active=unknown Attached to: #85 (Hub)
lsusb
, viz:
Bus 002 Device 003: ID 17ef:1003 Lenovo Integrated Smart Card Reader Bus 002 Device 004: ID 05ac:12a8 Apple, Inc. iPhone5/5C/5S/6 Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubZejména Device ID se může měnit pokaždé, když zařízení zapojíš, takže je potřeba vždycky mrknout do
lsusb
. Mimochodem, fakt, že ti to špatně hlásí počet os ukazuje na nesprávný HID deskriptor. V Linuxu se s tím dá všelijak šaškovat, v nejextrémnějším případě napsáním malého jaderného modulu, který HID vrstvě podstrčí upravený deskriptor.
OK bádal jsem chvíli co je to ten deskriptor a nějak to zkoušet až to půjde ok se zdá být proveditelné
a terazky mně povězte čo si predstavujetě pod napsáním malého jaderného modulu, protože o tom nemám ani páru
díkOK dal jsem dohromady txt s HID deskriptorem
Teď bych potřeboval nejakou radu jak z toho udělat ovladač
Tiskni
Sdílej: