O víkendu probíhá konference OpenAlt 2025. Na programu je spousta zajímavých přednášek. Pokud jste v Brně, stavte se. Vstup zdarma.
Josef Průša představil novou velkoformátovou uzavřenou CoreXY 3D tiskárnu Prusa CORE One L a nový open source standard chytrých cívek OpenPrintTag i s novou přepracovanou špulkou.
Na GOG.com běží Autumn Sale. Při té příležitosti je zdarma hororová počítačová hra STASIS (ProtonDB: Platinum).
Ubuntu 25.10 má nově balíčky sestavené také pro úroveň mikroarchitektury x86-64-v3 (amd64v3).
Byla vydána verze 1.91.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Ministerstvo průmyslu a obchodu vyhlásilo druhou veřejnou soutěž v programu TWIST, který podporuje výzkum, vývoj a využití umělé inteligence v podnikání. Firmy mohou získat až 30 milionů korun na jeden projekt zaměřený na nové produkty či inovaci podnikových procesů. Návrhy projektů lze podávat od 31. října do 17. prosince 2025. Celková alokace výzvy činí 800 milionů korun.
Google v srpnu oznámil, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Iniciativa Keep Android Open se to snaží zvrátit. Podepsat lze otevřený dopis adresovaný Googlu nebo petici na Change.org.
Byla vydána nová verze 18 integrovaného vývojového prostředí (IDE) Qt Creator. S podporou Development Containers. Podrobný přehled novinek v changelogu.
Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 2.0. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).
Google Chrome 142 byl prohlášen za stabilní. Nejnovější stabilní verze 142.0.7444.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 20 bezpečnostních chyb. Za nejvážnější z nich bylo vyplaceno 50 000 dolarů. Vylepšeny byly také nástroje pro vývojáře.
noatime, kdy se omezí zápisy na systémové úrovni a může se také přidat async, potom se na FS zapisuje asynchronně, tj. většinou až při odpojování.
/etc a /var na ramdisku. Pokud by se při vypínání vůbec něco mělo ukládat, bylo by dobré použít třeba inkrementální zálohování pomocí programu tar nebo dar.
a2x5l5:~# cat /etc/mtab rootfs / rootfs rw 0 0 /dev2/root2 / ext2 ro 0 0 devfs /dev devfs rw 0 0 proc /proc proc rw 0 0 devpts /dev/pts devpts rw 0 0 tmpfs /dev/shm tmpfs rw 0 0
Staci vytvorit initrd, ktery bude mit v linuxrc skriptu pripojeni pripojeni disku do sebe, napr. do /mnt/distribuce. V tomhle ramdisku potom vytvoris potrebne linky do /mnt/distribuce (napr. ln -s mnt/distribuce/bin .) krome var a tmp ktere budou normalne v ramdisku a mas to.
Tohle mam osobne odzkouseno a je to naprosto funkcni, takhle bezi napriklad arachnix(reklama musi bejt
)
)
Za tyden se budu zase snazit, takze pak se treba zase ozvu.
No, muzu zaslat initrd pouzity v arachnixu, ten by mel byt univerzalne funkcni akorat by se musel mirne upravit linuxrc skript.
Jinak se vytvori pomoci dd prazdny soubor o urcite velikosti, ne nem se vytvori filesystem (doporucuju ext2). Ten soubor pak staci pripojit pres loop device a pak v nem jako u bezneho disku vytvorite adresarovou strukturu pomoci linku. Nakonec staci gzip-nout a je to hotovo.
Snad uz se to da pochopit.
PS.: Nekde na netu jsem kdysi videl nejake howto
Nejprve vytvoříme nový souborový systém:
dd if=/dev/zero of=novy_ramdisk bs=1k count=4096 mkfs -t ext2 -F novy_ramdiskTento souborový systém připojíme:
mkdir /tmp/novy_ramdisk mount -o loop -t ext2 novy_ramdisk /tmp/novy_ramdiskNaplníme jej nějakými užitečnými věcmi, jako jsou některé sdílené knihovny, popis terminálu pro ncurses, který potřebuje ke správné funkci bash atd.
TARGET=/tmp/novy_ramdisk
mkdir -p $TARGET/{bin,sbin,usr/share/terminfo/l}
ldd /bin/{bash,{u,}mount} /sbin/modprobe | grep -v ':$' | sed 's/.*=> \(.*\) (.*/\1/' | sort | uniq | \
while read file; do
if [ -z "$file" ]; then continue; fi
if [ -h $file ]; then
LIB=$(basename $(readlink -f $file))
LINK=$(basename $file)
echo LINK \'$LINK\' '->' \'$LIB\'
cp -p $file $TARGET/lib/$LIB
ln -s $LIB $TARGET/lib/$(basename $file)
else
echo LIB \'$(basename $file)\'
cp -p $file $TARGET/lib
fi
done
cp -a /bin/{bash,{u,}mount} $TARGET/bin
cp -a /sbin/modprobe $TARGET/sbin
cp -a /usr/share/terminfo/l/linux $TARGET/usr/share/terminfo/l
mkdir newroot
Napíšeme nějaký šikovný skriptík:
<< EOF > $TARGET/sbin/init cat #!/bin/bash # modprobe nějaké šikovné moduly mount /dev/něco /newroot pivot_root /newroot /newroot/initrd exec /sbin/init EOF chmod 755 $TARGET/sbin/initDále je potřeba vytvořit na ramdisku
/dev se zařízeními null, console a dalšími potřebnými. Hodí se přeložit si vlastní jádro a okopírovat jeho moduly také na onen ramdisk.
Ramdisk se pak odpojí a zkomprimuje gzipem:
umount /tmp/novy_ramdisk gzip --best novy_ramdisk > initrd.imgJádro se pak zavádí zavaděčem (z CD třeba isolinuxem, ale může to být i loadlin v DOSu) tak, že se mu předají tyto parametry:
initrd=initrd.img ramdisk_size=4096Skript
/sbin/init přehodí kořenové systémy příkazem pivot_root, ale může dělat i složitější věci, např. hledat řadiče disků nebo hledat označení CD mechaniky, ve které je vloženo CD, z kterého se systém spouští atd.
Není samozřejmě potřeba kopírovat všechny ty knihovny na ramdisk tak složitým způsobem, protože jsou k dispozici nástroje jako busybox. Každý si může udělat i nějaká soukromá udělátka. Ale tento těžkopádný postup pro lenochy funguje taky, jen ten ramdisk pak možná bude větší (8 MB).
Tiskni
Sdílej: