Protože je už po aprílu, můžou strahováci opět zveřejnit program další Virtuální Bastlírny, aniž by připravená témata působila dojmem, že jde o žert. Vězte tedy, že již v úterý 7. dubna od 20:00 proběhne VB, kde se setkají bastlíři, technici, učitelé i nadšenci do techniky a kde i vy se můžete zapojit do družného hovoru, jako by všichni seděli u pomyslného piva. Co mají bastlíři tento měsíc na srdci? Pravděpodobně by nás musel zasáhnout meteorit
… více »Byla vydána verze 26.1 aneb čtvrtletní aktualizace open source počítačového planetária Stellarium (Wikipedie, GitHub). Vyzkoušet lze webovou verzi Stellaria na Stellarium Web.
VOID (Video Object and Interaction Deletion) je nový open-source VLM model pro editaci videa, který dokáže z videí odstraňovat objekty včetně všech jejich fyzikálních interakcí v rámci scény (pády, kolize, stíny...) pomocí quadmaskingu (čtyřhodnotová maska, která člení pixely scény do čtyř kategorií: objekt určený k odstranění, překrývající se oblasti, objektem ovlivněné oblasti a pozadí scény) a dvoufázového inpaintingu. Za projektem stojí výzkumníci ze společnosti Netflix.
Design (GitHub) je 2D CAD pro GNOME. Instalovat lze i z Flathubu. Běží také ve webovém prohlížeči.
Příspěvek na blogu herního enginu Godot představuje aplikaci Xogot přinášející Godot na iPad a iPhone. Instalovat lze z App Storu. Za Xogotem stojí Miguel de Icaza (GitHub) a společnost Xibbon.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za březen (YouTube).
ESP-IDF (Espressif IoT Development Framework), tj. oficiální vývojový framework pro vývoj aplikací na mikrokontrolérech řady ESP32, byl vydán v nové verzi 6.0. Detaily na portálu pro vývojáře.
DeepMind (Alphabet) představila novou verzi svého multimodálního modelu, Gemma 4. Modely jsou volně k dispozici (Ollama, Hugging Face a další) ve velikostech 5-31 miliard parametrů, s kontextovým oknem 128k až 256k a v dense i MoE variantách. Modely zvládají text, obrázky a u menších verzí i audio. Modely jsou optimalizované pro běh na desktopových GPU i mobilních zařízeních, váhy všech těchto modelů jsou uvolněny pod licencí Apache 2.0. Návod na spuštění je už i na Unsloth.
Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 3. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).
Průkopnická firma FingerWorks kolem roku 2000 vyvinula vícedotykové trackpady s gesty a klávesnice jako TouchStream LP. V roce 2005 ji koupil Apple, výrobu těchto produktů ukončil a dotykové technologie využil při vývoji iPhone. Multiplatformní projekt Apple Magic TouchstreamLP nyní implementuje funkcionalitu TouchStream LP na současném Apple Magic Trackpad, resp. jejich dvojici. Diskuze k vydání probíhá na Redditu.
Registry Windows, binární bordel, který proklíná většina počítačově znalých lidí (ostatním je to totiž jedno). Ale dají se nějak využít v Linuxu?
Dají a to dokonce hned dvěma způsoby. Tím prvním je odstrašující příklad, ale zdá se, že jistým lidem to pořád připadá jako dobrý nápad (gconf, anebo elektra). Zde, na abc, před časem proběhla na toto téma bouřlivá debata. Ale o výhodách, či nevýhodách registrů zde hovořit nechci.
Druhým způsobem je využití informací z registrů pro konfiguraci Linuxu. Protože, pokud máme distribuci, jež je přímo zaměřená na lidi z Windows, tak proč jim neulehčit počáteční konfiguraci a nevzít jednoduše některá nastavení z Windows? Ještě, než se začnete chytat za hlavu, tak cílová skupina pro tento software jsou live distribuce a ne ty klasické, protože u těch by to jen zbytečně zdržovalo start. Konkrétně je tohle připravovaná feature pro live distro abclinuxu, viz Leošovo oznámení.
Jenže je tu problém, jak v Linuxu přečíst obsah registrů? Naštěstí existuje program v Pascalu dumphive, který dokáže převést onen binární bordel do čitelnější textové podobny, která se snadno zpracovává. Není nic jednoduššího, než při startu udělat konverzi a soubor zpracovat. Samotné dumpnutí trvá asi 4 až 5 vteřin (D700 a 5400rpm disk) a další zpracování je už poměrně rychlé.
Dalším problémem je čtení z registrů, pokud máte to štěstí a neznáte je, tak přikládám ukázku:
[SYSTEM\ControlSet001\{36FC9E60-C465-11CF-8056-444553540000}]
"CoInstallers32"=hex(7):68,63,63,6f,69,6e,2e,64,6c,6c,2c,48,43,43,4f,49,4e,5f,\
45,6e,74,72,79,00,00
"EnumPropPages32"="usbui.dll,USBControllerPropPageProvider"
"DriverFlags"=dword:00000001
Dumpnutím proto získáme jenom hromadu (u mě 3.5MB) naprosto nekomentovaných dat, jejíž struktura je mě a většině ostatních lidí na planetě utajená. A pokud se podíváte na ukázku, tak tam uvidíte dvě chuťovky, které na nás Billovi programátoři nachystali. Tou první jsou magická čísla UUID, která jsou ve složených závorkách. Správný registr jimi musí samozřejmě jenom přetékat.
Druhou jsou jakási záhadná čísla, která jsou uvozena prefixem hex(7):, nebo jen hex:. Naštěstí se mi podařilo zjistit, že se jedná o ASCII znaky v hexa kódu. Takže, pokud rozšifrujeme náš příklad, uvidíme: hccoin.dll,HCCOIN_Entry. Naštěstí není rozšifrování nic složitého. V Pythonu stačí napsat print chr(int('50',16) a výsledkem je "p".
Protože ani čtení z textové formy není triviální, napsal jsem si v Pythonu modul WinReg.py, jehož třída Reader zabezpečuje čtení. Vlastně obsahuje pouze jednu veřejnou metodu a to getKeys(), jejíž parametr je název větve. Ta vrátí slovník, název_klíče:hodnota příslušné větve. Třída je velmi jednoduchoučká. Provádí pouze sekvenční čtení souboru, protože nepředpokládám, že se z registru bude číst příliš věcí.
Jako první (a v podstatě jediné) využití mě napadlo vytáhnout z registrů připojení k síti. Jelikož můj provider nepoužívá DHCP (všechno je natvrdo zapsané), musím si nastavení pokaždé udělat sám, což zdržuje. Ale dá se předpokládat, že spusta lidí u svým malých sítí, která sdílejí připojení k internetu, také nebudou DHCP používat.
Metodu pokus-omyl, se mi podařilo zjistit, že můsím zjistit magické číslo a pak vím, v jaké větvi jsou parametry nastavené:
SYSTEM\ControlSet001\Services\Tcpip\Linkage\Route- obsahuje UUID defaultního rozhraní a ...
SYSTEM\ControlSet001\Services\Tcpip\Parameters\Interface\{UUID} obsahuje parametry připojení
NameServer - adresa DNS
IPAddress - IP adresa
...
Pokud tohle všechno znám, není problém si vygenerovat patřičný konfigurační soubor, pro init skript. Je velmi příjemné, pokud si člověk nabootuje liveCD a ihned mu funguje připojení k síti/internetu.
Bohužel, jak jsem již říkal nazačátku, Windows registry jsou hromada nedokumentovaného a nekomentovaného bordelu. A navíc jim nikdo nerozumí. Pokládal jsem dotazy na několika serverech, ale odpovědi jsem se nedočkal
. Takže jsem si aspoň udělal obrázek o znalostech uživatele Windows. Jenže zatím nastavení funguje jen na mém počítači a pro můj způsob připojení, což není příliš dobré.
Tiskni
Sdílej:
/etc/protocols (nebo /etc/services) lokální kopií registrů IANA?
A na tajemstvi nekterych polozek registru se muzete zeptat v newsgrupach microsoft.public.cs.*.Mám pocit že některá "tajemství" skytá v registru Windows neznají ani vývojáři Microsoftu
. Je zajímavé, že relevantní odpovědi dostanu až na Linuxovém serveru.
ControlSet001 dej radši CurrentControlSet.
Další zajímavé využití (zpříjemnění) by bylo načtení oddílů a jejich písmen a jejich následný mount do /mnt/win_X.
multi(0)disk(0)rdisk(0)partition(1) na /dev/hdxx, protože zrovna tohle je disk /dev/hdb1, čekal bych, že tam bude disk(1), nebo rdisk(1).
rdisk = 0 má asi speciální význam. Viz zde. Bude to možná něco jako "disk ze kterého bootuji".
.
Já opět podotýkám, že se bude jednat o live distribuci!