K 1. lednu 2026 končí 70leté omezení majetkových autorských práv děl autorů zesnulých v roce 1955, viz 2026 in public domain. V americkém prostředí vstupují do public domain díla z roku 1930, viz Public Domain Day.
Všem vše nejlepší do nového roku 2026.
Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.60. Vyzkoušet lze online demo.
Daniel Stenberg na svém blogu informuje, že po strncpy() byla ze zdrojových kódů curlu odstraněna také všechna volání funkce strcpy(). Funkci strcpy() nahradili vlastní funkcí curlx_strcopy().
Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.
Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.
Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.
V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.
Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.
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: