Dnes a zítra probíhá vývojářská konference Google I/O 2026. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).
Canonical vydal Ubuntu Core 26. Vychází z Ubuntu 26.04 LTS a podporováno bude 15 let. Ubuntu Core je minimální neměnný operační systém určený pro vestavěné systémy.
Bylo vydáno OpenBSD 7.9. Po dlouhé době opět se songem: Diamond in the Rough.
Byl vydán Mozilla Firefox 151.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 151 bude brzy k dispozici také na Flathubu a Snapcraftu.
Elon Musk prohrál soudní spor se společností OpenAI, která se podle jeho žaloby odchýlila od původně uváděného cíle vyvíjet umělou inteligenci (AI) ku prospěchu lidstva. Porota včera po necelých dvou hodinách dospěla k jednomyslnému závěru, že Musk žalobu podal příliš pozdě. Musk byl jedním ze spoluzakladatelů společnosti OpenAI, která vznikla v roce 2015 a vyvinula populární chatovací systém ChatGPT. V roce 2018 na svůj post ve vedení
… více »Byla vydána nová verze 10.4 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Opraveny jsou zranitelnosti Copy Fail a Dirty Frag. Přibyl nový obraz pro Orange Pi 5B.
Pokud je zranitelnost Linuxu v nepoužívaném jaderném modulu, lze ji jednoduše vyřešit zakázáním automatického načítání tohoto konkrétního zranitelného modulu. Projekt ModuleJail si klade za cíl zvýšit bezpečnost Linuxu zakázáním automatického načítání všech nepoužívaných jaderných modulů. Jedná se o skript, který dá všechny nepoužívané jaderné moduly na blacklist (/etc/modprobe.d/modulejail-blacklist.conf).
Odborníci z Penn State University zkoumají způsob ukládání informací na lepicí pásku. Principiálně by podle nich bylo možné kombinací odlepení a zpětného přilepení dosáhnout uložení informace, kterou opětovným odlepením dokážou přečíst. Výhodou je, že způsob uložení i přečtení je čistě mechanický. Zde o tom referují ve volně dostupném článku. Zajímavé bude sledovat zda se jim v rámci výzkumu podaří prokázat použitelnost i v jiné než
… více »Na GitHubu byl publikován reprodukovatelný návod, jak rozchodit Adobe Lightroom CC na Linuxu a Wine. Návod byl vytvořený pomocí AI Claude Code.
Pokud by někdo potřeboval Wayland kompozitor uvnitř počítačové hry Minecraft, aby mohl zobrazovat okna desktopových aplikací přímo v herním prostředí, může sáhnout po Waylandcraftu. Ukázka na YouTube.
Zápisky v tomto blogu podléhají licenci Creative Commons Uveďte původ-Zachovejte licenci 4.0 Mezinárodní (CC BY-SA 4.0).
Git repozitář se zdrojovými soubory tohoto blogu v pandoc markdown formátu: marbu/abclinuxu-blog-hromada.
Nedávno jsem znovu objevil Jamendo a jako uživatel konqueroru a mpd jsem se je pokusil všechny tři donutit k spolupráci.
Idea byla vytvořit pro konqueror nové service menu, které by přidalo album na playlist music player daemona - ten by tak mohl streamovanou hudbu přehrávat. Pro jasnějsí představu následuje screenshot.
Po nedávném redesignu Jamenda se mi ale v konqueroru nepodařilo najít přímý odkaz na žádný playlist. Naštěstí ale Jamendo nabízí hezké rozhraní MusiclistApi, díky kterému není získání playlistu problém. Následující bash skript očekává url jamendího alba, které přidá do playlistu mpd. Pokud jako první parametr uvedete -p, nejprve současný playlist smaže a po přidání nového hned začne přehrávat.
#!/bin/bash
NAME=mpc.jamendo.add
BASE_URL="http://www.jamendo.com/"
PLAY_URL="http://www.jamendo.com/get/track/id/album/audio/play/"
if [[ $# -eq 0 ]]; then
echo -e "$NAME -- simple jamendo interface for mpd\
\nusage: $NAME [-p] jamendo_url"
exit
fi
if [[ "$1" == "-p" ]]; then
PLAY=0
shift
fi
if [[ "$1" =~ ^${BASE_URL}.*album/([0-9]*)/?$ ]]; then
NUMBER=${BASH_REMATCH[1]}
else
echo "wrong URL" >&2
exit 1
fi
[[ $PLAY ]] && mpc clear;
wget -O - ${PLAY_URL}${NUMBER} | mpc add
[[ $PLAY ]] && mpc play;
Poznámky: Nebyl by asi problém mpc nahradit jiným přehrávačem, který rozumí formátu m3u, případně ještě XSPF (viz MusiclistApi). Streamuje se ve formátech mp3 a ogg, ale bohužel mpd trpí bugem, který omezuje volbu na mp3.
Teď už stačí vytvořit service menu pro konqueror, které bude spouštět výše uvedenž skript. Do adresáře ~/.kde/share/apps/konqueror/servicemenus přidáme soubor jamendo.desktop s následujícím obsahem:
[Desktop Entry] ServiceTypes=text/html Actions=jamendo_play;jamendo_add X-KDE-Priority=TopLevel X-KDE-Submenu=mpc &Jamendo [Desktop Action jamendo_add] Name=vložit na konec playlistu Exec=~/bin/mpc.jamendo.add %u 2>&1 /dev/null [Desktop Action jamendo_play] Name=vložit playlist a přehrát Exec=~/bin/mpc.jamendo.add -p %u 2>&1 /dev/nullDobrý nápad je zkontrolovat si cestu (případně i název) k
skriptu mpc.jamendo.add.
Btw na ArchLinuxím fóru jsem narazil na cli rozhraní k Jamendu napsané v bashi
, třeba se bude někomu líbit.
Tiskni
Sdílej:
#!/bin/bash
DATA=/data/mp3
send() {
echo "$*" > /dev/tcp/localhost/6600
}
file="`netcat localhost 6600 <<<'playlistinfo 0
close' | sed -n '/^file/s/^file: //p' | iconv -f utf8 -t iso-8859-2`"
path="$DATA/${file%/*}"
[[ "x$path" = x ]] && path="$DATA"
dir=`kdialog --getexistingdirectory "$path"`
[[ $? != 0 ]] &&
exit
dir="${dir#/data/mp3/}"
if [[ "x$dir" != x ]]; then
if [[ "$1" == "-a" ]]; then
send add "\"$dir\""
else
send clear
send add "\"$dir\""
fi
fi
send play
Pozrie sa, co je naloadovane v playliste a podla toho v tom adresi otvori kdialog --getexistingdirectory. Ak je playlist prazdny, tak otvori mp3 "rootdir". Ak je spusteny s parametrom -a (Win+Shift+L), tak to do playlistu iba prida, nepremaze existujuci. A spusti. Nakolko mpd protokol je uzasne jednoduchy, tak nie je nutne ani pouzivat nejakeho dalsieho klienta a da sa ovladat rovno bashom. Jedina vec je, ze mpd chce mp3-ky podla cesty v jeho databaze a nie podla cesty v fs. Takze treba niekedy pridat prefix mp3 "rootdir" a niekedy ubrat.
ncmpc, kterýho spustím v yakuake (většinou tam na nějaké záložce běží pořád). S tou padavostí to u mě není tak strašný, pokud se vyřadí aRts, se kterým mi mpd rádo navzájem sem tam blokovalo.
takže ji možná nepoužívám dost často, aby se nějaká chyba projevila. Btw chválně jsem teď zkoušel co udělá, když vyvalám ten bug co shodí mpd a vůbec se to Sonatě nelíbí - chová se to podobně jak popisuješ a pak se odpojí.
Item, "Vložit na konec playlistu"="Execute program, "/home/user/bin/mpc.jamendo.add ", "%l"" Item, "Vložit playlist a přehrát"="Execute program, "/home/user/bin/mpc.jamendo.add -p ", "%l""http://wiki.operacesky.net/index.php?title=%C3%9Apravy_menu_-_z%C3%A1klady
Začal jsem používat ten skript, ale začala mě štvát jedna věc:
Na Jamendu mají mp3 soubory uložený id3 tag až na konci (id3 tagy je samozřejmě možné mít na začátku, nebo dokonce i měnit během hraní) - takže mpd nedokáže tu informaci u streamu přečíst a nezobrazí se popisky k jednotlivým skladbám.
Tento problém lze vyřešit poměrně jednoduše - stačí používat ogg. Drobně jsem proto ten skript poupravil, aby bylo možné vybrat si formát hudebních souborů:
#!/bin/bash
NAME=mpc.jamendo.add
BASE_URL="http://www.jamendo.com/"
PLAY_URL="http://www.jamendo.com/get/track/id/album/audio/plain/"
if [[ $# -eq 0 ]]; then
echo -e "$NAME -- simple jamendo interface for mpd\
\nusage: $NAME [-p] jamendo_url"
exit
fi
if [[ "$1" == "-p" ]]; then
PLAY=0
shift
fi
if [[ "$1" =~ ^${BASE_URL}.*album/([0-9]*)/?$ ]]; then
NUMBER=${BASH_REMATCH[1]}
else
echo "wrong URL" >&2
exit 1
fi
#Choose your encoding:
ENC="ogg2" # lowfi OGG q4
#ENC="mp31" # lowfi MP3 (96kbits) (default for streaming / player)
#These are probably not working:
#ENC="ogg1" # lowfi OGG (q-1)
#ENC="ogg3" # hifi OGG q7
#ENC="mp32" # hifi MP3 (200kbits+) (default for archives)
[[ $PLAY ]] && mpc clear;
wget -O - "${PLAY_URL}${NUMBER}&aue=${ENC}" | mpc add
[[ $PLAY ]] && mpc play;
Problém je ale v tom, že v mpd je zřejmě nějaká chyba, taže ten ogg začně přehrávat až po několika minutách (vůbec stahovat se dá jen ogg2 a mp31), a není to problém Jamenda, protože mplayer to přehraje hned. Takže to zatím nic neřeší, ale třeba někdo mpd časem opraví.
Se dívám, že status toho bugu byl nedávno změněn na fixed, takže je to možná v svn verzi spravené už teď - ale nezkoušel jsem to a nerozumím hlášce Fixed in mpd-mk.
Jo a díky za doplnění.