Richard Biener oznámil vydání verze 16.1 (16.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 16. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.
Zulip Server z open source komunikační platformy Zulip (Wikipedie, GitHub) byl vydán ve verzi 12.0. Přehled novinek v příspěvku na blogu.
Před 30 lety, tj. v úterý 30. dubna 1996, byl spuštěn Seznam.cz.
Byly zpracovány a zveřejněny všechny videozáznamy, které stojí za zveřejnění, z konference FOSDEM 2026.
Od úterý 28. dubna musí nově uváděné notebooky v Evropské unii podporovat nabíjení přes USB-C. Jednotná nabíječka byla schválena Evropským parlamentem v říjnu 2022.
Byly publikovány informace o kritické zranitelnosti CVE-2026-31431 pojmenované Copy Fail v Linuxu, konkrétně v kryptografii (AF_ALG). Běžný uživatel může získat práva roota (lokální eskalaci práv). Na všech distribucích Linuxu vydaných od roku 2017. Pomocí 732bajtového skriptu. V upstreamu je již opraveno. Zranitelnost byla nalezena pomocí AI Xint Code.
Textový editor Zed dospěl do verze 1.0. Představení v příspěvku na blogu.
Vývojáři svobodného 3D softwaru Blender představili (𝕏, Mastodon, Bluesky) nejnovějšího firemního sponzora Blenderu. Je ním společnost Anthropic stojící za AI Claude a úroveň sponzoringu je Patron, tj. minimálně 240 tisíc eur ročně. Anthropic oznámil sponzorství v tiskové zprávě Claude for Creative Work.
VNC server wayvnc pro Wayland kompozitory postavené nad wlroots - ne GNOME, KDE nebo Weston - byl vydán ve verzi 0.10.0. Vydána byla také verze 1.0.0 související knihovny neatvnc.
Bylo oznámeno vydání Fedora Linuxu 44. Ve finální verzi vychází šest oficiálních edic: Fedora Workstation a Fedora KDE Plasma Desktop pro desktopové, Fedora Server pro serverové, Fedora IoT pro internet věcí, Fedora Cloud pro cloudové nasazení a Fedora CoreOS pro ty, kteří preferují neměnné systémy. Vedle nich jsou k dispozici také další atomické desktopy, spiny a laby. Podrobný přehled novinek v samostatných článcích na stránkách
… více »$COLUMNS obvykle obsahuje počet sloupců. Stačí ji tedy přečíst pomocí getenv. Nevím ale, nakolik je to přenosné.
#include <stdio.h>
#include <term.h>
#include <ncurses.h>
int main() {
int rows, cols;
setupterm(NULL, fileno(stdout), (int*)0);
rows = tigetnum("lines");
cols = tigetnum("cols");
printf("%dx%d\n", cols, rows);
return 0;
}
Slinkovat s ncurses (-lncurses), v případě potřeby přidat include cestu (třeba -I/usr/include/ncurses).
Osobně bych asi použil to, co je popsáno v man tty_ioctl. Dále by se daly využít ncurses, nicméně to je v tomhle případě asi overkill. A pak je tu ještě ta škaredá možnost se čtením proměnných prostředí $LINES a $COLUMNS :)
#include <stdio.h>
#include <curses.h>
int
main(void)
{
setupterm(NULL, 1, NULL);
printf("%d %d\n", tigetnum("cols"), tigetnum("lines"));
return 0;
}
Je třeba linkovat s -lcurses.
Jako další level se můžeš podívat na signál SIGWINCH, případně na celou knihovnu ncurses.
void vypis(FILE *fr) /* vypis souboru - fr musi být otevřen pro čtení v text */
{
char c;
int p_radek = 1;
while (c = getc(fr), c !=EOF){
putchar(c);
if (c == '\n')
++p_radek;
if (p_radek == radek) {
printf("%*s %ls", sloupcu / 2 + 2, "MORE");
p_radek = 1;
while (getchar() == '\n')
;
putchar(c);
}
}
}
void init(void)
{
if (setupterm(NULL, 1, NULL) != ERR) {
sloupcu = COLS;
radek = LINES;
}
}
Tiskni
Sdílej: