Byl vydán Debian 13 s kódovým názvem Trixie. Přehled novinek v poznámkách k vydání.
WLED je open-source firmware pro ESP8266/ESP32, který umožňuje Wi-Fi ovládání adresovatelných LED pásků se stovkami efektů, synchronizací, audioreaktivním módem a Home-Assistant integrací. Je založen na Arduino frameworku.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.8.
Herní studio Hangar 13 vydalo novou Mafii. Mafia: Domovina je zasazena do krutého sicilského podsvětí na začátku 20. století. Na ProtonDB je zatím bez záznamu.
Operátor O2 má opět problémy. Jako omluvu za pondělní zhoršenou dostupnost služeb dal všem zákazníkům poukaz v hodnotě 300 Kč na nákup telefonu nebo příslušenství.
Společnost OpenAI představila GPT-5 (YouTube).
Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.
Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.
Byla vydána verze 1.89.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
mtd
zapisovat.
Pripravil jsem si k tomu 2 skripty . Prvni nakopiruje pres ssh potrebne soubory a spusti druhy skript na cilovem stroji. V tomto druhem skriptu mam cast, ktera ma provest kontrolu, jestli se jedna o spravny typ routeru a az pak zacne provadet zapis. Zde je cele zneni skriptu, vcetne popisu funkce a toho kde na ni nastava problem:
#!/bin/sh workdir=$PWD firmware=$PWD/firmware.mtd1.bin boardinfo=$(cat /proc/cpuinfo | grep machine) model="Archer C6 v3" ## Kontrola, jestli je pripraven soubor s firmware pro obnovu. if [ -f "$firmware" ]; then echo "Nalezen soubor pro instalaci."; else echo "Soubor nenalezen. Spustte znovu skript router_setup.sh" && exit fi sleep 2 ## Flash samotneho obrazu s konfiguraci a balicky echo "Bude provedena obnova konfigurace." read -p $'Press enter to continue...\n' echo "##################################" echo "### ###" echo "### PROBIHA OBNOVA KONFIGURACE ###" echo "### ! NEVYPINEJTE NAPAJENI ! ###" echo "### ###" echo "##################################" ## Kontrola retezce "Archer C6 v3" v /proc/cpuinfo (testovaci, nedestruktivni cast na overeni spravne funkce kontroly). <-- Selhava na tom, ze tzv. "here redirection <<<" neni v OpenWrt shellu "ash" podporovana. ## Psalo mi to "<<< unknown operand". V BASH na linuxu nebo ZSH na OSX vsak funkce normalne funguje if grep -q "$model" <<< "$boardinfo"; then echo "TEST OK"; else echo "NOT OK" fi ## Kontrola retezce "Archer C6 v3" a flash balicku s upravenym firmware ## if grep -q "$model" <<< "$boardinfo"; then ## mtd write $firmware firmware; else ## echo "Balicek neni urcen pro tento model a revizi" ## echo "Pouzijte odpovidajici balicek" ## fi ## Kontrola retezce "Archer C6 v3" v /proc/cpuinfo pomoci "if []" <-- Taky neni funkcni, dostavam chybu ":: unknown operand". ## Zjisteno ze chyba nastane hned na prvnim radku nasledujici funkce: if [ $boardinfo = $model ]; then echo "TEST OK"; else echo "NOT OK" fiPro jistotu jsem si skript nechal zkontrolovat pomoci utility
shellcheck
, chybu podle nej nemam, myslim si vsak, ze bude nastavat nekde chyba v parsovani vystupu z /proc/cpuinfo. Nicmene i po delsim hledani na google a zkoumani jak napsat test sekvenci, kontrolujici retezec, si dale uz nevim rady a budu rad, kdyz me navedete, kde delam chybu..
Diky za vas cas a odpovedi.
cat /proc/cpuinfo | grep machineked mozem dat rovno:
grep machine /proc/cpuinfoK problemu - skus:
if echo "$boardinfo" | grep "$model" >/dev/null; then ...
UUoC vzniká logicky z „cat soubor... sakra to je dlouhé, ještě potřebuju grep/less - šipka nahoru, |grep aaa“. UUoC je použitelnější, protože „cat soubor|grep foo... sakra potřebuju hledat bar, ne foo - šipka nahoru, ←←←, bar“. UUoC brání překvapivému a nečekanému chování u nástrojů pracujících inplace (gzip a bzip2 co smažou originální soubor pokud si na to člověk nevzpomene a nedá -k). UUoC brání nahodilému přepsání při neoscapování grep "Jenda>" irc.logA jinak je problém v uvozovkách a může snadno nastat i v bashi (si představ že v té proměnné bude napsáno
-o 1 -eq 1
, což bude každý [ interpretovat jako or).
A jinak já do openwrt dávám bash pokud si můžu dovolit spotřebovat asi 300 kB nebo kolik má. Naštěstí máme všude Mikrotiky s 16MB flash, takže můžu.
if [ "$boardinfo" = "$model" ]; then ..
binwalk
nebo Firmware mod kit (https://github.com/openwrt-stuff/firmware-mod-kit), mi v tomto moc nepomohly.
Jinak dnes jsem si overil ze mtd
kontroluje, jestli je image kompletni. Pri dnesnim flashovani jednoho routeru jsem omylem nahral prazdny soubor se jmenem toho firmware a mtd
vyhodil chybu ze soubor je chybny (nevim ted presne cele zneni, ale bylo tam cosi o chybe CRC) a dale odmitl pokracovat, takze toto je osetreno. Co osetreno neni je to, ze pokud by nahodou nekdo flashnul soubor s upravenym FW treba do starsi revize Archer C6, ktera ma Atheros chipset, tak by ji tim bricknul, proto ta kontrola na retezec modelu.
#/bin/bash profile="tplink_archer-c6-v3" target="ramips" subtarget="mt7621" file="openwrt-imagebuilder-${target}-${subtarget}.Linux-x86_64.tar.xz" dir="${file/.tar.xz}" [[ -d ${dir} ]] || { [[ -f "${file}" ]] && rm "${file}" wget "https://downloads.openwrt.org/snapshots/targets/${target}/${subtarget}/${file}" tar xf "${file}" exit } cd ${dir} ln -f bin/targets/${target}/${subtarget} -s OUT mkdir -p ADD package_enable="luci luci-i18n-base-cs luci-theme-material bash openssh-client openssh-server openssh-sftp-server" package_disable="-dropbear" files_add="ADD" make image PROFILE=${profile} PACKAGES="${package_enable} ${package_disable}" FILES="${files_add}" echo "Result image's in ${dir}/OUT dir..."s tim ze do adresare ADD pridas soubory v adresarove strukture jak ma byt v /
Tiskni
Sdílej: