Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu srpnový souhrn novinek. Kvůli nedostatečnému zájmu byla ukončena výroba telefonů PinePhone Pro.
Po pěti měsících vývoje byla vydána nová verze 0.15.1 programovacího jazyka Zig (GitHub, Wikipedie). Verze 0.15.0 byla přeskočena. Přispělo 162 vývojářů. Přehled novinek v poznámkách k vydání.
Před sedmi lety společnost Valve představila fork projektu Wine s názvem Proton umožňující v Linuxu přímo ze Steamu hrát počítačové hry do té doby běžící pouze ve Windows. Aktuální přehled podporovaných her na stránkách ProtonDB
Společnost DuckDuckGo rozšířila svůj AI chat Duck.ai o GPT-5 mini (𝕏). Duck.ai umožňuje anonymní přístup bez vytváření účtů k několika modelům umělé inteligence. Aktuálně k GPT-4o mini, GPT-5 mini, Llama 4 Scout, Claude Haiku 3.5 a Mistral Small 3.
Marek Tóth v příspěvku DOM-based Extension Clickjacking: Data ve správcích hesel v ohrožení na svém blogu popsal novou clickjacking techniku s několika variantami útoků a otestoval ji proti 11 správcům hesel. Výsledkem bylo nalezení několika 0-day zranitelností, které mohly ovlivnit uložená data desítek milionů uživatelů. Jedno kliknutí kdekoliv na webové stránce kontrolované útočníkem umožňovalo ukrást uživatelská data ze
… více »Na dnešní akci Made by Google 2025 (YouTube) byly představeny telefony Pixel 10 s novým čipem Google Tensor G5 a novými AI funkcemi, hodinky Pixel Watch 4 a sluchátka Pixel Buds 2a.
The Document Foundation oznámila vydání nové major verze 25.8 svobodného kancelářského balíku LibreOffice. Podrobný přehled nových vlastností i s náhledy v poznámkách k vydání (cs) a také na Youtube a PeerTube.
Zeek (Wikipedie), původně Bro, byl vydán v nové major verzi 8.0.0. Jedná se o open source platformu pro analýzu síťového provozu. Vyzkoušet lze online.
Byl vydán Mozilla Firefox 142.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 142 je již k dispozici také na Flathubu a Snapcraftu.
Jak jednoduše vypínat, zapínat a přepínat stav bezdrátových zařízení?
No přeci používáním RF Kill Switch! Protože se mi s posledním jádrem začly chovat rozumě, po softwarové blokaci se samovolně neodblokují - například wifi to s oblibou dělala, jsem si napsal malý skript na obsluhu této vymoženosti. Ano existuje utilita rfkill, ale tam jaksi není ono jednoduché překlopení stavu, proto vlastní řešení, podobnost ostatního je čistě náhodná.
#!/bin/bash SYS_DIR="/sys/class/rfkill" SYS_FILE="index" Usage() { echo "usage:" >&2 echo "${0##*/} list" >&2 echo "${0##*/} block [index|type]" >&2 echo "${0##*/} unblock [index|type]" >&2 echo "${0##*/} toggle [index|type]" >&2 echo "type:" >&2 echo "all" >&2 cat "$SYS_DIR"/*/type | sort -u >&2 exit 1 } GetStatusText() { case "$1" in 0) echo "soft blocked" ;; 1) echo "unblocked" ;; 2) echo "hard blocked" ;; esac } List() { for DIR in "$SYS_DIR"/*; do INDEX=$(cat "$DIR"/index) NAME=$(cat "$DIR"/name) TYPE=$(cat "$DIR"/type) STATE=$(GetStatusText $(cat "$DIR"/state)) echo "$INDEX: $NAME: $TYPE: $STATE" done } SetState() { for DIR in "$SYS_DIR"/*; do if [ "$3" = "all" ] || [ "$3" = $(cat "$DIR"/"$2") ]; then echo "$1" > $DIR/state || exit 1 fi done } Toggle() { for DIR in "$SYS_DIR/"*; do if [ "$2" = "all" ] || [ "$2" = $(cat "$DIR"/"$1") ]; then echo "$((! $(cat "$DIR"/state)))" > "$DIR"/state || exit 1 fi done } if ! [ -d "$SYS_DIR" ]; then echo "${0##*/}: no RF Kill Switch found!" exit 1 fi if [ "$1" = "list" ]; then List exit 0 fi if [ -z "$2" ]; then Usage exit 1 fi if cat "$SYS_DIR"/*/type | grep -q ^"$2"$; then SYS_FILE="type" elif cat "$SYS_DIR"/*/index | grep -q ^"$2"; then SYS_FILE="index" elif [ "$2" != "all" ]; then echo "${0##*/}: no such index or type" >&2 exit 1 fi case "$1" in unblock) SetState 1 "$SYS_FILE" $2 ;; block) SetState 0 "$SYS_FILE" $2 ;; toggle) Toggle "$SYS_FILE" $2 ;; *) Usage ;; esac
Tiskni
Sdílej:
Err " ${0/*\/} toggle [index|type]" Err "type:" Err " all" for TYPE in `cat "$SYS_DIR"/*/type | sort | uniq`; do
${0##*/}
je lepší než ${0/*\/}
, když ti jde o oříznutí řetězce od začátku.
for x in `cat ...`
je hrůza. Tohle nejde?
cat "$SYS_DIR"/*/type | sort -u | while read TYPEDál jsem to neřešil. Neber to jako buzeraci, jen se snažím pomoct...
>&2
.
for i in ` comman`;do
je bohuzel nekdy nutnosti. Min. ve dvou pripadech.
Prvni pripad je, kdyz kod v cykly neco cte ze stdin, potom totiz command | while read a;do command2 "$a" ; done
probehne pouze jednou, protoze z nejakyho duvodu sezere ten command2 ze stdin zbytek toho vystupu z command. Uz se mi to parkrat stalo, pokud si vzpominam, tak to bylo se ssh. generate-host-list | while read host; do ssh "$host" remote-cmd ; done
bezelo jenom jednou pro prvniho hosta.
Druhy pripad je, kdyz chces v cyklu nastavit nejakou hodnotu, kterou pak pouzijes dal. Pipe totiz vyvola dalsi bash, takze veskere upravy jsou pouze lokalni, cili generate-list | while read item;do if [ $item -gt $max ] ; then max=$item;fi;done ; pracuj-dale-s-max
nebude to same jako for item in `generate-list` ; do if [ $item -gt $max ];then max=$item;fi;done;pracuj-dale-s-max
"-n"
pre ssh, potom ssh necita standardny vstup.
dave@amd64 ~ $ for x in $(echo a b c); do max=$item; done dave@amd64 ~ $ echo $max
$ for x in a b c; do max=$x; done $ echo $max c