Byl představen emulátor terminálu Ratty (GitHub) s podporu 3D grafiky přímo v terminálu. Inspirací byl operační systém TempleOS od Terryho Davise. Ratty je napsán v jazyce Rust. Využívá knihovnu Ratatui pro tvorbu rozhraní a herní engine Bevy pro 3D vykreslování.
Evropské instituce i některé americké státy dál zpřísňují pravidla pro ověřování věku na internetu. Cílem je zabránit dětem v přístupu k obsahu pro dospělé. Úřady ale narážejí na zásadní problém – stále více lidí používá VPN, tedy služby umožňující skrýt identitu i skutečnou polohu na internetu. Právě VPN nyní Evropská parlamentní výzkumná služba (EPRS) označila za „mezeru v legislativě, kterou je potřeba uzavřít“ [Novinky.cz].
Multiplatformní open source aplikace pro psaní poznámek Joplin (Wikipedie) byla vydána v nové verzi 3.6. Nově lze mít v poznámkách embedovaný externí obsah, např. YouTube videa.
Open Hardware Summit 2026 organizovaný OSHWA (Open Source Hardware Association) proběhne o víkendu 23. a 24. května v Berlíně na Technické univerzitě Berlín.
Navigace se soukromím CoMaps postavena nad OpenStreetMap byla vydána v nové verzi 2026.05.06. Přibyla možnost aktualizovat mapy v aplikaci CoMaps, aniž by bylo nutné aktualizovat i verzi aplikace. CoMaps je komunitní fork aplikace Organic Maps.
OCCT3D (Open CASCADE Technology) Open Source 8.0 bylo vydáno. OCCT3D (Wikipedie, GitHub) je objektově orientovaná knihovna pro 3D CAD, CAM nebo CAE. Používá se například v softwarech FreeCAD a KiCad.
Ve FreeBSD byla nalezena a již opravena 21letá zranitelnost CVE-2026-42511 v dhclient. Jedná se o vzdálené spuštění kódu (RCE). Útočník mající pod správou DHCP server může získat plnou kontrolu nad systémem FreeBSD pouze jeho připojením k místní síti.
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.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-1.3. Současně oznámila, že nadcházející větší vydání 24.04-2.0 bude mít modernější webový prohlížeč.
Ploopy po DIY trackballech či sluchátkách představuje nový externí DIY trackpoint se čtyřmi tlačítky Bean. Obsahuje snímač Texas Instruments TMAG5273, spínače Omron D2LS-21 a řadič RP2040, používá firmware QMK. Schémata jsou na GitHubu; sadu lze předobjednat za 69 kanadských dolarů (bez dopravy a DPH).
const char *dev = "/dev/input/by-id/usb-Gaming_KB_Gaming_KB-event-kbd";
fd = open(dev, O_RDONLY);
while (1) {
n = read(fd, &ev, sizeof ev);
if (ev.type == EV_KEY) {
// nějaké zpracování
}
}
Chtěl bych něco takovéhoto (pro libovolný, při spuštění daný, počet klávesnic, čili místo dev1, dev2 by byl nějaký seznam, nebo Vector, nebo tak něco, ale to už taky zvládnu)
const char *dev = "/dev/input/by-id/usb-Gaming_KB_Gaming_KB-event-kbd";
const char *dev2 = "/dev/input/by-id/usb-neco-jineho-event-kbd";
fd = open(dev, O_RDONLY);
fd2 = open(dev2, O_RDONLY);
while (1) {
n = read(fd, &ev, sizeof ev);
n2 = read(fd2, &ev2, sizeof ev2);
if (n1) {
if (ev.type == EV_KEY) {
// nějaké zpracování
}
}
if (n2) {
if (ev2.type == EV_KEY) {
// nějaké podobné zpracování
}
}
}
ale dělat to naráz (neblokující), nečekat zablokovaný na jedné z klávesnic ....
nebo ještě lépe blokovat, dokud nebude aspoň jedna stisknutá, abych se zbytečně nemotal ve smyčce a nepožíral planě výkon
Asi bych to zvládnul nějak přez vlákna, ale to mi přijde s kanonem na vrabce
Řešení dotazu:
poll() nebo select()? Zdá se mi, že obě dokážou číst z více file descriptorů naráz, ale už jsem je dlouho nepoužil.
Druhá možnost je std::thread pro každou klávesnici. (Ale pro use case shift na jedné a písmeno na druhé je mnohem lepší poll().)
Tiskni
Sdílej: