Textový editor Zed dospěl do verze 1.0. Představení v příspěvku na blogu.
Vývojáři svobodného 3D softwaru Blender představili (𝕏, Mastodon, Bluesky) nejnovějšího firemního sponzora Blenderu. Je ním společnost Anthropic stojící za AI Claude a úroveň sponzoringu je Patron, tj. minimálně 240 tisíc eur ročně. Anthropic oznámil sponzorství v tiskové zprávě Claude for Creative Work.
VNC server wayvnc pro Wayland kompozitory postavené nad wlroots - ne GNOME, KDE nebo Weston - byl vydán ve verzi 0.10.0. Vydána byla také verze 1.0.0 související knihovny neatvnc.
Bylo oznámeno vydání Fedora Linuxu 44. Ve finální verzi vychází šest oficiálních edic: Fedora Workstation a Fedora KDE Plasma Desktop pro desktopové, Fedora Server pro serverové, Fedora IoT pro internet věcí, Fedora Cloud pro cloudové nasazení a Fedora CoreOS pro ty, kteří preferují neměnné systémy. Vedle nich jsou k dispozici také další atomické desktopy, spiny a laby. Podrobný přehled novinek v samostatných článcích na stránkách
… více »David Malcolm se na blogu vývojářů Red Hatu rozepsal o vybraných novinkách v GCC 16, jež by mělo vyjít v nejbližších dnech. Vypíchnuta jsou vylepšení čitelnosti chybových zpráv v C++, aktualizovaný SARIF (Static Analysis Results Interchange Format) výstup a nová volba experimental-html v HTML výstupu.
Byla vydána verze R14.1.6 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Jon Seager z Canonicalu včera na Ubuntu Community Hubu popsal budoucnost AI v Ubuntu. Dnes upřesnil: AI nástroje budou k dispozici jako Snap balíčky, vždy je může uživatel odinstalovat. Ve výchozím nastavení budou všechny AI nástroje používat lokální AI modely.
Nový ovladač Steam Controller jde do prodeje 4. května. Cena je 99 eur.
Greg Kroah-Hartman začal používat AI asistenta pojmenovaného gkh_clanker_t1000. V commitech se objevuje "Assisted-by: gkh_clanker_t1000". Na social.kernel.org publikoval jeho fotografii. Jedná se o Framework Desktop s AMD Ryzen AI Max a lokální LLM.
Ubuntu 26.10 bude Stonking Stingray (úžasný rejnok).
Záleží, co od toho přesně chceš. Nejjednodušší varianta (s ohledem na zátěž serveru a potřebné zásahy) je využít log DHCP serveru. Tj. budeš tam mít kdy si jaký klient žádal o adresu, kdy mu byla která přidělena a kdy ji uvolnil. Samozřejmě je to důvěryhodné natolik, nakolik lze věřit klientům, že se řídí DHCPkem. Navíc ti tam může chybět zpráva o uvolnění adresy pokud jej klient při vypnutí nepošle (pád systému apod.). Ale přinejmenším při příštím přiřazení téhle IP se to pořeší.
Další možností je prostě logovat si ARP cache. (příkazy arp, resp. ip ne; pokud by ti nestačila velikost cache jádra, tak třeba arpd). Výhodou je opět zcela pasivní chování a navíc dost dobrá spolehlivost. Nevidíš tím sice zapnuté počítače, které aktuálně nekomunikují, ale otázkou je, jestli jsou takové vůbec zajímavé.
Ping – no pokud už chceš pingat, tak pokud možno přes ARP ping (umí třeba nmap, pokud je spuštěný s root právy). Výhodou je, že ARP nemůže blokovat žádný firewall, pokud má počítač rozumně fungovat (resp. jo, může mít fixní ARP tabulku, ale to už je trochu mimo normální situace).
#!/bin/bash
# tento skript je delan na to aby ho spustel cron po nejakych
# rozumnych intervalech napr. 15 min
# vkladejte adresy oddelene novym radkem viz. dale
ip_range="
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5"
nmap -sP $ip_range -oG IP_temp &> /dev/null
### !!! pokud budete chtit casem pridat adresu do rozsahu pridejte ji do
### !!! promenne $ip_range i do souboru lastping
# zkontroluje jestli existuje soubor lastping
# pokud ne vytvori se a ulozi se do nej adresy z ip_range
if [ ! -f lastping ]; then
touch lastping
declare -a ip
ip=(`echo $ip_range | tr ' ' ' '`)
for each in ${ip[@]}; do
echo "$each" >> lastping
done
fi
# rozparsuje vystup z nmapu a vybere z nej uspesne pingnute ip adresy
while read line; do
echo $line | egrep "Status: Up" | egrep -o "[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}" >> IP_temp2
done < IP_temp
# funkce vraci informaci o poslednim pingu
# pracuje ze souborem lastping
# jeden parametr ip adresa
function getLastPing() {
hlp=0
while read line; do
if [ "$line" = "$1" ]; then
hlp=1
fi
done < lastping
if [ $hlp == 1 ]; then
echo "1"
return 0
fi
echo "0"
return 0
}
# nacteme promenne s casem
min=`date +%M`
hour=`date +%H`
day=`date +%d`
month=`date +%m`
year=`date +%Y`
# pro kazdou uspesne pingnutou ip ulozi do souboru pojmenovaneho podle ip
# bud cas pokud minuly ping selhal nebo hvezdicku pokud v pingoovani pokracujeme
while read ip; do
# zjistime info o poslednim pingu
lastping=`getLastPing $ip`
# pokud soubor s ip neexistuje
if [ ! -f $ip ]; then
# vytvorime ho
touch $ip
# a na prvni radek pridame info o zacatku testovani
# a info o last pingu nas asi moc nezajima, takze ulozime cas
echo -n "$day.$month.$year $hour:$min " >> $ip
# pokud existuje soubor s ip
else
# zkontrolujeme jestli nezacina novy den
if [ `tail -1 $ip | egrep -c "$day.$month.$year"` == 0 ]; then
# zacal novy den
# porovname lastping
if [ $lastping == 1 ]; then
# pokracujeme takze dame hvezdicku
echo -n "$day.$month.$year *" >> $ip
else
# nepokracujeme takze dame cas
echo -n "$day.$month.$year $hour:$min " >> $ip
fi
else
# novy den nezacal
if [ $lastping == 1 ]; then
# pokracujeme takze dame hvezdicku
echo -n "*" >> $ip
else
# nepokracujeme dame cas
echo -n " $hour:$min " >> $ip
fi
fi
fi
done < IP_temp2
# uklada info o uspesne pinglych adresach do lastping
touch hlpfile
while read line; do
hlp=0
pureIP=`echo "$line" | egrep -o "[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}"`
while read ip; do
if [ "$pureIP" = "$ip" ]; then
hlp=1
fi
done < IP_temp2
if [ $hlp == 1 ]; then
echo $pureIP >> hlpfile
else
echo "$pureIP !" >> hlpfile
fi
done < lastping
## uklid ##
mv hlpfile lastping
rm IP_temp IP_temp2
Tiskni
Sdílej: