Na Crowd Supply běží kampaň na podporu open source čtečky elektronických knih Open Book Touch. Postavena je na ESP32-S3. Má 4,26palcový dotykový e-papírový displej s rozlišením 480×800 pixelů, podsvícení, slot na microSD kartu. Cena je 149 dolarů a poštovné 12 dolarů. Dodání je plánováno na duben 2027.
Na Humble Bundle běží akce Linux: All the Things by O'Reilly a Picos, HATs, and More by Raspberry Pi Press. Elektronické knihy lze koupit se slevou a současně podpořit organizace Code for America a Raspberry Pi Foundation.
FreeCAD (Wikipedie), tj. svobodný multiplatformní parametrický 3D CAD, má nový vtipný a současně užitečný doplněk Banana For Scale (GitHub). Aktuálně umožňuje do výkresu vložit banán nebo plechovku pro porovnání a určení měřítka.
Blender Studio nedávno oznámilo plán vytvořit svůj první otevřený (open source) celovečerní film. Film by se měl jmenovat Overgrown (YouTube). Film vznikne, pokud se zajistí financování. Prvním krokem je získat 7 000 předplatitelů Blender Studia. Cena je od 11,50 eur měsíčně. Aktuálně počet předplatitelů je 5 289. Předplatné pokryje 20 % nákladů. Zbytek, 80 % nákladů, má být financován externími producenty nebo distributory.
Byl vydán Debian 13.6, tj. šestá opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.15, tj. poslední patnáctá opravná verze Debianu 12 s kódovým názvem Bookworm, k dispozici je LTS. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
V jádře Linux byla nalezena a v upstreamu již byla opravena kritická zranitelnost GhostLock aneb CVE-2026-43499. Lokálnímu uživateli umožňuje získat práva roota a také obejít kontejnerovou izolaci. Zranitelnost existovala v Linuxu 15 let, tj. od roku 2011, od Linuxu verze 2.6.39.
Evropská komise předběžně shledala, že návykový design aplikací Instagram a Facebook od americké společnosti Meta porušuje unijní nařízení o digitálních službách (DSA). Návykový design zahrnuje například takzvané nekonečné posouvání, automatické přehrávání videí, tzv. push notifikace, kdy aplikace uživatele vybízí k návratu do jejího prostředí, či vysoce personalizovaný algoritmus, který rychle pozná, co uživatele baví a snaží
… více »Byla vydána verze 1.97.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.
Švýcarská společnost Punkt. má nově v nabídce telefon Punkt. MC03. Telefon byl navržen ve Švýcarsku s důrazem na soukromí a digitální suverenitu a vyroben v Německu. V telefonu běží operační systém AphyOS (Apostrophy OS) založený na AOSP (Android Open Source Project) 15. Cena telefonu je 745 eur.
TypeScript (Wikipedie), tj. JavaScript rozšířený o statické typování a další atributy, byl vydán v nové verzi 7.0. Kompilátor byl kvůli výkonu přepsán z TypeScriptu do Go.
Řešení dotazu:
setfacl -m d:u:franta:rwx /dir
IN_MOVED_TO, kdyz chci, aby se zmenila prava souborum presunutym do adresare (v syslogu se neobjevi ani spusteni incronu). testoval jsem IN_CREATE a to funguje.
Mam tam tohle
/FILMY IN_MOVE_TO /bin/chmod 0777 $@/$#
IN_CLOSE_WRITE. Jak mam ale nastavit, aby pri presunu do toho hlidaneho adresare mely vsechny soubory prava 0770 a soubory 0660?
/bin/chmod 0660 soubor && chown user:filmy souborJak to zapisu?
$# by měl být soubor, kterého se daná událost týká. Takže bych zkusil
/bin/chmod 0660 $# chown user:filmy $#
&&, ale vysledek prakticky zadny
/muj/sledovany/files on_neco,on_neco /usr/local/bin/mujskript '$#'(těmi apostrofy si nejsem jistý…)
chmod 666 "$1" chown kubrt "$1"Odzkoušel bych první v tom skriptu:
echo "$1" > /tmp/kuka co bude v kuk to je předáno jako parametr, nevím jestli $# je včetně cesty…
./mujscript prenaseny_soubor, vystup je takovyto:
/bin/chown: nelze přistoupit k „“: Adresář nebo soubor neexistuje
chown).. on to nema totiz kam aplikovat, kdyz ten prenaseny_soubor je uz pryc ... jak to ale resit?
Takto je to dobre (tj. vc. cesty) $@/$#. Diky
Jen pro informaci. Nakonec jsem nasadil watcher .. incron totiz neumi pracovat rekruzivne, takre uninstall. Skriptiky jsem ponechal a predhodil jsem je watcheru. Ted je to dokonaly.
incron:/moje/cesta IN_ALL_EVENTS /usr/local/bin/mujskript $@ $# $% $&mujskript:
outfiles=/root/kuk
echo " cesta: $1" >> ${outfiles}
echo " nazev: $2" >> ${outfiles}
echo " udalost-text: $3" >> ${outfiles}
echo "udalost-cislo: $4" >> ${outfiles}
echo '----------------------------------' >> ${outfiles}
A uvidíte co se děje v rostoucím 'kuk' filesu…$@/$#, vždyť je to i v ukázkovém příkladu - nějak jsem to přehlédl…
ssh a taky to nefunguje
Tzn. zkopiroval jsem do "hlidaneho" adresare soubor pres ssh a prava se mi nazmenila..
events=all command=/usr/local/bin/mujskript $watched $filename $tflags $nflagsmujskript:
outfiles=/root/kuk
echo '----------------------------------' >> ${outfiles}
echo " cesta: $1" >> ${outfiles}
echo " nazev: $2" >> ${outfiles}
echo " udalost-text: $3" >> ${outfiles}
echo "udalost-cislo: $4" >> ${outfiles}
echo '----------------------------------' >> ${outfiles}
co potrebuju je jasne predpokladam
Takze mam zase nainstalovat incron? Bude tenhle test k necemu dobry, kdyz incron (diky tomu, ze neumi pracovat recursivne) pouzivat stejne nebudu?
…
Ted mam nastaveny watcher takhle:
[job1] watch=/shares/FOTKY events=create,move_to recursive=true command=/usr/local/scripts/shares-perm/fotky-perm $filename
/shares/FOTKY jsou na lokalnim disku serveru, kde bezi watcher. Kdyz nakopiruju soubor/adresar v ramci serveru (i z jineho diskoveho oddilu), skript zmeni prava. Kdyz ale nakopiruju soubor/adresar do /shares/FOTKY pomoci ssh nebo nfs z jineho pc, skript se nespusti.
Je to srozumitelne?
events=all, tak v logu mam spoustu techto hlasek:
Exception in thread Thread-185:
Traceback (most recent call last):
File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
self.run()
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 1348, in run
self.loop()
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 1334, in loop
self.process_events()
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 1128, in process_events
self._default_proc_fun(revent)
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 810, in __call__
return _ProcessEvent.__call__(self, event)
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 544, in __call__
return meth(event)
File "/etc/init.d/watcher", line 257, in process_IN_OPEN
self.runCommand(event)
File "/etc/init.d/watcher", line 213, in runCommand
prefix)
File "/etc/init.d/watcher", line 290, in addWatch
wm = pyinotify.WatchManager()
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 1530, in __init__
raise OSError()
OSError
Exception in thread Thread-221:
Traceback (most recent call last):
File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
self.run()
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 1348, in run
self.loop()
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 1334, in loop
self.process_events()
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 1128, in process_events
self._default_proc_fun(revent)
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 810, in __call__
return _ProcessEvent.__call__(self, event)
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 544, in __call__
return meth(event)
File "/etc/init.d/watcher", line 257, in process_IN_OPEN
self.runCommand(event)
File "/etc/init.d/watcher", line 213, in runCommand
prefix)
File "/etc/init.d/watcher", line 290, in addWatch
wm = pyinotify.WatchManager()
File "/usr/lib/pymodules/python2.6/pyinotify.py", line 1530, in __init__
raise OSError()
OSError
To nevim, jestli je dobre nebo spatne.
/usr/local/bin/mujskript
chown root:root /usr/local/bin/mujskript
chmod 700 /usr/local/bin/mujskript
command=/usr/local/scripts/shares-perm/fotky-perm $filenamecommand=/usr/local/bin/mujskript $watched $filename $tflags $nflags
events=create,move_to na events=all
/root/kuk uvidíte co se děje, třeba cat /root/kuk
create(což bych ignoroval) a pak write_close, ale chce to vyzkoušet co to dělá při přejmenování, move-ntutí či zkopírování (v rámci sdílení, či odjinud).all mělo fungovat.kuk se prave nic neobjevi.
events=all, tak je to smůla a ta informace (event) není vyvolána, takže s tím tímto způsobem asi nic neuděláte.
mv a copy na tom lokalnim serveru?
, nevím jestli tam máte 'all' a jestli je tato konfigurace přenačtena.sync.
sudo exportfs /share/test 192.168.1.2server:
grep -ov '#' /etc/exports /share/test 192.168.1.2(rw,sync,rw,sync,no_subtree_check)server:
sudo incrontab -l/share/test IN_ALL_EVENTS /usr/local/bin/mujskript $@ $# $% $&client (na root-a):
mkdir bubuntunfs chmod 777 ./bubuntunfs mount -o 'vers=3' -t nfs 192.168.1.129:/share/test ./bubuntunfs touch ./mv-nfs-share-file mv mv-nfs-share-file bubuntunfs/ sudo cat /root/kuk cesta: /share/test
nazev: mv-nfs-share-file
udalost-text: IN_CREATE
udalost-cislo: 256
----------------------------------
cesta: /share/test
nazev: mv-nfs-share-file
udalost-text: IN_ATTRIB
udalost-cislo: 4
----------------------------------
cesta: /share/test
nazev: mv-nfs-share-file
udalost-text: IN_ATTRIB
udalost-cislo: 4
----------------------------------
cesta: /share/test
nazev: mv-nfs-share-file
udalost-text: IN_ATTRIB
udalost-cislo: 4
----------------------------------
cesta: /share/test
nazev: mv-nfs-share-file
udalost-text: IN_ATTRIB
udalost-cislo: 4
----------------------------------
server: sudo rm /root/kukmv bubuntunfs/mv-nfs-share-file ./sudo cat /root/kuk
cesta: /share/test
nazev: mv-nfs-share-file
udalost-text: IN_DELETE
udalost-cislo: 512
----------------------------------
... a pak na root-a umountsleep 3 && chmod…, což má ovšem také svá úskalí.$myPath=/cesta/tam/kam/chci
myGroup='mojeskupina'
myPermFile=660
myPermDir=2770
find "$myPath" ! -group "$myGroup" -exec chgrp "$MyGroup" {} \;
find "$myPath" -type f ! -perm $myPermFile -exec chmod $myPermFile {} \;
find "$myPath" -mindepth 1 -type d ! -perm $myPermDir -exec chmod $myPermDir {} \;
díky hledání jen neodpovídajících nastavení, jsou většinou změny malé...
…odzkoušejte postupně a používejte man - nevěřte mi
myPath=/cesta/tam/kam/chci …
Zeptam se blbe.. nestaci tam pridat jen prametr IN_ATTRIB? Jak by se to chovalo? Muzu tim neco zkazit?
incron tam lze použít IN_NO_LOOP, tím pádem by to šlo.
sleep 3 &&. Bohuzel se mi skripty neaplikuji. Bohuzel se mi prava nezmeni v pripade, kdyz nakopiruju adresar s obsahem. Na ten jeho obsah (soubory v nem) se prava neaplikuji. Pouzivam ten watcher protoze pracuje recursivne. Funguje mi, kdyz nakopiruju prazdny adresar a teprve pak jeho souborovy obsah - to se skript aplikuje a v mem propade se prava zmeni. Pritom jsem to overoval tim kuk souborem a system mi hlasi, ze soubory byly vytvoreny IN_CREATE - kdyz kopiruju adresar se souborovym obsahem. Jakto?
)
all tam mam nastaveno. sync jsem nezkusil, nejdrive se musim podivat, k cemu vubec je
Tiskni
Sdílej: