Neziskové průmyslové konsorcium Khronos Group vydalo verzi 3.1 specifikace OpenCL (Open Computing Language). OpenCL je průmyslový standard pro paralelní programování heterogenních počítačových systémů.
Homebridge pro integraci chytrých domácích zařízení byl vydán ve verzi 2.0.0. Nově vedle protokolu HomeKit Accessory Protocol (HAP) podporuje standard chytré domácnosti Matter.
Omarchy je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 3.7.0 - The Gaming Edition. Z novinek lze vypíchnout příkaz omarchy a celou řadu herních možností.
CyberChef byl vydán v nové major verzi 11. Přehled novinek v Changelogu. CyberChef je webová aplikace pro analýzu dat a jejich kódování a dekódování, šifrování a dešifrování, kompresi a dekompresi, atd. Často je využívaná při kybernetických cvičeních a CTF (Capture the Flag).
Byla vydána nová verze 2.4.67 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 11 zranitelností.
Brush (Bo(u)rn(e) RUsty SHell) je v Rustu napsaný shell kompatibilní s Bash (Bourne Again SHell). Vydána byla verze 0.4.0.
Google zveřejnil seznam 1 141 projektů (vývojářů) od 184 organizací přijatých do letošního, již dvaadvacátého, Google Summer of Code. Přihlášeno bylo celkově 23 371 projektů od 15 245 vývojářů ze 131 zemí.
Na čem pracovali vývojáři GNOME a KDE Plasma minulý týden? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Open source počítačová hra na hrdiny NetHack (Wikipedie, GitHub) byla vydána v nové verzi 5.0.0. První verze této hry byla vydána v roce 1987.
Evropská komise naléhavě vyzvala členské státy EU, aby kvůli ochraně nezletilých na internetu urychlily zavádění unijní aplikace pro ověřování věku a zajistily její dostupnost do konce roku. Členské státy mohou zavést aplikaci EU pro ověřování věku jako samostatnou aplikaci nebo ji integrovat do takzvané evropské peněženky digitální identity.
Rád bych se podělil o můj skriptík na vytvoření openbox pipemenu pro připojování různých externích disků atp.
Pro uživatele bashe je tu menší problém akorát v tom, že skript běží v zsh. Dál pak závisí na qdbus a udisks, zbytek je už poměrně standardní (sed, echo,...). Pro vlastní použití je pak potřeba nahradit thunara za svýho oblíbenýho manažera, a v unmount-helperu možná nahradit zenity za kdialog.
#!/bin/zsh
#funkce dbus-getinfo potřebuje název vlastnosti a zařízení
function dbus-getinfo {
qdbus --system org.freedesktop.UDisks /org/freedesktop/UDisks/devices/$2 org.freedesktop.DBus.Properties.Get org.freedesktop.UDisks.Device $1
}
# funkce diskpart-* potřebujou akorát název zařízení s kterym pracujou
function diskpart-mounted {
diskoun+=" <menu id=\"$1\" label=\"$1 - `dbus-getinfo IdLabel $1`\">
<item label=\"Unmount\"><action name=\"Execute\">
<execute>unmount-helper $1</execute>
</action></item>
<item label=\"Open\"><action name=\"Execute\">
<execute>thunar \"`dbus-getinfo DeviceMountPaths $1`\"</execute>
</action></item>
</menu>
"
}
function diskpart-unmounted {
diskoun+=" <menu id=\"$1\" label=\"$1 - `dbus-getinfo IdLabel $1`\">
<item label=\"Mount\"><action name=\"Execute\">
<execute>qdbus --system org.freedesktop.UDisks /org/freedesktop/UDisks/devices/$1 org.freedesktop.UDisks.Device.FilesystemMount `dbus-getinfo IdType $1` '(' ')'</execute>
</action></item>
</menu>
"
}
diskoun="<openbox_pipe_menu>\n"
#sed si pamatuje 2 vzory (oddělený závorkama), vypisuje jenom druhej
disky=`qdbus --system org.freedesktop.UDisks /org/freedesktop/UDisks org.freedesktop.UDisks.EnumerateDeviceFiles | sed -n -e "s/^\(\/dev\/\)\(sd[a-z]$\)/\2/p" | sort`
x=0
y=`echo $disky | wc -l`
while [ $x != $y ]
do
let x++
disk=`echo $disky | sed -n "${x}p"`
ifcheck=`dbus-getinfo DriveConnectionInterface $disk`
if [ $ifcheck = usb ]
then
partcount=`dbus-getinfo PartitionTableCount $disk`
if [ $partcount = 0 ]
then
if [ `dbus-getinfo DeviceIsMounted ${disk}` = true ]
then
diskpart-mounted ${disk}
else
diskpart-unmounted ${disk}
fi
else
diskoun+=" <menu id=\"${disk}\" label=\"${disk} - `dbus-getinfo DriveModel ${disk}`\">
"
oddily=`qdbus --system org.freedesktop.UDisks /org/freedesktop/UDisks org.freedesktop.UDisks.EnumerateDeviceFiles | sed -n -e "s/^\(\/dev\/\)\($disk.$\)/\2/p" | sort`
z=0
while [ $z != $partcount ]
do
let z++
oddil=`echo $oddily | sed -n "${z}p"`
if [ `dbus-getinfo DeviceIsMounted ${oddil}` = true ]
then
diskpart-mounted ${oddil}
else
diskpart-unmounted ${oddil}
fi
done
diskoun+=" </menu>
"
fi
fi
done
diskoun+="</openbox_pipe_menu>"
echo $diskoun
#!/bin/zsh
zenity --notification --window-icon /usr/share/icons/elementary/actions/48/media-eject.svg "Unmount in progress" & zenpid=$!
qdbus --system org.freedesktop.UDisks /org/freedesktop/UDisks/devices/$1 org.freedesktop.UDisks.Device.FilesystemUnmount '(' ')'
kill $zenpid
zenity --notification --window-icon /usr/share/icons/elementary/actions/48/gtk-ok.svg "Unmount finished"
Tiskni
Sdílej: