Byl publikován přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie) za uplynulé dva měsíce. Servo zvládne už i Gmail. Zakázány jsou příspěvky generované pomocí AI.
Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.
Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.
Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 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.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.
OpenSearch (Wikipedie) byl vydán ve verzi 3.0. Podrobnosti v poznámkách k vydání. Jedná se o fork projektů Elasticsearch a Kibana.
PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.
Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.
Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-05-06. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Pravděpodobně se jedná o poslední verzi postavenou na Debianu 12 Bookworm. Následující verze by již měla být postavena na Debianu 13 Trixie.
Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.
Resim nasledujici - mam hlavni adresar v kterém jsou podadresare do 3-4 urovne. V techto adresarich jsou mkv, ktere budou po rsyncu na sekundarnim storage konvertovany na mp4. Vzhledem k tomu, ze rsync se bude z hlavniho na sekundarni storage v pravidelne opakovat, protoze nove soubory neustale pribyvaji, hledam jak provest opakovany rsync tak, aby se nahraly pouze nove mkv a ne originalne rsyncovane, aktualne uz na sekundarnim storage prejmenovane na mp4. Jak na to?
ssh sekundární "ls -lr" > tmp1
, ls -lr > tmp2
, ... | sed -re "s/mp4/mkv/" | ...
, comm -3 tmp1 tmp2
).
Předpokládám, že na cílovém disku se mají původní .mkv
po konverzi na .mp4
smazat, jinak by celá otázka měla velmi triviální řešení (nemazat).
Inu, tady mě napadá ošklivé, prasácké, ale účinné řešení založené na rsync
: Místo mazání původní .mkv
ponechat na místě, ale zmenšit je (například pomocí truncate
) na nulu a obnovit jejich původní datum změny. Pak si rsync
bude myslet, že už tam jsou, ale zároveň nebudou zabírat místo. Při konverzi do .mp4
je pak potřeba odfiltrovat ty .mkv
, které mají nulovou velikost. Problém tohoto postupu: bitrot — Tedy nelze použít rsync -c (ze zjevných důvodů) a není tam vůbec žádná „end to end“ ochrana proti silent data corruption. Ale pokud jde jen a pouze o to „přeskočit“ už zpracované soubory, tohle by mohlo fungovat.
Gah. No to se mi povedlo, tahle↑ „rada“. Tohle je problém:
rsync
finds files that need to be transferred using a "quick check" algorithm (by default) that looks for files that have changed in size or in last-modified time.
Dobře, tak úplně jednoduše a „implicitně“ to nepůjde. Existuje sice --size-only
, ale není tam žádný ekvivalent --time-only
, který by pomohl v tomto případě.
Takže podle mě by mohlo být řešením --ignore-existing
(skip updating files that exist on receiver). To vypadá, že by to mohlo (správně) přeskočit přenos již zpracovaných .mkv souborů — pokud na cíli budou ponechané ty placeholdery zmenšené na nulu (kvůli úspoře místa).
#!/bin/bash # Directory to watch for new MKV files WATCH_DIR="/path/to/watch" # Loop to keep checking for new MKV files inotifywait -m -e create --format "%f" "$WATCH_DIR" | while read NEW_FILE do # Check if the new file is an MKV file if [[ "$NEW_FILE" =~ \.mkv$ ]]; then # Full path to the new MKV file MKV_FILE="$WATCH_DIR/$NEW_FILE" # Full path to the target MP4 file MP4_FILE="${MKV_FILE%.mkv}.mp4" # Convert the MKV file to MP4 using ffmpeg ffmpeg -i "$MKV_FILE" -codec:v libx264 -codec:a aac -strict experimental "$MP4_FILE" # Check if conversion was successful if [[ $? -eq 0 ]]; then # Remove the original MKV file after successful conversion rm "$MKV_FILE" echo "Converted and removed $MKV_FILE" else echo "Error converting $MKV_FILE" fi fi done
Tiskni
Sdílej: