O víkendu probíhá konference OpenAlt 2025 (Stream). 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.
statfs(2) a následně napsal takovýhle kód:
struct statfs stats;
cout << statfs(path.c_str(), &stats) << endl; /* path = "/" */
cout << stats.f_bfree << " [" << stats.f_bsize << "]" << endl;
cout << stats.f_bfree * stats.f_bsize << endl;
Statfs proběhlo v pořádku (vrací nulu), ale výsledný volný místo se dost liší od čísla co ukazuje df, asi vo 1.5 Giga. To se mi vůbec nelíbí. Podezírám stafs(), že mi vrací nějaký bullshity. Zkoušel jsem i statvfs(), ale výsledek byl stejný.df, no ale kdo se má v tom jejich #define pekle vyznat. Používaj tam taky statvfs(), ale dělaj okolo toho nějaký úpravy, který se mi nepodařilo dešifrovat...
root|vojta-dell /tmp #> /cesta/k/programu
0
1542023 [4096]
6316126208
root|vojta-dell /tmp #> df -h
Souborový systém Velikost Užito Volno Uži% Připojeno do
/dev/sda1 30G 24G 4,4G 85% /
(...)
Díky za každou radu.
Řešení dotazu:
df jsou asi 3/4 tý, co dostanu ze statfs()...
statfs() ukazuje 6'166'932 volných 1K bloků, zatímco df jen 4'594'128 1K bloků.
). A kolik je 5% z 30 G?

long f_bfree; /* free blocks in fs */ long f_bavail; /* free blocks avail to non-superuser */neni jejich rozdil je podle me tech 5% o kterych se tu mluvi
mount a losetup, ale to mi nepřijde jako právě čistý řešení, radši bych se tomu vyhnul...
mount() nebo ioctl() na chvíli příslušnou capabilitie(s) povolim, ne?
blocks_used = s.f_blocks - s.f_bfree;
blocks_percent_used = 0;
if (blocks_used + s.f_bavail) {
blocks_percent_used = (blocks_used * 100ULL + (blocks_used + s.f_bavail)/2) / (blocks_used + s.f_bavail);
}
A zbytek informaci:
static unsigned long kscale(unsigned long b, unsigned long bs)
{
return (b * (unsigned long long) bs + 1024/2) / 1024;
}
printf(" %9lu %9lu %9lu %3u%% %s\n",
kscale(s.f_blocks, s.f_bsize), Celkova kapacita (kB)
kscale(s.f_blocks - s.f_bfree, s.f_bsize), Vyuzito (kB)
kscale(s.f_bavail, s.f_bsize), Dostupne misto (kB)
blocks_percent_used, mount_point); Procent zaplneni a pripojny bod
Tiskni
Sdílej: