Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.
Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.
Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.
OpenSearch (Wikipedie) byl vydán ve verzi 3.0. Podrobnosti v poznámkách k vydání. Jedná se o fork projektů Elasticsearch a Kibana.
PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.
Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.
Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-05-06. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Pravděpodobně se jedná o poslední verzi postavenou na Debianu 12 Bookworm. Následující verze by již měla být postavena na Debianu 13 Trixie.
Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.
sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.
Embedded Bits ukazuje video, které předvádí boot linuxového jádra za méně než 1 sekundu. Jde o projekt swiftBoot firmy MPC Data. Použitý hardware: ARM cortex-a8 na 500MHz vývojové desce Texas Instruments OMAP3530 EVM. Jádro 2.6.29 a souborový systém pro flash NAND. Zařízení po bootu spustí aplikaci na zachytávání videa z kamery a toto video zobrazí na LCD. To vše za méně než sekundu.
Tiskni
Sdílej:
Asi tak. Mně taky Linux bootuje (od zavaděče do spuštění initu) do několika (asi tak 3) sekund. Nejdéle trvá připojení souborového systému. Prostě staré PC, kde je téměř vše napevno připojeno a zakompilováno do jádra.
Zbytek (init) je pouze otázka obecnosti startovacích skriptů. Když jsem si psal vlastní skripty (síť, ssh, iptables, alsa, hwclock, připojení další souborových systémů), tak jsem měl login za dalších 7 sekund.
Teď používám openrc a čas se natáhl asi o dalších 10 sekund. Jenže to mi je stejně jedno, protože uprostřed se systém zastaví, protože chce heslo na rozšifrování LVM.
Pak je ale problém v architektuře (případně jejích ovladačích v jádře). Já s vestavěnými systémy mám malé zkušenosti, ale co jsem si všiml, tak problém byl spíš v inicializaci daného hardwaru (pomalé prohledávání mtd, samé čekání na timeouty a především zpomalený výstup přes sériovou konzolu).
Nezpochybňuji, že na vestavěných systémech to je úspěch. Pouze ukazuji, že obecně to žádný rekord není, protože existují stroje, kde takové časy lze vykouzlit.
(Nasadil jste mi brouka do hlavy, a asi si to budu muset změřit.)
Dovoluji si vám oznámit, že hardware onoho testovaného stroje má zásadně více, než 500MHz a že kernel sám o sobě má kolem 200-300KB (gzip) místo obvyklých 1.5+MB. Není tam prakticky nic, co by muselo, není tam podpora pro MD, žádné extra video drivery, network drivery, není tam prakticky skoro vůbec nic.
S dobou bootu jsem se asi trochu sekl, počítám to od doby, kdy kernel začne vypisovat první printk(), do té doby těžko odlišit, co je ještě kód bootloaderu a co už kernel. Boot je skutečně "jen" probliknutím, než se spustí shell. Upozorňuji, že je vše v paměti (initramfs) a kernel při startu inicializuje leda tak paměť, video drivery a PS/2 keyboard. Podpora pro PCI, USB, jakýkoli storage (IDE, SATA, ..), filesystémů (včetně tmpfs, root jede z ramfs) a spoustu dalších věcí chybí.
K tomu, abych dokázal Ctiradovi, že Linux umí bootovat za méně, než 5 sekund
Upřímně jsem takový systém doopravdy měl, postupně ta podpora samozřejmě přibyla, stejně tak komprimované /lib/modules se všemi drivery pro disky a síťové karty, oháčkovaný busybox, portmap, NFS (včetně utility na export) a mke2fs - vše s uClibc (u pár věcí jsem musel přepisovat GNUismy a obsolete věci v kódu.
V současné době je to ~6MB userspace a ~600KB kernel a slouží jako odlehčený PXE server s podporou NFS a pár celkem unikátními vlastnostmi ("kooperace" s jiným autoritativním DHCP serverem na síti - užitečné při hromadném bootu něčeho, co si má natáhnout kernel+initrd z PXE serveru, ale co se má po nabootování připojit do klasické sítě s krabičkovým routerem). Userspace po dekompresi má okolo 7MB (díky squashfs /lib/modules a /usr/bin), nicméně do 8MB RAM u (hodně) starých mašin se to asi nevleze díky dekomprimovanému kernelu. Ještě bych mohl memtest86+ ("proof-of-concept" a default v pxelinux.cfg) zkomprimovat, ale 160KB -> 90KB zas toliko není
Tvořil jsem to víceméně ve volném čase, v současné chvíli je to asi půl roku v zapomnění, mám v plánu se k tomu někdy vrátit, dodělat TeX dokumentaci, sjednotit nějak "SDK" a build procedury (v současnosti 2 qemu systémy a busybox+buildroot s configy na dalším linux serveru), NFS write locking, apod.
Jen tak pro zajímavost - našel jsem někde v koši fragment toho, co jsem používal jako "poznámkový blok" pro kompilaci 3rd-party věcí:
export PATH="/usr/src/buildroot/build_i486/staging_dir/usr/bin/:$PATH" nfs-tools: ./configure \ --target=i486-linux \ --host=i486-linux \ --build=i486-pc-linux-gnu \ --disable-nfsv4 \ --disable-gss \ --disable-tirpc \ --disable-uuid \ --disable-mountconfig \ --without-tcp-wrappers \ CFLAGS="-march=i486 -Os -pipe -fomit-frame-pointer" make portmap: CFLAGS="-march=i486 -Os -pipe -fomit-frame-pointer" \ make CC="i486-linux-gcc" NO_TCP_WRAPPER=yes DAEMON_UID=0 DAEMON_GID=0 e2fsprogs: ./configure \ --target=i486-linux \ --host=i486-linux \ --build=i486-pc-linux-gnu \ --enable-verbose-makecmds \ --disable-compression \ --disable-htree \ --disable-elf-shlibs \ --disable-bsd-shlibs \ --disable-profile \ --disable-checker \ --disable-jbd-debug \ --disable-blkid-debug \ --disable-testio-debug \ --disable-debugfs \ --disable-imager \ --disable-resizer \ --disable-fsck \ --disable-e2initrd-helper \ --disable-tls \ --disable-uuidd \ --disable-nls \ --disable-rpath \ CFLAGS="-march=i486 -Os -pipe -fomit-frame-pointer" make
Ten mke2fs tam je vesměs jen kvůli NFS, ramfs/tmpfs mi nešel exportovat ani přes vygooglené triky (přes fsid).
Ale dost OT