Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.
Bylo vydáno OpenBSD 7.7. Opět bez písničky.
V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.
xinput set-prop "ADS2046 Touchscreen" "Coordinate Transformation Matrix"+ jsou tam i volby pro axes swap (Evdev Axes Swap, Evdev Axis Inversion, Evdev Axis Calibration). BTW Zkoušel jsi ts_calibrate? U mě dokáže nakalibrovat osy libovolně převráceně (schválně jsem klikal na protilehlé rohy a fungovaly osové i bodové převrácení).
Práve na začiatu som súšal ts_calibrate a výsledok som potom zapísal cez ioctl do zariadenia. X-ka samozrejme pekne vedia kadečo (lenže na ARM-e s Xkami nenabootujem do sekundy), ani tslib nie je na zahodenie, ale keď Qt od verzie 5.3 pribaľuje input plugin evdevtouch ešte napevno zakompilovaný do eglfs platform pluginu tak som jednoducho musel vymyslieť ako ho dnonútiť fungovať aspoň s mojou dotykovou vrstvou. Inak evdevtouch je úplna primitívnosť čítajúca raw x, y hodnoty ktoré potom podľa min x/y a max x/y prevedie na koordináty displaya. Samozrejme v Qt sa dá používať aj tslib ... lenže evdevtouch sa nedá vypnúť takže mi vždy posielal každý event duplicitne a ešte aby som to mal celkom zábavné tak jeden event mal vždy prevrátenú x-ovú os (ten ktorý si prečítal evdevtouch). Takže to moje riešenie nie je ani univerzálne ani nejak extra flexibilné ale presne na môj usecase to sadlo. A ako bonus som som konečne dorobil akú-takú podporu multitouch do mojej virtuálnej klávesnice lebo tslib plugin do Qt podporuje len single touch a to emuluje pomocou mouse eventov.
| a b c | | x | | d e f | * | y | | g h i | | 1 |Vynásobeno pak (jmenovatel tu hodnotu zpětně normalizuje a umožňuje zbývající transformace v tslib případě je g=h=0):
x_transformed = ( a*x + b*y + c ) / ( g*x + h*y + i) y_transformed = ( d*x + e*y + f ) / ( g*x + h*y + i)K tomu bych mohl poslat aplikaci, co naměří body a spočítá ty koeficienty. Je sice pro Xka, ale používá jen věci typu drawline a maximalizace okna.
Aplikáciu na kalibráciu (aj bez X-iek) s počítaním koeficientov mám tiež (písal som si dávnejšie keď som pri prvom štarte svojej aplikácie chcel nejak elegantne cez wizard nakalibrovať LCD). Dať to do kernelu nie je až taký zlý nápad akurát chcem ešte preskúmať jeden komunitný driver ktorý údajne podporuje multitouch. Ak by bol lepší tak je zbytočné modifikovať oficiálny od výrobcu hardvéru ktorý práve používam.
Z hlediska kodu je to _nyni_ vynasobeni matici. Netrvalo by dlouho, nez by nekdo zacal vymyslet komplikovanejsi zalezitosti a ten kod by zacal kynout.Jo toho bych se taky bál. Nejhorší je, že různé aplikace vyžadují ruzné rozhraní a pak je člověk musí mít všechny nacpané v omezené embedded paměti. A přitom by stačilo jedno nebo dvě ioctl na /dev/input/eventX.
To je vcelku ocekavane, nelze predem vedet, jaky touchscreen k tomu chipu vyrobce pripoji. Nicmene i tak by se ta hodnota mela predavat spise pres DT.DT nevedu, ale je to kompatibilní mechanismus s definicí v pdata
Ako už bolo napísané upraviť v jadre je najmenej pracné riešenie. Situácia by bola jednoduchšia keby existoval jeden univerzálny spôsob ako kalibrovať a transformovať vstup. Lenže ten nie je ... X-ka si to riešia po svojom (na embedded zariadení si ich nemôžem dovloiť), Qt si to rieši posvojom (áno je tam aj podpora tslibu), SDL si to rieši posvojom ... väčšinou by sa to dalo poriešiť vyhodením všetkých ostatných inputov a použitím tslibu ale aj samotný tslib treba upraviť kvôli podpore multitouchu no a potom treba upraviť aj všetky aplikácie / knižnice používajúce tslib aby zvládali multitouch. Preto som sa rozhodol pre jednoduchú úpravu modulu jadra.
No nezostáva nám nič iné len čakať na systemd-tslibd ktorý všetko konečne zjednotí
tslibJá jsem například tslib zavrhl proto, že do komunikace nic nepřidá a je pomalej (pro Xka má míň voleb než evdev driver). Kdyby byla kalibrace v input vrstvě, tak bych se mohl přestat starat i o Xka a navíc bych mohl číst validní údaje přímo v shell skriptu
tslib se stara o transformaci souradnic na nelinearnich touchscreenechDo komunikace s Xkama. Evdev driver v xkách má svojí vlastní kalibraci, která pokryje víc nepřesností než tslib (včetně věcí jako emulace druhého tlačítka pokud dotyk na jednom místě dost dlouho). BTW co myslíš tou nelinearitou, já mám za to, že tslib umí jen lineární transformace (zkosení a offset a možná další - to je automaticky v té matici). Je ale fakt, že jsem měl na verze tslibu dost smůlu (furt něco nefungovalo).
Samozrejme, to prepocitavani v software bude vzdy pomale. Netusim sice jak rychlost souvisi s poctem voleb, ale OK.Moje chyba, moc jsem editoval, to měla být další vlastnost
ts_printJo to jsem používal, v shellu to bylo moc pomalý, nakonec jsem přešel do Xek (kde v X input vrstvě vypadávaly eventy). V tuhle chvíli čtu v xkách přímo evdev a můžu načíst tak tisíce měření za sekundu (X input přímo z evdevu vypadával a X input z tslibu by měl výpočetní blok navíc). BTW taky je nějaká aplikace v GPM, akorát tam je EV_ABS dost zplácanej a ignoruje se synchronizace, takže při "pen down" má jedna z os ještě minulou hodnotu. Bohužel patch by byl ve smyslu: předělat to znova a na to zrovna nemám čas
Pokud myslis Qt/Embedded , pak $ export QWS_MOUSE_PROTO=Tslib:/dev/input/touchscreen0
Myslim Qt5 / eglfs (áno do verzie 5.2 bol tslib jediná možnosť ako tam dostať dotykové ovládanie a +/- to fungovalo, od 5.3 je napevno zakompilovaný evdevtouch ktorý sa zahákne na /dev/input/eventX ktorý má ABS a kalibruje sa len pomocou min / max hodnôt takže s ničím iným než lineárny neotočený neskreslený signál s ním nebude fungovať, odstrániť a nahradiť znovy tslibom by to šlo ale keď som len tak vyskúšal evdevtouch ... tak ide o toľko lepšie, že tam tslib jednoducho nechcem).
K SDL ... nepáči sa mi spôsob ako sa to musí nastavovať, inak práve s týmto som nahrával to video v blogu.
Input layer v linuxu posila jak MT eventy, tak emulovane ST eventy.
Áno, lenže použitím tslibu stratím multitouch.
Osobne nevidím nič zlé na kalibrácii priamo v kerneli. Áno, je to potenciálne vec ktorá sa môže rozbiť ale tých je v kerneli ... no povedzme dosť. Na druhej strane chcieť po userspace aby hádal čo je pripojené ku konkrétnemu /dev/input/eventX ak to môže náhodou vedieť kernel ... fakt by som mal radšej už pekne upravené hodnoty (a kľudne nech sa posielajú aj s raw ak niekto chce) priamo z kernelu.
Osobne nevidím nič zlé na kalibrácii priamo v kerneli. Áno, je to potenciálne vec ktorá sa môže rozbiť ale tých je v kerneli ... no povedzme dosť.+1 V kernelu je tuna věcí, které tam vyloženě nepatří, tak proč tam nedat jednu, u které se inkluze do kernelu přímo nabízí?
Vyrieši sa to na jednom mieste a bude fungovať bez ohľadu aké knižnice / frameworky userland používa. Myslím že by to bolo konzistentnejšie správanie riešiť to v kerneli a nechať userland pracovať so zariadením rovnako ako v prípade klávesnice / myši (teda bez dodatočnej knižnice). Okrem toho už teraz výrobcovia HW dávajú do svojich ovládačov veci ako dejitter, nastavenie tlaku a pod. S použitím tslib-u som mal dvojitý dejitter a ešte ako bonus Qt 5 tslib plugin má vlastný dejitter takže v konečnom dôsledku to oproti surovému zariadeniu poriadne sekalo.
Nasledek nesystematickeho reseni, kdy si kazdy patla svoje reseni znovu, protoze vi, ze to zvladne lepe ... misto toho, aby se udelala jedna knihovna a poradne.Souhlasím, jenže která? Musela by umět všechny polohovací zařízení (ať relativní, tak absolutní) a navíc by musela být opravdu dobře udržovaná (což GPM není a tslib neumí). Jedinej projekt, kterej je dobře udržovanej je právě kernel. Nebo vyrobit něco novýho, ale to je pak cesta do pekel nebo do systemd
OK, chapu. Nejde tslib upravit, aby umel MT ?
Je potrebné upraviť API a samozrejme potom prepísať každú userland aplikácu / knižnicu ktorá používa tslib aby používala multitouch.
S emuláciou to nemá nič spoločné. Problém je so samotným tslib-om ktorý definuje touch event ako:
struct ts_sample { int x; int y; unsigned int pressure; struct timeval tv; };
Takže pre podporu API sa musí buť breaknúť súčasné API a rozbiť tým všetko alebo dorobiť multitouch api tak aby jedno API emulovalo myš ako doteraz a druhé riešilo multitouch. Tak či tak treba dopísať podporu všade kde sa má používať multitouch. Tslib to v súčasnosti nedokáže a preto knižnice ktoré podporujú multitouch (ako Qt) používajú evdev priamo.
Tiskni
Sdílej: