Byl odhalen supply chain attack na Notepad++: útočníci kompromitovali hosting Notepad++ a vybrané dotazy na aktualizace přesměrovávali na servery pod jejich kontrolou. Doporučuje se stáhnout instalátor a přeinstalovat.
Francouzská veřejná správa má v rámci vládní iniciativy LaSuite Numérique ('Digitální sada') v plánu od roku 2027 přestat používat Microsoft Teams a Zoom a přejít na videokonferenční platformu Visio, hostovanou na vlastním hardwaru. Konkrétně se jedná o instance iniciativou vyvíjeného open-source nástroje LaSuite Meet, jehož centrální komponentou je LiveKit. Visio nebude dostupné pro veřejnost, nicméně LaSuite Meet je k dispozici pod licencí MIT.
Eben Upton oznámil další zdražení počítačů Raspberry Pi: 2GB verze o 10 dolarů, 4GB verze o 15 dolarů, 8GB verze o 30 dolarů a 16GB verze o 60 dolarů. Kvůli růstu cen pamětí. Po dvou měsících od předchozího zdražení.
Shellbeats je terminálový hudební přehrávač pro Linux a macOS, který umožňuje vyhledávat a streamovat hudbu z YouTube, stahovat odtud skladby a spravovat lokální playlisty. Pro stahování dat z YouTube využívá yt-dlp, pro práci s audiostreamy mpv. Je napsán v jazyce C a distribuován pod licencí GPL-3.0, rezpozitář projektu je na GitHubu.
Byla vydána nová verze 26.1.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. S podporou hardwarového dekódování videa. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.
LibrePCB, tj. svobodný multiplatformní softwarový nástroj pro návrh desek plošných spojů (PCB), byl po deseti měsících od vydání verze 1.3 vydán ve verzi 2.0.0. Přehled novinek v příspěvku na blogu a v aktualizované dokumentaci. Zdrojové kódy LibrePCB jsou k dispozici na GitHubu pod licencí GPLv3.
Guido van Rossum, tvůrce programovacího jazyka Python, oslavil 70. narozeniny. Narodil se 31. ledna 1956 v nizozemském Haarlemu.
OpenClaw je open-source AI asistent pro vykonávaní různých úkolů, ovládaný uživatelem prostřednictvím běžných chatovacích aplikací jako jsou například WhatsApp, Telegram nebo Discord. Asistent podporuje jak různé cloudové modely, tak i lokální, nicméně doporučován je pouze proprietární model Claude Opus 4.5 od firmy Anthropic v placené variantě. GitHubová stránka projektu OpenClaw.
Projekt VideoLAN a multimediální přehrávač VLC (Wikipedie) dnes slaví 25 let. Vlastní, tenkrát ještě studentský projekt, začal již v roce 1996 na vysoké škole École Centrale Paris. V první únorový den roku 2001 ale škola oficiálně povolila přelicencování zdrojových kódů na GPL a tím pádem umožnila používání VLC mimo akademickou půdu.
Moltbook je sociální síť podobná Redditu, ovšem pouze pro agenty umělé inteligence - lidé se mohou účastnit pouze jako pozorovatelé. Agenti tam například rozebírají podivné chování lidí, hledají chyby své vlastní sociální sítě, případně spolu filozofují o existenciálních otázkách 🤖.
Dobry den,
chtel bych se zeptat, jestli je mozny ignorovat '\n' za konzolovym vstupem.
Tedy program si vyzada naplnit premennou i hodnotou 45. scanf("%i", &i); Kdyz uzivatel zada 45<ENTER>, v konzole se automaticky hodi vozik na novej radek. Ja chci zabranit tomu - tedy pokracovat v zadku, jenom aby bola promenna i naplnena a dalsi vystup na stdout zobrazen na tou istou radku.
Dekuju.
Případně lze vycházet z následující modifikace ukázkového programu kbhit.c z Linux - začínáme programovat. Vysvětlení začíná na straně 167.
$ ./kbhit 9 = 0x9; 10 = 0xA; 11 = 0xB; 12 = 0xC;
$ cat kbhit.c
#include <stdio.h>
#include <string.h>
#include <termios.h>
#include <term.h>
#include <curses.h>
#include <unistd.h>
#define BUFFER_MAX 6
static struct termios initial_settings;
static struct termios new_settings;
static void init_keyboard(void)
{
tcgetattr(0, &initial_settings);
new_settings = initial_settings;
new_settings.c_lflag &= ~ICANON;
new_settings.c_lflag &= ~ECHO;
new_settings.c_lflag &= ~ISIG;
new_settings.c_cc[VMIN] = 1;
new_settings.c_cc[VTIME] = 0;
tcsetattr(0, TCSANOW, &new_settings);
}
static void close_keyboard(void)
{
tcsetattr(0, TCSANOW, &initial_settings);
}
int main(int argc, char *argv[])
{
int c = 0;
int index = 0;
int number;
char buffer[BUFFER_MAX+1];
init_keyboard();
while (c != 'q') {
if (index == 0) {
memset(buffer, 0, BUFFER_MAX+1);
}
if ((((c = getchar()) == '\n')) && (index != 0)) {
printf(" = 0x%X; ", atoi(buffer));
index = 0;
continue;
}
if ((index < BUFFER_MAX) && isdigit(c)) {
buffer[index++] = c;
putchar(c);
}
}
close_keyboard();
return 0;
}
Tiskni
Sdílej: