Byl představen emulátor terminálu Ratty (GitHub) s podporu 3D grafiky přímo v terminálu. Inspirací byl operační systém TempleOS od Terryho Davise. Ratty je napsán v jazyce Rust. Využívá knihovnu Ratatui pro tvorbu rozhraní a herní engine Bevy pro 3D vykreslování.
Evropské instituce i některé americké státy dál zpřísňují pravidla pro ověřování věku na internetu. Cílem je zabránit dětem v přístupu k obsahu pro dospělé. Úřady ale narážejí na zásadní problém – stále více lidí používá VPN, tedy služby umožňující skrýt identitu i skutečnou polohu na internetu. Právě VPN nyní Evropská parlamentní výzkumná služba (EPRS) označila za „mezeru v legislativě, kterou je potřeba uzavřít“ [Novinky.cz].
Multiplatformní open source aplikace pro psaní poznámek Joplin (Wikipedie) byla vydána v nové verzi 3.6. Nově lze mít v poznámkách embedovaný externí obsah, např. YouTube videa.
Open Hardware Summit 2026 organizovaný OSHWA (Open Source Hardware Association) proběhne o víkendu 23. a 24. května v Berlíně na Technické univerzitě Berlín.
Navigace se soukromím CoMaps postavena nad OpenStreetMap byla vydána v nové verzi 2026.05.06. Přibyla možnost aktualizovat mapy v aplikaci CoMaps, aniž by bylo nutné aktualizovat i verzi aplikace. CoMaps je komunitní fork aplikace Organic Maps.
OCCT3D (Open CASCADE Technology) Open Source 8.0 bylo vydáno. OCCT3D (Wikipedie, GitHub) je objektově orientovaná knihovna pro 3D CAD, CAM nebo CAE. Používá se například v softwarech FreeCAD a KiCad.
Ve FreeBSD byla nalezena a již opravena 21letá zranitelnost CVE-2026-42511 v dhclient. Jedná se o vzdálené spuštění kódu (RCE). Útočník mající pod správou DHCP server může získat plnou kontrolu nad systémem FreeBSD pouze jeho připojením k místní síti.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-1.3. Současně oznámila, že nadcházející větší vydání 24.04-2.0 bude mít modernější webový prohlížeč.
Ploopy po DIY trackballech či sluchátkách představuje nový externí DIY trackpoint se čtyřmi tlačítky Bean. Obsahuje snímač Texas Instruments TMAG5273, spínače Omron D2LS-21 a řadič RP2040, používá firmware QMK. Schémata jsou na GitHubu; sadu lze předobjednat za 69 kanadských dolarů (bez dopravy a DPH).
Ahojte,
snažím se rozběhnout script pro vytvoření cyklu, který spočítá teplotu dohramdy a na konci provedu dělení a získám tak průměrnou teplotu.
Bohužel se mně to nějak nedaří dát dohromady. Poradíte prosím?
#!/bin/bash
total_temp=0
avg_temp=0
for i in {1..5}
do
teplota="`cat /sys/bus/w1/devices/28-0301977927ab/w1_slave | sed -n 's/^.*\(t=[^ ]*\).*/\1/p' | sed 's/t=//' | awk '{x=$1}END{print(x/1000)}'`"
total_temp = $total_temp + $teplota
sleep 2
done
avg_temp = $total_temp / 4
echo $avg_temp
total_temp=$(($total_temp + $teplota)) avg_temp=$(($total_temp / 4))Co je vystupem prikazu:
cat /sys/bus/w1/devices/28-0301977927ab/w1_slave?
Co je vystupem prikazu:neco jako:cat /sys/bus/w1/devices/28-0301977927ab/w1_slave?
9a 01 4b 46 7f ff 0c 10 9f : crc=9f YES 9a 01 4b 46 7f ff 0c 10 9f t=25625
#!/bin/bash
total_temp=0
values=0
for i in {1..5}; do
teplota=`awk -F'=' '/t/{print $2/1000}' /sys/bus/w1/devices/28-0301977927ab/w1_slave`
total_temp=`echo $total_temp + $teplota | bc -l`
values=$(($values + 1))
sleep 2
done
avg_temp=`echo $total_temp / $values |bc -l`
echo $avg_temp
let values++
((values++))
#!/bin/bash
total_temp=0
values=5
for ((i=0; i<$values; i++)); do
teplota=`sed -n 's/^.*t=\([^ ]*\).*/\1/p' /sys/bus/w1/devices/28-0301977927ab/w1_slave`
((total_temp+=teplota))
sleep 2
done
((avg_temp=total_temp/values))
echo ${avg_temp%???}.${avg_temp: -3}
A mas to aj s povodnou presnostou (fixed point arithmetic) a s minimom novych procesov (aj ta funkcnost toho sedu sa da prepisat do cisteho bashu, cim sa to asi 10x urychli, ale uz sa mi nechce).
# cat w1_awg.awk
BEGIN {
if ((ARGC < 2) || (ARGC > 3)) {
print "Usage:", ARGV[0], "/sys/bus/w1/devices/[sensor_id]/w1_slave [samples]"
exit 1
}
if (ARGC==3){
SAMPLES=ARGV[2]
if (SAMPLES !~ "[1-9][0-9]*") {
print "Number of samples must be number greather than zero"
exit 2
}
} else {
SAMPLES=5
}
FNAME=ARGV[1]
TEMP_SUM=0
for (i = 1; i <= SAMPLES; ++i) {
while((getline line < FNAME) > 0 ) {
if (line ~ "t=") {
split(line, f, "=")
TEMP_SUM+=f[2]/1000
}
}
close(FNAME)
system("sleep 2")
}
print TEMP_SUM/SAMPLES
}
# awk -f w1_awg.awk /sys/bus/w1/devices/28-0301977927ab/w1_slave 3 25.75 #
Tiskni
Sdílej: