Společnost Espressif (ESP8266, ESP32, …) získala většinový podíl ve společnosti M5Stack, čímž posiluje ekosystém AIoT.
Byla vydána nová stabilní verze 3.5 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). Přehled novinek také na YouTube. Nově lze využívat cloud (audio.com). Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.
50 let operačního systému CP/M, článek na webu Computer History Museum věnovaný operačnímu systému CP/M. Gary Kildall z Digital Research jej vytvořil v roce 1974.
Byl zveřejněn program a spuštěna registrace na letošní konferenci Prague PostgreSQL Developer Day, která se koná 4. a 5. června. Na programu jsou 4 workshopy a 8 přednášek na různá témata o PostgreSQL, od konfigurace a zálohování po využití pro AI a vector search. Stejně jako v předchozích letech se konference koná v prostorách FIT ČVUT v Praze.
Po 48 letech Zilog končí s výrobou 8bitového mikroprocesoru Zilog Z80 (Z84C00 Z80). Mikroprocesor byl uveden na trh v červenci 1976. Poslední objednávky jsou přijímány do 14. června [pdf].
Ještě letos vyjde Kingdom Come: Deliverance II (YouTube), pokračování počítačové hry Kingdom Come: Deliverance (Wikipedie, ProtonDB Gold).
Thunderbird 128, příští major verze naplánovaná na červenec, přijde s nativní podporou Exchange napsanou v Rustu.
Byly vyhlášeny výsledky letošní volby vedoucího projektu Debian (DPL, Wikipedie). Novým vedoucím je Andreas Tille.
Po osmi měsících vývoje byla vydána nová verze 0.12.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 268 vývojářů. Přehled novinek v poznámkách k vydání.
Poslední měsíc byl plný zajímavých akcí, o kterých Vám bastlíři z projektu MacGyver mohou povědět, protože se na ně sami vydali. Kde všude byli, ptáte se? Objevili se na Installfestu, Arduino Day, Hackaday Europe a tajném srazu bastlířů z Twitteru. A z každé akce pro vás mají zajímavé poznatky.
… více »#! /bin/sh # umisteni klienskych ip IP_PATH="/etc/users/users.txt" DOWNLOAD=2000kbit UPLOAD=2000kbit GARANTDOWN=50kbit GARANTUPLOAD=50kbit shaping_up() { echo "" echo "Mazu predchozi nastaveni" tc qdisc del dev eth0 root &> /dev/null tc qdisc del dev eth1 root &> /dev/null tc qdisc add dev eth0 root handle 1: htb default 9999 r2q 100 tc qdisc add dev eth1 root handle 1: htb default 9999 r2q 100 # propustnost internetu tc class add dev eth0 parent 1:0 classid 1:1 htb rate ${UPLOAD} prio 1 tc class add dev eth1 parent 1:0 classid 1:1 htb rate ${DOWNLOAD} prio 1 # QOS line=` wc -l $IP_PATH | awk '{print $1}'` x=1 while [ "$x" -le $line ]; do a=`sed -n $x\p $IP_PATH | awk '{print $1}'` if [ $a = \# ]; then false else ip=`sed -n $x\p $IP_PATH | awk '{print $2}'` upload=`sed -n $x\p $IP_PATH | awk '{print $4}'` download=`sed -n $x\p $IP_PATH | awk '{print $3}'` data="$(expr $x + 1000) $base" # Level 1 subclases (HTB) tc class add dev eth1 parent 1:1 classid 1:1${x} htb rate ${GARANTDOWN} ceil ${download} tc filter add dev eth1 parent 1: protocol ip prio 10 u32 match ip dst ${ip} flowid 1:1${x} tc class add dev eth0 parent 1:1 classid 1:1${x} htb rate ${GARANTUPLOAD} ceil ${upload} tc filter add dev eth0 parent 1: protocol ip prio 10 u32 match ip src ${ip} flowid 1:1${x} fi x=$(expr $x + 1) done # P2P shaping tc class add dev eth0 parent 1:1 classid 1:8999 htb rate 500kbit ceil 1000kbit tc class add dev eth1 parent 1:1 classid 1:8999 htb rate 500kbit ceil 1000kbit i=1 for i in $(seq 9);do tc filter add dev eth0 parent 1:0 protocol ip prio 2 handle $i fw classid 1:8999 tc filter add dev eth1 parent 1:0 protocol ip prio 2 handle $i fw classid 1:8999 done #P2P konec ################################################################## # Ostatni IP tc class add dev eth0 parent 1:1 classid 1:9999 htb rate 50kbit tc class add dev eth1 parent 1:1 classid 1:9999 htb rate 50kbit tc filter add dev eth0 parent 1: protocol ip prio 10 u32 match ip src 0.0.0.0/0 flowid 1:9999 tc filter add dev eth1 parent 1: protocol ip prio 10 u32 match ip dst 0.0.0.0/0 flowid 1:9999 echo "" echo "Vse nastaveno :)" echo "" } shaping_down() { echo -e "Zastavuji shapovani klientu ... " tc qdisc del dev eth0 root &> /dev/null tc qdisc del dev eth1 root &> /dev/null echo -e "Shapov▒n▒ zastaveno ... " } case "$1" in 'start') shaping_up ;; 'stop') shaping_down ;; '--help') echo -e "\nPouziti: $0 start|stop\n" echo -e "$0 start => zapne shaping" echo -e "$0 stop => vypne shaping" echo -e "$0 --help => vypise tuto napovedu\n" ;; * ) echo -e "\nPouziti: $0 start|stop\n" echo -e "Napoveda: $0 --help\n" esac
sed 's/#.*$//;s/^ *//;s/ *$//;/^$/d' < $input_file | \ while read parametr1 parametr2 parametr3 parametr4; do echo "1=$parametr1" echo "2=$parametr2" echo "3=$parametr3" echo "4=$parametr4" done
Tiskni Sdílej: