Britské herní studio Facepunch stojící za počítačovými hrami Garry's Mod a Rust uvolnilo svůj herní engine s&box (Wikipedie) jako open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT. Herní engine s&box je postavený nad proprietárním herním enginem Source 2 od společnosti Valve.
Vývoj programovacího jazyka Zig byl přesunut z GitHubu na Codeberg. Sponzoring na Every.
Stejně jako GNOME i KDE Plasma končí s X11. KDE Plasma 6.8 poběží už pouze nad Waylandem. Aplikace pro X11 budou využívat XWayland.
Poslanci Evropského parlamentu dnes vyzvali k výraznému zvýšení ochrany nezletilých na internetu, včetně zákazu vstupu na sociální sítě pro osoby mladší 16 let. Legislativně nezávazná zpráva, kterou dnes odsouhlasil Evropský parlament poměrem 493 hlasů pro ku 92 proti, kromě zavedení věkové hranice 16 let pro využívání sociálních sítí, platforem pro sdílení videí či společníků s umělou inteligencí (AI) vyzývá také k zákazu … více »
Doom v KiCadu nebo na osciloskopu? Žádný problém: KiDoom: Running DOOM on PCB Traces a ScopeDoom: DOOM on an Oscilloscope via Sound Card.
Po AlmaLinuxu byl v nové stabilní verzi 10.1 vydán také Rocky Linux. Přehled novinek v poznámkách k vydání.
Open source reimplementace počítačových her Tomb Raider I a Tomb Raider II spolu s dalšími vylepšeními a opravami chyb TRX byla vydána ve verzi 1.0. Jedná se o sloučení projektů / enginů TR1X a TR2X do jednoho TRX. Videoukázka na YouTube.
Společnost Seznam.cz spouští konverzační nástroj založený na umělé inteligenci Seznam Asistent. Asistent využívá vlastní jazykový model SeLLMa a dočasně i komerční modely od OpenAI provozované v evropských datacentrech prostřednictvím Microsoft Azure. Dlouhodobým cílem Seznamu je provozovat Asistenta výhradně na interních jazykových modelech a ve vlastních datových centrech.
Software LibrePods osvobozuje bezdrátová sluchátka AirPods z ekosystému Applu. Exkluzivní funkce AirPods umožňuje využívat na Androidu a Linuxu. Díky zdokumentování proprietárního protokolu AAP (Apple Accessory Protocol).
Byl vydán AlmaLinux OS 10.1 s kódovým názvem Heliotrope Lion. S podporou Btrfs. Podrobnosti v poznámkách k vydání.
V minulém blogu jsem slíbil návod na zprovoznění automountra ve Slackware. Tak s chutí do díla.
Automounter funguje tak, že při vstupu do adresáře kam se připojuje nějaké médium se pokusí toto médium připojit. KRYTON: Je to zkomolené, matoucí a ještě nudnější než palubní časopis belgických aerolinií. (RedDwarf - Pekelně ostrý výlet). Uznávám definice je to kulhající na obě nohy, ale pro představu snad stačí.
Uveďme si příklad: do mechaniky jsme vložili CD a chceme se podívat na fotky z dovolené. V našem oblíbeném prohlížeči obrázků zadáme cestu kam připojujeme mechaniku, v našem případě /media/dvd/. V tomto okamžiku ovšem žádný takový adresář neexistuje(!). Automounter zjistí, že chceme přistoupit do /media/dvd/, zjistí, zda je vloženo médium, pokud ano tak vytvoří adresář a připojí nám CD. Až si fotečky pěkně pozorně prohlédneme a ukončíme všechny programy které mají otevřené něco z připojeného CD, tak automounter po zadané časové prodlevě CD odpojí a my jej můžeme z mechaniky vyjmout.
Balíček s autofs. Nachází se na prvním CD v adresáři slackware/n/.
Další co potřebujeme je podpora v kernelu. Tu zajistíme natažením modulu autofs4. Provedením modprobe autofs4. Tento modul budeme chtít natahovat po každé, takže do /etc/rc.d/rc.modules přidáme řádek /sbin/modprobe autofs4.
Uvedu příklad (popíšu jakou situaci jsem řešil u Queega - snad už víte kdo je Queeg :) ).
DVD mechanika a vypalovačka. Obojí jsem chtěl mountovat automountrem do adresáře /media/dvd/ respektive /media/cdwriter/
Pro konfiguraci se používá jeden hlavní soubor /etc/auto.master a vícero takzvaných souborů s mapou (jak jinak chcete přeložit map file).
Hlavní soubor (auto.master) slouží k popisu které soubory s mapami se mají načíst a ke kterému adresáři v kořeni patří. Takže podle našeho příkladu bude /etc/auto.master vypadat takto:
/media /etc/auto.media --timeout=5První položka je adresář pro který je mapa, ta je udána jako druhá položka a jako třetí se udávají další volby. V našem případě je adresář /media, mapa je v souboru /etc/auto.media a volba --timeout=5 určuje, že se má médium odpojit po 5 vteřinách nečinnosti.
Soubor s mapou vypadá následovně:
cdwriter -fstype=iso9660,owner,user,ro :/dev/hdd dvd -fstype=iso9660,owner,user,ro :/dev/hdc
První položka je adresář kam se bude mountovat (adresář se bude vnořen do adresáře pro který je určena mapa, tedy /media/cdwriter, respektive /media/dvd), další položka udává volby pro připojení a poslední je zařízení.
jako základ jsem použil originální který je dodán s atuofs, ovšem řekněme si to na rovinu, nefungoval. Takže jsem ho tak nějak prošel a dal do funkčního stavu. Výsledek vypadá takto:
#!/bin/bash
#
# /etc/rc.d/rc.autofs
#
# rc file for automount using a Sun-style "master map".
# We first look for a local /etc/auto.master, then a YP
# map with that name
#
# Location of the automount daemon and the init directory
#
DAEMON=/usr/sbin/automount
initdir=/etc/rc.d
test -e $DAEMON || exit 0
thisscript="$0"
if [ ! -f "$thisscript" ]; then
echo "$0: Cannot find myself" 1>&2
exit 1
fi
#
# We can add local options here
# e.g. localoptions='rsize=8192,wsize=8192'
#
localoptions=''
#
# This function will build a list of automount commands to execute in
# order to activate all the mount points. It is used to figure out
# the difference of automount points in case of a reload
#
function getmounts()
{
#
# Check for local maps to be loaded
#
if [ -f /etc/auto.master ]
then
cat /etc/auto.master | sed -e '/^#/d' -e '/^$/d'| (
while read dir map options
do
if [ ! -z "$dir" -a ! -z "$map" \
-a x`echo "$map" | cut -c1` != 'x-' ]
then
map=`echo "/etc/$map" | sed -e 's:^/etc//:/:'`
options=`echo "$options" | sed -e 's:^/etc//:/:'`
if [ -x $map ]; then
echo "$DAEMON $options $localoptions $dir program $map"
elif [ -f $map ]; then
echo "$DAEMON $options $localoptions $dir file $map"
else
echo "$DAEMON $options $localoptions $dir `basename $map`"
fi
fi
done
)
fi
#
# Check for YellowPage maps to be loaded
#
if [ -e /usr/bin/ypcat ] && [ `ypcat -k auto.master 2>/dev/null | wc -l` -gt 0 ]
then
ypcat -k auto.master | (
while read dir map options
do
if [ ! -z "$dir" -a ! -z "$map" \
-a x`echo "$map" | cut -c1` != 'x-' ]
then
map=`echo "$map" | sed -e 's/^auto_/auto./'`
if echo $options | grep -- '-t' >/dev/null 2>&1 ; then
mountoptions="--timeout $(echo $options | \
sed 's/^.*-t\(imeout\)*[ \t]*\([0-9][0-9]*\).*$/\2/g')"
fi
options=`echo "$options" | sed -e '
s/--*t\(imeout\)*[ \t]*[0-9][0-9]*//g
s/\(^\|[ \t]\)-/\1/g'`
echo "$DAEMON $dir yp $map $options $localoptions"
fi
done
)
fi
}
#
# Status lister.
#
function status()
{
echo "Configured Mount Points:"
echo "------------------------"
getmounts
echo ""
echo "Active Mount Points:"
echo "--------------------"
ps ax|grep "[0-9]:[0-9][0-9] automount " | (
while read pid tt stat time command; do echo $command; done
)
}
#
# Status lister.
#
function status()
{
echo "Configured Mount Points:"
echo "------------------------"
getmounts
echo ""
echo "Active Mount Points:"
echo "--------------------"
ps ax|grep "[0-9]:[0-9][0-9] automount " | (
while read pid tt stat time command; do echo $command; done
)
}
#
# Start function.
#
function start()
{
# Check if the automounter is already running?
if [ ! -f /var/lock/subsys/autofs ]; then
echo 'Starting automounter...'
getmounts | sh
touch /var/lock/subsys/autofs
fi
}
#
# Stop function.
#
function stop()
{
kill -TERM $(/sbin/pidof /usr/sbin/automount)
rm -f /var/lock/subsys/autofs
}
#
# Restart function.
#
function restart()
{
if [ ! -f /var/lock/subsys/autofs ]; then
echo "Automounter not running"
exit 1
fi
echo "Checking for changes to /etc/auto.master ...."
TMP1=`mktemp /tmp/autofs.XXXXXX` || { echo "could not make temp file" >& 2;
exit 1; }
TMP2=`mktemp /tmp/autofs.XXXXXX` || { echo "could not make temp file" >& 2;
exit 1; }
getmounts >$TMP1
ps ax|grep "[0-9]:[0-9][0-9] automount " | (
while read pid tt stat time command; do
echo "$command" >>$TMP2
if ! grep -q "^$command" $TMP2; then
kill -USR2 $pid
echo "Stop $command"
fi
done
)
cat $TMP1 | ( while read x; do
if ! grep -q "^$x" $TMP2; then
$x
echo "Start $x"
fi
done )
rm -f $TMP1 $TMP2
}
#
# See how we were called.
#
case "$1" in
start)
start
;;
stop)
stop
;;
reload|restart)
restart
;;
status)
status
;;
*)
echo "Usage: $initdir/rc.autofs {start|stop|restart|reload|status}"
exit 1
esac
Skript uložíme jako /etc/rc.d/rc.autofs a spustíme příkazem /etc/rc.d/rc.autofs start, je vhodné tento příkaz umístit do /etc.rc.d/rc.local, aby se spouštěl po zapnutí PC. Chrousty chroust cvaky cvak, mělo by to vypsat "Starting automounter..." :) a vše by mělo fungovat.
Automounter jsem zatím nasadil jen experimentálně :), mě se moc nelíbí, raději si mountuji sám, ale to neznamená, že by to bylo nepoužitelné. Funguje to spolehlivě a za dobu používání (pravda, jen pár hodin) jsem nenarazil na žádný problém.
Tiskni
Sdílej:
cd /net/pocitac/sdileny_adresar/