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.
Richard Biener oznámil vydání verze 16.1 (16.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 16. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.
Zulip Server z open source komunikační platformy Zulip (Wikipedie, GitHub) byl vydán ve verzi 12.0. Přehled novinek v příspěvku na blogu.
Před 30 lety, tj. v úterý 30. dubna 1996, byl spuštěn Seznam.cz.
Byly zpracovány a zveřejněny všechny videozáznamy, které stojí za zveřejnění, z konference FOSDEM 2026.
Od úterý 28. dubna musí nově uváděné notebooky v Evropské unii podporovat nabíjení přes USB-C. Jednotná nabíječka byla schválena Evropským parlamentem v říjnu 2022.
Byly publikovány informace o kritické zranitelnosti CVE-2026-31431 pojmenované Copy Fail v Linuxu, konkrétně v kryptografii (AF_ALG). Běžný uživatel může získat práva roota (lokální eskalaci práv). Na všech distribucích Linuxu vydaných od roku 2017. Pomocí 732bajtového skriptu. V upstreamu je již opraveno. Zranitelnost byla nalezena pomocí AI Xint Code.
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.
Konečně mi došlo Raspberry PI a tak jsem se rozhodl k jeho prvnímu nasazení: Chtěl jsem „osvobodit“ své USB/MIDI klávesy od nutnosti pokaždé je připojovat k notebooku. Propojil jsem tedy klávesy s Raspberry PI s Raspbianem přes USB, k Raspberry přes malého Jacka bedýnky a ještě to celé napojil do lokální ethernetové sítě, aby se to dalo nějak rozumně konfigurovat.
Konfigurace Raspbianu byla celkem přímočará. Vyzkoušel jsem na něm nahodit MPD a fungoval prakticky hned. Poté jsem nainstaloval Timidity, což je „syntezátor“, který pojídá na vstupu MIDI zprávy (do chřtánu se mu dá nalít i MIDI soubor) a na výstupu vylézá digitální audio, které stačí už jen poslat do zvukovky.
Zdálo se, že Timidity po nainstalování hned začalo fungovat. Když jsem do něj nalil první MIDI soubor, co byl po ruce (pmidi -p 128:0 [soubor.midi]) tak se sice cukal, ale to se dalo jednoduše spravit tím, že jsem v /etc/timidity/timidity.cfg prostě povypínal echa a chorusy a jemný resampling.
Pak jsem propojil Timidity s MIDI klávesami (aconnect 20:0 128:0) a Timidity skutečně začalo hrát. Jenže ouha, s tak šílenou latencí, že to bylo horší, než nejhorší pneumatické varhany na které jsem se kdy pokoušel hrát.
Když jsem na internetu hledal, jak by se dalo Timidity přemluvit k nějaké menší latenci, našel jsem jen parametr -B pro příkazovou řádku. Pro Timidity v režimu démona tohle nikde zdokumentováno nebylo. Nakonec ale zvítězila taktika uživatelů Windows „nějak to zkusit.“ Konkrétně jsem si řekl, což kdyby parametr pro příkazovou řádky fungovat i v konfiguračním souboru
. A taky, že jo. Toto mi funguje (v /etc/timidity/timidity.cfg):
opt B4,8
Pokud by to zlobilo, pak je nutno mírně zvýšit první číslo. Aby se Timidity vždy spojilo s MIDI klávesami, je nutné vždy po nastartování Timidity ještě spustit aconnect. To jsem nakonec vyřešil zásahem do /etc/init.d/timidity takto:
#!/bin/bash
#
# TiMidity /etc/init.d/ initscript for TiMidity++
# $Id: timidity.init,v 1.6 2004/09/30 01:04:04 hmh Exp $
#
# Copyright (c) 2004 by Henrique M. Holschuh <hmh@debian.org>
# Copyright (c) 2007-2009 Joost Yervante Damad <andete@debian.org>
# Hacked (h) 2013 by Petr Tomasek
#
# Distributed under the GPL version 2
#
### BEGIN INIT INFO
# Provides: timidity
# Required-Start: $remote_fs
# Required-Stop: $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: start and stop timidity
# Description: TiMidity++ is a very high quality software-only MIDI sequencer
# and MOD player.
### END INIT INFO
. /lib/lsb/init-functions
NAME="timidity"
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/${NAME}
DESC="TiMidity++ ALSA midi emulation"
PIDFILE=/var/run/timidity/${NAME}.pid
set -e
test -x ${DAEMON} || exit 0
TIM_ALSASEQ=true
TIM_ALSASEQPARAMS="-B2,8"
[ -r /etc/default/timidity ] && . /etc/default/timidity
if [ "${TIM_ALSASEQ}" != "true" ]; then
log_daemon_msg "Starting" "${NAME}"
log_daemon_msg " (to get timidity as an ALSA Sequencer enable this by editing the file /etc/default/timidity)"
log_end_msg 0
exit 0
fi
[ -z "$SERVER_USER" ] && SERVER_USER=timidity
[ -z "$SERVER_GROUP" ] && SERVER_GROUP=timidity
if ! getent passwd | grep -q "^${SERVER_USER}:"; then
log_daemon_msg "Server user does not exist. Aborting"
log_end_msg 0
exit 1
fi
if ! getent group | grep -q "^${SERVER_GROUP}:" ; then
log_daemon_msg "Server group does not exist. Aborting"
log_end_msg =
exit 1
fi
PARAMS="${TIM_ALSASEQPARAMS} -iAD"
START="--start --chuid ${SERVER_USER} --quiet --exec ${DAEMON} --pidfile ${PIDFILE} -- ${PARAMS}"
case "$1" in
start)
#log_daemon_msg "Starting" "${NAME}"
[ -d /proc/asound ] && [ -d /dev/snd/ ] || {
log_end_msg 1 || echo -n
log_warning_msg "ALSA is not active, cannot start $DESC"
exit 0
}
log_begin_msg "Starting $DESC..."
mkdir -p /var/run/timidity
chown timidity /var/run/timidity
if start-stop-daemon ${START} < /dev/null >/dev/null >>&1; then
echo -ne '\n\t\t... connecting to MIDI keyboard..\t'
sleep 2
aconnect 20:0 128:0
echo "[ok]"
log_end_msg 0
else
log_end_msg 1
exit 1
fi
;;
stop)
log_begin_msg "Stopping $DESC..."
if start-stop-daemon --stop --oknodo --pidfile ${PIDFILE} \
--name ${NAME} --retry 10 ; then
log_end_msg 0
else
log_end_msg 1
exit 1
fi
;;
restart|force-reload)
$0 stop
exec $0 start
;;
status)
status_of_proc $DAEMON $NAME
;;
*)
echo "Usage: $0 {start|stop|restart|force-reload|status}" >&2
exit 1
esac
exit 0
Bacha na změnu /bin/sh na /bin/bash, jinak nefunguje echo -ne .... S touto změnou to funguje dobře. Třeba to bude někomu k užitku
.
Tiskni
Sdílej: