Man Yue Mo z GitHub Security Lab se podrobně rozepsal o již opravené zranitelnosti CVE-2023-6241 v Arm Mali GPU umožňující získání roota na telefonu Pixel 8 s povoleným MTE (Memory Tagging Extension).
V San José probíhá vývojářská konference NVIDIA GTC 2024. CEO společnosti NVIDIA Jensen Huang měl dvouhodinovou keynote, ve které představil celou řadu novinek: NVIDIA Blackwell platform, NVIDIA NIM microservices, NVIDIA Omniverse Cloud APIs, Project GR00T, …
Byly zpracovány a na YouTube zveřejněny videozáznamy jednotlivých přednášek z letošního Installfestu.
Od 21. do 23. března proběhnou Arduino Days 2024. Sledovat bude možné oficiální streamy. Zúčastnit se lze i lokálních akcí. V Česku jsou aktuálně registrovány dvě: v Praze na Matfyzu a v Poličce v městské knihovně.
Letošní ročník konference LinuxDays se uskuteční o víkendu 12. a 13. října, opět se potkáme v pražských Dejvicích na FIT ČVUT. Také během letošního ročníku nás budou čekat desítky přednášek, workshopy, stánky a spousta doprovodného programu. Aktuální dění můžete sledovat na Twitteru, Facebooku nebo na Mastodonu, přidat se můžete také do telegramové diskusní skupiny.
Byla vydána nová major verze 2.0.0 a krátce na to opravné verze 2.0.1 open source online editoru Etherpad (Wikipedie) umožňujícího společné úpravy v reálném čase.
Matematický software GNU Octave byl vydán ve verzi 9.1.0. Podrobnosti v poznámkách k vydání. Nově je preferovaný grafický backend Qt a preferovaná verze Qt 6. V tomto vydání byly přepracovány funkce pro převod čísel z desítkové soustavy. Jako obvykle jsou zahrnuta také výkonnostní vylepšení a zlepšení kompatibility s Matlabem.
Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu březnový souhrn novinek. Vypíchnout lze, že pracují na virtuálním asistentu PineVox a zatím bezejmenných sluchátkách na lícní kosti (bone conduction).
Hyprland, kompozitor pro Wayland zaměřený na dláždění okny a zároveň grafické efekty, je již dva roky starý. Při té příležitosti byla vydána verze 0.37.0 (a záhy opravná 0.37.1 řešící chybu ve vykreslování oken). Nově závisí na knihovně hyprcursor, která poskytuje škálovatelné kurzory myši.
Všechny zápisy v blogu jsou pod licencí Creative Commons BY-SA 3.0 CZ
Pokud jste před necelým rokem s nadšením stahovali první zdrojáky Bran Skeldalu zkompilovatelné pod Linuxem (tedy aspoň někde), nejspíš vaše nadšení během posledního půl roku značně ochladlo. Když se ale podíváte na diff revize 111, nejspíš vám bude jasné, proč se tak dlouho nic nedělo.
Poslední půlrok jsem pomalu přepisoval renderovací jádro Skeldalu na přenositelný kód. Měl jsem při tom na výběr — buď commitovat pravidelně a mít v repozitáři 30 nefunkčních revizí plných bordelu, nebo udělat jeden obří commit, až se přenositelný kód dostane do stejného stavu jako revize 110.
Vzhledem k tomu, že repozitář nejede na GITu, vybral jsem si druhou možnost. Jestli je to dobře nebo špatně můžeme probrat v diskuzi, ale hlavní je, že obří commit už je hotový.
Hlavní změnou je přechod z 15bitové barevné hloubky na 24bitovou a přepis dalšího kusu načítacího kódu, aby nezávisel na endianitě ani velikosti datových typů cílového počítače. Pokud máte ne-x86 systém a chcete zkusit štěstí, klidně můžete. Do hlavního menu byste se s trochou štěstí mohli dostat bez segfaultu a dokonce bude vypadat normálně.
Instalační instrukce se od minule nijak zvlášť nezměnily, jen přibyl configure skript, jak je zmíněno na konci článku. Pokud už máte nainstalovanou starší verzi, prostě si zkompilujte novou binárku a můžete hrát. Pokud se nějaké NPC bude v rozhovoru tvářit, že jste ho už navštívili, přestože jste u něj poprvé (třeba bard v přístavu), nejspíš jste začali hrát před revizí 103 a budete muset začít od začátku.
V nejbližších dnech se můžete těšit na další vylepšování renderovacího jádra, hlavně opravu grafických artefaktů kolem kurzoru myši a konečně i chybějící efekt zemětřesení, který je aktuálně nahlášený jako bug. Pak bude následovat další větší přepis jiného subsystému, tentokrát ale ne tak velký.
Tiskni Sdílej:
Mám menší problém, asi bug. Můžu to hodit do bugzilly pokud bude třeba.
Skeldal jsem si zkompiloval na 64 bit Archu (díky za rychlou opravu). Změnil jsem DATA_PATH v unix/init.cpp na /usr/share/skeldal. Do DATA_PATH jsem nakopíroval soubory* podle tvého předchozího návodu ale teď mi při spuštění jen krátce problikne okno a vypíše se:
[lukas@orochi ~]$ skeldal Nemohu precist konfiguracni soubor "/home/lukas/.skeldal/skeldal.ini". skeldal: ../skeldal/libs/memman.cpp:423: virtual size_t File::read(void*, size_t): Assertion `_file' failed. Aborted
* instalačku jsem musel sosat z uloz.to, protože odkaz od napoleon games hází 404.
#0 0x00007ffff6e2b565 in raise () from /lib/libc.so.6 #1 0x00007ffff6e2c9e6 in abort () from /lib/libc.so.6 #2 0x00007ffff6e24145 in __assert_fail () from /lib/libc.so.6 #3 0x0000000000449b90 in File::read (this=<value optimized out>, buf=<value optimized out>, size=<value optimized out>) at ../skeldal/libs/memman.cpp:423 #4 0x000000000044980d in ReadStream::readUint8 (this=<value optimized out>) at ../skeldal/libs/memman.cpp:184 #5 0x000000000044982f in ReadStream::readUint16LE (this=0x7c5420) at ../skeldal/libs/memman.cpp:189 #6 0x0000000000429226 in SpellList::load (this=0x6afc80, stream=...) at ../skeldal/game/magic.cpp:280 #7 0x000000000042cfd2 in kouzla_init () at ../skeldal/game/magic.cpp:2352 #8 0x000000000043a310 in init_skeldal () at ../skeldal/game/skeldal.cpp:994 #9 0x000000000043aab6 in main (argc=<value optimized out>, argv=<value optimized out>) at ../skeldal/game/skeldal.cpp:1708Chce to načítat soubor KOUZLA.DAT, který mám v MAPS.
skeldal: game/magic.cpp:302: TKOUZLO& SpellList::operator[](unsigned int): Assertion `_spellData && idx < _size && "Invalid spell index"' failed. AbortedJsem na amd64, stačí toto jako bugreport, nebo je třeba víc? A mimochodem ,lze to spusti ve fullscreenu?
skeldal: game/magic.cpp:302: TKOUZLO& SpellList::operator[](unsigned int): Assertion `_spellData && idx < _size && "Invalid spell index"' failed. Program received signal SIGABRT, Aborted. 0x00007ffff6de7a75 in raise () from /lib/libc.so.6 (gdb) backtrace #0 0x00007ffff6de7a75 in raise () from /lib/libc.so.6 #1 0x00007ffff6deb5c0 in abort () from /lib/libc.so.6 #2 0x00007ffff6de0941 in __assert_fail () from /lib/libc.so.6 #3 0x000000000042e426 in SpellList::operator[] (this=[value optimised out>, idx=[value optimised out>) at game/magic.cpp:302 #4 0x000000000042e560 in get_spell_teleport (num=4025) at game/magic.cpp:324 #5 0x0000000000430f3d in thing_cast (num=4025, postava=0, sector=6, victim=0xffffffffffffffff, noanim=96 '`') at game/magic.cpp:2281 #6 0x0000000000429e36 in inv_quaf (id=[value optimised out>, xa=[value optimised out>, ya=161, xr=[value optimised out>, yr=[value optimised out>) at game/inv.cpp:1107 #7 human_click (id=[value optimised out>, xa=[value optimised out>, ya=161, xr=[value optimised out>, yr=[value optimised out>) at game/inv.cpp:2297 #8 0x000000000040a350 in find_in_click_map (ms=0x6c06c1, pt=0x66fb26, pocet=6, evtype=0x7fffffffde8c) at game/clk_map.cpp:557 #9 0x000000000040a633 in ms_clicker (msg=[value optimised out>, usr=[value optimised out>) at game/clk_map.cpp:598 #10 0x000000000044d24f in enter_event (tree=0x6c06e8, msg=0x7fffffffdef0) at libs/event.cpp:245 #11 0x000000000044d7df in send_message (message=[value optimised out>) at libs/event.cpp:426 #12 0x0000000000456631 in Sys_ProcessEvents () at sdl/input.cpp:109 #13 0x000000000044d8b0 in do_events () at libs/event.cpp:528 #14 0x000000000045894d in Task_WaitEvent (event=4025) at unix/task.cpp:46 #15 0x000000000043e37f in enter_game () at game/skeldal.cpp:1066 #16 0x000000000043f3a4 in game_big_circle (enforced=[value optimised out>) at game/skeldal.cpp:1424 #17 0x000000000043fb16 in load_saved_game (argc=[value optimised out>, argv=[value optimised out>) at game/skeldal.cpp:1537 #18 start (argc=[value optimised out>, argv=[value optimised out>) at game/skeldal.cpp:1581 #19 main (argc=[value optimised out>, argv=[value optimised out>) at game/skeldal.cpp:1681