Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.
Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.
Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
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 »Dlouho jsem řešil následující problém: integrované grafické karty Intel 915 a podobné, které se často nachází v levnějších noteboocích, jsou známé tím, že mají špatně definované rozlišení. To se dá částečně opravit spuštěním utilitky 915resolution PŘED spuštěním aplikace, která toto zařízení využívá, tedy většinou Xorg. Ale nebylo by špatné kdybych mohl v plné míře využít textového režimu ve vysokém rozlišení framebufferu a také gensplash/fbsplash. Ale právě kvůli zmíněnému problému nelze využít plného rozlišení a navíc po spuštění Xorg se na tty rozhází pixely a už s tím vůbec nejde pracovat. Je tedy třeba spustit 915resolution PŘED aktivací framebufferu. To je ale menší oříšek, protože kvůli podpoře fbsplash nelze sestavit framebuffer jako modul, takže není možné spustit 915resolution a pak modprobe. Je nutné spustit 915resolution PŘED startem jádra, což zní dost děsivě. Na různých fórech jsem se pouze dočetl, že se asi budu muset smířit se stávajícím stavem.
Tak jsem si musel poradit sám...
Možná by se zdálo, že není možné spustit něco před startem jádra, ale možné to je. Nikde totiž nebylo řečeno, že to musí být před startem prvního jádra. Stačí sestavit druhé jádro, nemodulární, s minimální konfigurací a BEZ podpory framebufferu (je nustné povolit velmi užitečné systémové volání zvané kexec, které umožní ukončit běh jednoho jádra a spustit jiné bez restartu). Potom pro toto jádro vytvořit initramfs, ve kterém se nachází 915resolution, kexec utilitka a pár základních systémových souborů. Po spuštění tohoto jádra se upraví rozlišení a bez restartu se spustí původní jádro, které (naštěstí) neinicializuje znovu grafickou kartu, takže změna rozlišení je možná PŘED aktivací framebufferu. Takhle jsem zprovoznil framebuffer a fbsplash v plném rozlišení a bez konfliktů s Xorg.
Inicializační ramdisk pro spouštěcí mikrojádro může vypadat například takto:
. ./sbin ./sbin/kexec ./sbin/915resolution ./bin ./bin/sh ./bin/mount ./bin/umount ./bin/cat ./bin/bash ./bin/sed ./bin/cmdline ./lib ./lib/libc.so.6 ./lib/libz.so.1 ./lib/ld-linux.so.2 ./lib/ld-2.4.so ./lib/libdl.so.2 ./lib/libncurses.so.5 ./lib/libreadline.so ./lib/libncurses.so ./lib/libblkid.so.1 ./lib/libuuid.so.1 ./etc ./etc/fstab ./etc/mtab ./init ./dev ./dev/hda ./dev/hda1 ./dev/hda2 ./dev/hda3 ./dev/hda5 ./dev/hda6 ./dev/hda7 ./dev/hda8 ./dev/null ./dev/zero ./dev/mem ./dev/console ./dev/tty ./dev/tty0 ./dev/tty1 ./proc ./boot ./tmp ./varPoužívám následující inicializační skript, který je flexibilní a příjmá spoustu parametrů:
#!/bin/sh set -e echo "Mounting proc" /bin/mount -t proc proc /proc echo "Mounting /boot" /bin/mount -t "`/bin/cmdline fs ext2`" -o ro "`/bin/cmdline dev /dev/hda1`" /boot echo "Changing resolution" /sbin/915resolution "`/bin/cmdline mode 45`" "`/bin/cmdline xres 1280`" "`/bin/cmdline yres 800`" "`/bin/cmdline depth 16`" echo "Loading new kernel" /sbin/kexec --initrd="/boot/`/bin/cmdline initrd initrd`" --append="`/bin/cat /proc/cmdline`" -l "/boot/`/bin/cmdline kernel vmlinuz`" echo "Unmounting /boot" /bin/umount /boot echo "Starting new kernel" exec /sbin/kexec -eCmdline ja malá pomůcka pro čtení parametrů jádra:
#!/bin/sh res=`cat /proc/cmdline |sed -r 's/.*'$1'=([^ ]+).*/\1/'` [ "$res" = "`cat /proc/cmdline`" ] && { echo $2 exit 1 } echo $resParamery jádra:
Název | Význam | Výchozí hodnota |
dev | Oddíl, na kterém se nachází linuxové jádro, většinou /boot | /dev/hda1 |
fs | Souborový systém na oddílu z dev | ext2 |
kernel | Soubor na oddílu určeném parametrem dev, který obsahuje původní linuxové jádro (např. vmlinuz nebo boot/vmlinuz v případě absence /boot oddílu) | vmlinuz |
initrd | soubor s initrd, pravidla stejná jako pro parametr kernel | initrd |
mode,xres,yres,depth | Parametry pro 915resolution | 45, 1280, 800, 16 |
title Gentoo Linux kernel (hd0,0)/vmlinuz-micro splash=silent,theme:regnarg console=tty1 CONSOLE=/dev/tty1 root=/dev/hda5 noapic nolapic pci=routeirq netconf=doma dev=/dev/hda1 fs=reiserfs initrd=gensplash-initrd-regnarg mode=45 xres=1280 yres=800 depth=16 initrd (hd0,0)/initrd-micro
Šílené řešení, že ? Ale doufám, že to bude někomu užitečné. Postup byl testován na notebooku Gigabyte W511U a funguje bez problémů. V případě jakýchkoliv potíží se můžete poradit tady v komentářích nebo se ozvat na moje JID. Také uvítám všechny konstruktivní připomínky (například, že ten initramfs je moc velký, a takové věci jako bash, readline a ncurses tam vůbec nepatří).
Nedokonalou, ale ve většině případů funkční implementaci výše uvedeného řešení najdete na http://regnarg.kx.cz/i915kexec/
Tiskni
Sdílej: