Byl vydán Mozilla Firefox 145.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Ukončena byla podpora 32bitového Firefoxu pro Linux. Přidána byla podpora Matrosky. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 145 bude brzy k dispozici také na Flathubu a Snapcraftu.
Lidé.cz (Wikipedie) jsou zpět jako sociální síť s "ambicí stát se místem pro kultivované debaty a bezpečným online prostředím".
Byla vydána nová verze 4.4 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.
ASUS má v nabídce komplexní řešení pro vývoj a nasazení AI: kompaktní stolní AI superpočítač ASUS Ascent GX10 poháněný superčipem NVIDIA GB10 Grace Blackwell a platformou NVIDIA DGX Spark. S operačním systémem NVIDIA DGX založeném na Ubuntu.
Desktopové prostredie Trinity Desktop vyšlo vo verzii R14.1.5. Je tu opravená chyba v tqt komponente spôsobujúca 100% vyťaženie cpu, dlaždice pre viac monitorov a nemenej dôležité su dizajnové zmeny v podobe ikon, pozadí atď. Pridaná bola podpora distribúcií Debian Trixie, Ubuntu Questing, RHEL 10 a OpenSUSE Leap 16.
Grafická aplikace Easy Effects (Flathub), původně PulseEffects, umožňující snadno povolovat a zakazovat různé audio efekty v aplikacích používajících multimediální server PipeWire, byla vydána ve verzi 8.0.0. Místo GTK 4 je nově postavená nad Qt, QML a Kirigami.
Na YouTube lze zhlédnout Godot Engine – 2025 Showreel s ukázkami toho nejlepšího letos vytvořeného v multiplatformním open source herním enginu Godot.
Blíží se konec roku a tím i všemožná vyhlášení slov roku 2025. Dle Collins English Dictionary je slovem roku vibe coding, dle Dictionary.com je to 6-7, …
Cloudflare Radar: podíl Linuxu na desktopu dosáhl v listopadu 6,2 %.
Chcete vědět, co se odehrálo ve světě techniky za poslední měsíc? Nebo si popovídat o tom, co zrovna bastlíte? Pak doražte na listopadovou Virtuální Bastlírnu s mikrofonem a kamerou, nalijte si něco k pití a ponořte se s strahovskými bastlíři do diskuze u virtuálního piva o technice i všem možném okolo. Mezi nejvýznamnější novinky patří Průšovo oznámení Core One L, zavedení RFID na filamentech, tisk silikonu nebo nový slicer. Dozvíte se ale i
… více »
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <termios.h>
#include <stdio.h>
#define BAUDRATE B19200
#define MODEMDEVICE "/dev/ttyUSB0"
#define FALSE 0
#define TRUE 1
volatile int STOP=FALSE;
main()
{
int fd,c, res;
struct termios oldtio,newtio;
char buf[255];
fd = open(MODEMDEVICE, O_RDWR | O_NOCTTY );
if (fd <0) {perror(MODEMDEVICE); exit(-1); }
tcgetattr(fd,&oldtio); /* save current port settings */
bzero(&newtio, sizeof(newtio));
newtio.c_cflag = BAUDRATE | CRTSCTS | CS8 | CLOCAL | CREAD;
newtio.c_iflag = (INPCK | IGNPAR);
newtio.c_oflag = 0;
/* set input mode (non-canonical, no echo,...) */
newtio.c_lflag = 0;
newtio.c_cc[VTIME] = 0; /* inter-character timer unused */
newtio.c_cc[VMIN] = 1; /* blocking read until 5 chars received */
tcflush(fd, TCIFLUSH);
tcsetattr(fd,TCSANOW,&newtio);
while (STOP==FALSE) { /* loop for input */
res = read(fd,buf,255); /* returns after 5 chars have been input */
buf[res]=0; /* so we can printf... */
write (fd, "a", 1);
if (buf[0] == 'I') write (fd, "sipka nahoru" , 12);
else
printf("%s\n", buf);
if (buf[0]=='I') STOP=TRUE;
}
tcsetattr(fd,TCSANOW,&oldtio);
}
echo "ahoj" > /dev/ttyUSB0neco na displej vypise?
fd = open("/dev/...", O_RDWR);
write(fd, ...);
read(fd, ...);
close(fd);
options.c_cflag = parita,rychlost,stopbity ... options.c_cflag |= CS8 | CLOCAL | CREAD | HUPCL; options.c_iflag = IGNPAR | IGNBRK | INPCK | IMAXBEL | IXOFF; options.c_lflag = ECHOKE; options.c_oflag = ONOCR;
2.nejak nemuzu prijit na to jak pouzivat len() u fce write musim zadat i pocet odesilanych znaku write(fd,"a",1) - jeden znak - a do streamu fd, v pripade ze mam pole znaku napr. char c[] = {'a','h','o','j'}; a nechci zadavat pocet znaku (protoze pole budu potrebovat generovat ruzne dlouhe), zkousel jsem write (fd, c , len(c)) ale nevim proc nefunguje to :(Pokud pole znaků bude vždycky nějaký text, můžeš to pole udělat null-terminated a pro zjištění délky použít strlen().
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdint.h>
int main(int argc, char **argv) {
char up[] = "\xFE\x58sipka nahoru";
char down[] = "\xFE\x58sipka dolu";
char *tosend = NULL;
int a = 'J';
switch(a){
case 'I':
tosend = strdup(up);
break;
case 'J':
tosend = strdup(down);
break;
default:
printf("Strange character\n");
exit(-1);
}
printf("string length is %d\n", strlen(tosend));
printf("%s", tosend);
free(tosend);
return 0;
}
Když to pustím pajpou do xxd, tak je vidět, jaký je obsah řetězce:
$ ./a.out | xxd
0000000: 7374 7269 6e67 206c 656e 6774 6820 6973 string length is
0000010: 2031 320a fe58 7369 706b 6120 646f 6c75 12..Xsipka dolu
^^^^
Tiskni
Sdílej: