Po nákresech ovladače Steam Controller a puku společnost Valve na svém GitLabu publikovala projekt Inkterface, tj. podrobný návod (PDF, video v mp4) na sestavení předního panelu s e-papírovým displejem pro Steam Machine pro zobrazování systémových informací. Použity jsou součástky od společnosti Adafruit.
V jádře Linux byla nalezena a v dubnu letošního roku v upstreamu opravena kritická zranitelnost Bad Epoll aneb CVE-2026-46242. Jedná se o zranitelnost typu "race-condition use-after-free", která běžnému uživateli umožňuje získat práva roota. Na distribucích Linuxu i na Androidu. Dokonce i zevnitř sandboxu prohlížeče Chrome. Chyba byla do Linuxu zavedena v dubnu 2023, tj. Linux 6.4.
Byla vydána nová verze 10.4 sady aplikací pro SSH komunikaci OpenSSH. Přináší řadu důležitých bezpečnostních oprav, vylepšení funkcí a oprav chyb. Vyzkoušet lze experimentální podporu postkvantového algoritmu mldsa44-ed25519.
Open Printer je otevřená kompaktní tiskárna od Open Tools. Brzy by měla být spuštěna kampaň na její podporu na Crowd Supply. Současně by měly být uvolněny zdrojové kódy. Postavena je na Raspberry Pi Zero W a STM32. Používá inkoustové kazety HP 302.
Byla vydána nová verze 3.28.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opraveno bylo 8 zranitelností.
Čeští policisté společně se svými tureckými kolegy zadrželi 51 lidí, kteří se podle kriminalistů podíleli na provozu podvodného call centra v Istanbulu. Skupina je spojena s 1173 případy podvodů na českých občanech, při kterých vznikla škoda přes 553 milionů korun.
Immich byl vydán v nové verzi 3.0.0. Jedná se o alternativu k výchozím aplikacím od Googlu a Applu pro správu fotografií a videí umožňující vlastní hosting serveru Immich. K vyzkoušení je demo. Immich je součástí balíčků open source aplikací FUTO. Zdrojové kódy jsou k dispozici na GitHubu pod licencí AGPL-3.0.
Společnost Juno Computers prodávající počítače s předinstalovaným Linuxem má nově v nabídce linuxový tablet Juno Tab 4 - WiFi. Na výběr je Debian, Ubuntu a Kubuntu. Předobjednat jej lze za 949 liber (26 500 korun).
Podman (Pod Manager), nástroj umožňující vytvářet a provozovat kontejnery, aniž by uživatel potřeboval práva roota, byl vydán v nové major verzi 6.0.0. Přehled novinek v poznámkách k vydání. Řešena je i vážná bezpečnostní chyba CVE-2026-57231.
Společnost Sony oznámila, že od ledna 2028 přestane vydávat nové hry pro PlayStation na fyzických discích. Všechny budoucí tituly budou dostupné výhradně v digitální podobě na PlayStation Store.
VARIABLE=aaa
sed -e "s/\$VAR\$\/${VARIABLE}/g" /tmp/text.txt
VARIABLE=aaa vytvoří proměnnou shellu, kterou programy z shellu spuštěné nevidí. Zkus
export VARIABLE=aaa
sed -e "s/\$VAR\$\/${VARIABLE}/g" /tmp/text.txt
sed.
To je nesmysl. Zaprvé, sed žádnou proměnnou nepotřebuje vidět, protože ji expanduje přímo shell do toho argumentu sedu. Zadruhé, i kdyby ji sed viděl ve svém environment poli (3. argument main() atd. atp.), nikdy by ji nepoužil, protože sed prostě a jednoduše nikdy žádné proměnné prostředí neexpanduje, dolar neinterpretuje jako začátek názvu proměnné atd. atp. Není to shell.
VARIABLE=aaa
sed -e 's/\$VAR\$\'"/${VARIABLE}/g" /tmp/text.txt
sed -e "s/\\\$VAR\\\$/${VARIABLE}/g" /tmp/text.txt
Což mě vede k druhé poznámce. sed výrazy, kde se z jakéhokoliv důvodu objevuje jakékoliv lomítko se blbě čtou, když se takže raději třeba:
sed -e "s@\\\$VAR\\\$@${VARIABLE}@g" /tmp/text.txt
resp. předchozí mix uvozovek třeba:
sed -e 's#\$VAR\$#'"${VARIABLE}#g" /tmp/text.txt
Pořád máte problém, pokud hodnota té proměnné bude obsahovat oddělovač. Takže abrakadabra…
sed -re "s/\\\$VAR\\\$/${VARIABLE//\//\\/}/g"
A teď ještě ošetřit věci typu "\1", "&", a to už snad bude všechno. :-)
replace="bar\1&\nfoo//" unsedvar="$(printf '%s' "$replace" | sed 's|\\|\\\\|g ; s|/|\\/|g ; s|&|\\&|g')" sed 's/\$VAR\$/'"$unsedvar/g" file.txt
Já bych netrval na sedu. Nacpat obsah proměnné do příkazu sedu s sebou vždycky nese riziko, že v ní budou znaky, které sed zmatou. Připomíná to kdysi populární SQL injection útoky.
Co třeba tohle?
export VARIABLE='>>>///ble;ble///<<<'
awk '{gsub(/\$VAR\$/, ENVIRON["VARIABLE"]); print $0}'
Tady^^^ může $VARIABLE obsahovat, co chce. Testovací vstup:
something $VAR$ ble $VAR$$$$VAR$ blabla Karlovy $VAR$y 00$VAR$1 $VAR$$VAR$
Vrací mi to tohle, což by snad i docela šlo:
something <<<///ble;ble///>>> ble <<<///ble;ble///>>>$$<<<///ble;ble///>>> blabla Karlovy <<<///ble;ble///>>>y 00<<<///ble;ble///>>>1 <<<///ble;ble///>>><<<///ble;ble///>>>
Tedy, tomu awk se samozřejmě dá ten vstupní soubor, buď jako argument nebo na standardní vstup.
No jo, bude se tam muset dát ${VARIABLE//&/\\&} (přiřadit do jiné proměnné prostředí nebo tak).
Což stále neřeší VARIABLE='\&', protože výsledek "\\&" pochopí awk jinak, než bylo zamýšleno. Takže by se to muselo oescapovat úplně a pořádně.
Tiskni
Sdílej: