Evropská komise (EK) předběžně shledala čínskou sociální síť pro sdílení krátkých videí TikTok návykovým designem v rozporu s unijním nařízením o digitálních službách (DSA). Komise, která je exekutivním orgánem Evropské unie a má rozsáhlé pravomoci, o tom informovala v tiskovém sdělení. TikTok v reakci uvedl, že EK o platformě vykreslila podle něj zcela nepravdivý obraz, a proto se bude bránit.… více »
Offpunk byl vydán ve verzi 3.0. Jedná se o webový prohlížeč běžící v terminálu a podporující také protokoly Gemini, Gopher a RSS. Přibyl nástroj xkcdpunk pro zobrazení XKCD v terminálu.
Promethee je projekt, který implementuje UEFI (Unified Extensible Firmware Interface) bindingy pro JavaScript. Z bootovacího média načítá a spouští soubor 'script.js', který může používat UEFI služby. Cílem je vytvořit zavaděč, který lze přizpůsobit pomocí HTML/CSS/JS. Repozitář se zdrojovými kódy je na Codebergu.
Zpráva Justičního výboru Sněmovny reprezentantů upozorňuje na cenzurní kampaň Evropské komise, mířenou proti svobodě projevu na sociálních sítích. V dokumentu se uvádí, že se Evropská komise během posledních šesti let účastnila více než 100 uzavřených jednání, během nichž po platformách požadovala úpravy pravidel moderování obsahu, přičemž toto úsilí Komise zahrnovalo i cenzuru politických názorů a pravdivých informací. Výbor zdůrazňuje, že tento přístup Bruselu ohrožuje ústavou zaručená práva Američanů na svobodu projevu.
Linus Torvalds vydal jádro Linux 6.19. Podrobný výčet změn je ke zhlédnutí na stránce Kernel Newbies, stručné výběry v LWN (část první, druhá).
Do prodeje jde tichá bezdrátová herní myš Logitech PRO X2 SUPERSTRIKE s analogovými spínači s haptickou odezvou (HITS, Haptic Inductive Trigger System). Cena je 4 459 Kč.
Microsoft na GitHubu zveřejnil zdrojový kód projektu LiteBox, jedná se o 'knihovní operační systém' (library OS) zaměřený na bezpečnost, využívající systémovou architekturu LVBS k ochraně jádra před útoky z uživatelského prostoru. LiteBox je napsán v Rustu a uvolněný pod licencí MIT. Projekt je teprve v rané fázi vývoje.
BreezyBox je open-source shell a virtuální terminál pro populární jednočip ESP32. Nabízí základní unixové příkazy, sledování aktuálního pracovního adresáře (CWD), jednoduchý instalátor a spouštěč aplikací v podobě ELF binárních souborů, zabudovaný HTTP server nebo třeba ovládání WiFi - ukázka použití coby 'malého osobního počítače'. Ačkoliv je BreezyBox inspirovaný BusyBoxem, oproti němu má tento projekt několik externích závislostí, zejména na ESP-IDF SDK. BreezyBox je dostupný pod licencí MIT.
Byl představen cross-assembler xa.sh, napsaný čistě v Bourne shell skriptu. Tento nástroj umožňuje zpracovávat assemblerový kód pro Intel 8080, přičemž je možné snadno přidat podporu i pro další architektury, například 6502 a 6809. Skript využívá pouze různé běžné unixové příkazy jako jsou awk, sed nebo printf. Skript si lze stáhnout z GitHubového repozitáře projektu.
Byla představena nová verze modelu Claude Opus 4.6 od společnosti Anthropic. Jako demonstraci možností Anthropic využil 16 agentů Claude Opus 4.6 k vytvoření kompilátoru jazyka C, napsaného v programovacím jazyce Rust. Claude pracoval téměř autonomně, projekt trval zhruba dva týdny a náklady činily přibližně 20 000 dolarů. Výsledkem je fungující kompilátor o 100 000 řádcích kódu, jehož zdrojový kód je volně dostupný na GitHubu pod licencí Creative Commons.
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/