kaliko.mehttps://kaliko.me/2023-11-26T00:00:00+01:00GPG key expiring 2024-02-152023-11-25T00:00:00+01:002023-11-25T00:00:00+01:00kalikotag:kaliko.me,2023-11-25:/posts/2023/11/gpg-key-expiring-2024-02-15/<p>My gpg key 0x065FE53932DC551D will expire (<strong>2024-02-15</strong>), please update</p><p>I’ve just set a new expiration date for my keys 3 years from now: <strong>2026-11-24</strong>.</p>
<p>Please update your copy in your repository setup in case you’re using <a href="https://kaliko.me/debian">deb.kaliko.me</a>.</p>
<p>The key should be available here:</p>
<ul>
<li>kaliko.me ascii <a href="https://kaliko.me/kaliko.asc">kaliko.asc</a></li>
<li>kaliko.me binary <a href="https://kaliko.me/kaliko.gpg">kaliko.gpg</a></li>
<li>db.debian.org ascii <a href="https://db.debian.org/fetchkey.cgi?fingerprint=2255310AD1A248A07B597638065FE53932DC551D">0x065FE53932DC551D</a></li>
<li>keys.openpgp.org ascii <a href="https://keys.openpgp.org/vks/v1/by-fingerprint/2255310AD1A248A07B597638065FE53932DC551D">0x065FE53932DC551D</a></li>
</ul>
<p>You can also install it using the debian package, in case you already have <code>deb.kaliko.me</code> in apt sources list:</p>
<p><code>apt update && apt install kaliko-archive-keyring=0.5</code></p>
<p>Otherwise please follow the package repository <a href="https://kaliko.me/debian">instructions</a>.</p>MPD 0.23.14 Backports2023-10-15T00:00:00+02:002023-11-26T00:00:00+01:00kalikotag:kaliko.me,2023-10-15:/posts/2023/10/mpd-02314-backports/<p><span class="caps">MPD</span> 0.23.14 Debian/Raspbian backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://raw.githubusercontent.com/MusicPlayerDaemon/MPD/v0.23.14/NEWS">v0.23.14</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64|arm64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> both for bookworm and bullseye.</p>
<p>These will likely be <strong>the last builds for bullseye</strong> which is now <strong>old-stable</strong>, with next <span class="caps">MPD</span> releases I will build amd64, arm64 and armhf for <strong>bookworm only</strong>.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>ncmpc 0.492023-10-15T00:00:00+02:002023-10-15T00:00:00+02:00kalikotag:kaliko.me,2023-10-15:/posts/2023/10/ncmpc-049/<p>ncmpc 0.49 Debian Bookworm backports</p><p>Packages for ncmpc <a href="https://raw.githubusercontent.com/MusicPlayerDaemon/ncmpc/v0.49/NEWS">v0.49</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/n/ncmpc/">amd64|arm64</a> Bookworm.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>MPD 0.23.12 for bullseye2023-02-26T00:00:00+01:002023-02-26T00:00:00+01:00kalikotag:kaliko.me,2023-02-26:/posts/2023/02/mpd-02312-for-bullseye/<p><span class="caps">MPD</span> 0.23.12 Debian/RaspiOS bullseye backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://raw.githubusercontent.com/MusicPlayerDaemon/MPD/v0.23.12/NEWS">v0.23.12</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64|arm64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> Bullseye.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>
<p>Fore those already following the repo, remember to update the signing
key, <strong>it will <a href="https://kaliko.me/posts/2023/02/gpg-key-expiring/">expire soon</a></strong>.</p>
<p>You can simply install it with apt (please refer <a href="https://kaliko.me/posts/2023/02/signing-key-package/">to dedicated post</a>):</p>
<p><code>apt install kaliko-archive-keyring</code></p>New package containing the signing key2023-02-18T00:00:00+01:002023-02-18T00:00:00+01:00kalikotag:kaliko.me,2023-02-18:/posts/2023/02/signing-key-package/<p>New package available to update deb.kaliko.me signing key easily when changing expiry date.</p><p>The package is named kaliko-archive-keyring, it’ll install the signing key in
<code>/usr/share/keyrings/deb.kaliko.me.gpg</code>.</p>
<p>Then there are no changes to do in your source list as long as you previously
followed <a href="https://kaliko.me/debian">recommendations to add deb.kaliko.me repositories</a>.</p>
<p>The main advantage to use the package instead of manually add the key is that
apt will notify the system when I release a new version of
kaliko-archive-keyring shipping changes in my signing key (mainly key expiry
date).<br>
Then an <code>apt update</code> or whatever is used to maintain your system up to date
will notify you a new version is available.</p>
<h2>Install</h2>
<p>In case you already have deb./kaliko.me repository setup just install the package:<br>
<code>apt install kaliko-archive-keyring</code></p>
<p>Otherwise, follow <a href="https://kaliko.me/debian">procedure</a> on the dedicated page.</p>GPG key expiring2023-02-15T00:00:00+01:002023-02-27T00:00:00+01:00kalikotag:kaliko.me,2023-02-15:/posts/2023/02/gpg-key-expiring/<p>My gpg key will expire (<strong>2023-03-28</strong>), please update</p><p>I’ve just set a new expiration date for my keys one years from now: <strong>2024-02-15</strong>.</p>
<p>Please update your copy in your repository setup in case you’re using <a href="https://kaliko.me/debian">deb.kaliko.me</a>.</p>
<p>The key with the new expiration date is available here:</p>
<ul>
<li>ascii <a href="https://kaliko.me/kaliko.asc">kaliko.asc</a></li>
<li>binary <a href="https://kaliko.me/kaliko.gpg">kaliko.gpg</a></li>
</ul>
<p>You can also install it using a debian package, in case you already have <code>deb.kaliko.me</code> declared:</p>
<p><code>apt install kaliko-archive-keyring</code></p>
<p>Otherwise please follow <a href="https://kaliko.me/debian">instructions</a>.</p>Picard 2.8.52023-01-13T00:00:00+01:002023-01-13T00:00:00+01:00kalikotag:kaliko.me,2023-01-13:/posts/2023/01/picard-285/<p>Picard 2.8.5 Bullseye backport</p><p>Packages for <a href="https://blog.metabrainz.org/2022/12/06/picard-2-8-5-released/">picard 2.8.5</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/p/picard/">amd64</a> Bullseye.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>Adding AArch64 (arm64) architecture to backports2023-01-06T00:00:00+01:002023-01-06T00:00:00+01:00kalikotag:kaliko.me,2023-01-06:/posts/2023/01/New-AArch64-architecture/<p>arm64 for Debian/RaspiOS backports</p><p>The raspberry project has <a href="https://www.raspberrypi.com/news/raspberry-pi-os-64-bit/">recently released a 64-bit operating system</a>. </p>
<p>Then I decided to build <span class="caps">MPD</span> backports for this new architecture as well. </p>
<p>But only Pi 3/4 and Pi Zero 2 boards support this new operating system. Then
I’ll try to maintain armhf builds to support Pi 1/2 which are still useful for
many use cases and more than enough to run <span class="caps">MPD</span> as well :)</p>
<p>As mentioned in the worth reading <a href="https://www.tomshardware.com/news/raspberry-pi-os-no-longer-raspbian">tomshardware.com</a> article, “ The new, 64-bit
operating system doesn’t use software from the Raspbian project at all, instead
taking its “userland,” the part of the <span class="caps">OS</span> that floats above the Kernel, from
Debian arm64. ”</p>
<p>Then I’ll expose arm64 build within debian namespace instead of the raspbian
namespace used so far for armhf builds. It means you can use regular
debian-backports from <code>deb.kaliko.me</code> to install backports on <strong>64-bit arm64</strong>
Raspberry Pi <span class="caps">OS</span>:</p>
<div class="highlight"><pre><span></span><code>https://deb.kaliko.me/debian-backports/
</code></pre></div>
<p>For <strong>32-bit armhf</strong> architecture use rapsbian backports:</p>
<div class="highlight"><pre><span></span><code>https://deb.kaliko.me/raspbian-backports/
</code></pre></div>
<p>Please <a href="https://kaliko.me/debian">see <code>deb.kaliko.me</code></a> for the exact content of the source list and its setup.</p>
<p>To identify the current system architecture run: <code>dpkg --print-architecture</code>.</p>
<p>Any comment, advise, feed back, help are welcome :)</p>MPD 0.23.11 for bullseye2023-01-06T00:00:00+01:002023-02-26T00:00:00+01:00kalikotag:kaliko.me,2023-01-06:/posts/2023/01/mpd-02311-for-bullseye/<p><span class="caps">MPD</span> 0.23.11 Debian/RaspiOS bullseye backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://raw.githubusercontent.com/MusicPlayerDaemon/MPD/v0.23.11/NEWS">v0.23.11</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> Bullseye.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>MPD 0.23.8 for bullseye2022-07-12T00:00:00+02:002022-07-12T00:00:00+02:00kalikotag:kaliko.me,2022-07-12:/posts/2022/07/mpd-0238-for-bullseye/<p><span class="caps">MPD</span> 0.23.8 Debian/RaspiOS bullseye backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://raw.githubusercontent.com/MusicPlayerDaemon/MPD/v0.23.8/NEWS">v0.23.8</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> Bullseye.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>python-musicpd 0.8.02022-05-09T00:00:00+02:002022-05-09T00:00:00+02:00kalikotag:kaliko.me,2022-05-09:/posts/2022/05/python-musicpd-080/<p>Releasing python-musicpd 0.8.0</p><p>This release adds context management and raised minimum python version to 3.6, see <a href="https://gitlab.com/kaliko/python-musicpd/-/blob/v0.8.0/CHANGES.txt#L4-9">changes</a> for more.</p>
<p>MPDClient instances now support context manager, see <a href="https://kaliko.gitlab.io/python-musicpd/use.html#context-manager">doc</a> for more, thanks to Wonko der Verständige.</p>
<ul>
<li>python-musicpd 0.8.0 is available <a href="https://pypi.org/project/python-musicpd/">on pypi</a>.</li>
<li>Debian/bullseye <a href="https://deb.kaliko.me/debian-backports/pool/main/p/python-musicpd/">backported paclage is available</a>, cf. <a href="https://kaliko.me/debian"><code>deb.kaliko.me</code></a> if you want to use the repo.</li>
<li><a href="https://kaliko.gitlab.io/python-musicpd">Documentation</a></li>
</ul>
<p>Happy Music Player Daemon hacking with python 🐍 :)<br>
Happy listening 🎶!</p>MPD 0.23.6 for bullseye2022-04-14T00:00:00+02:002022-04-14T00:00:00+02:00kalikotag:kaliko.me,2022-04-14:/posts/2022/04/mpd-0236-for-bullseye/<p><span class="caps">MPD</span> 0.23.6 Debian/RaspiOS bullseye backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://raw.githubusercontent.com/MusicPlayerDaemon/MPD/v0.23.6/NEWS">v0.23.6</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> Bullseye.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>Picard 2.7.12022-01-11T00:00:00+01:002022-01-11T00:00:00+01:00kalikotag:kaliko.me,2022-01-11:/posts/2022/01/picard-271/<p>Picard 2.7.1 Bullseye backports</p><p>Packages for <a href="https://blog.metabrainz.org/2021/12/21/picard-2-7-1-released/">picard 2.7.1</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/p/picard/">amd64</a> Bullseye.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>MPD_sima 0.18.02021-11-17T00:00:00+01:002021-11-17T00:00:00+01:00kalikotag:kaliko.me,2021-11-17:/posts/2021/11/MPD_sima-0.18.0/<p>MPD_sima 0.18.0 Release</p><p><a href="https://kaliko.me/mpd-sima">MPD_sima</a> v0.18.0 is available.
The package is available on <a href="https://pypi.org/project/MPD-sima/0.18.0/">pypi.org</a>
and tagged <a href="https://gitlab.com/kaliko/sima/-/tags/0.18.0">0.18.0</a> in git:</p>
<div class="highlight"><pre><span></span><code>pip install MPD-sima<span class="o">==</span><span class="m">0</span>.18.0
<span class="c1"># Or from git</span>
pip install git+https://gitlab.com/kaliko/sima.git@0.18.0#egg<span class="o">=</span>MPD-sima
</code></pre></div>
<p>Please report issue on gitlab: <a href="https://gitlab.com/kaliko/sima/-/issues">gitlab.com/kaliko/sima/-/issues</a></p>
<h2>Main changes</h2>
<p>Changes since <a href="https://kaliko.me/posts/2020/12/sima-0.16.0/">0.16</a>:</p>
<ul>
<li>New offline autoqueue plugin <strong>genre</strong> based on file genre tags only</li>
<li>Major changes in <span class="caps">CLI</span> (<code>simadb_cli</code> command removed)</li>
<li>Add abstract unix socket support</li>
<li>Support socket timeout, behave better on connection lost (require <a href="https://kaliko.me/posts/2021/07/python-musicpd-070/">python-musicpd >= 0.7.0</a>)</li>
<li>Major internal refactoring around database, <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> <strong>old database dropped!</strong></li>
</ul>
<p>Cf. <a href="https://gitlab.com/kaliko/sima/-/raw/0.18.0/doc/Changelog">Changelog for the complete list</a>.</p>
<h2>New plugin <strong>Genre</strong></h2>
<p>This plugin permits offline auto-queuing based on files genre tag only.<br>
It will try to queue tracks with similar genres (track’s genre being read from tags). </p>
<div class="highlight"><pre><span></span><code><span class="k">[sima]</span><span class="w"></span>
<span class="na">internal</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">Crop, Genre, Random</span><span class="w"></span>
<span class="na">history_duration</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">8</span><span class="w"></span>
<span class="k">[genre]</span><span class="w"></span>
<span class="na">queue_mode</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">track</span><span class="w"></span>
<span class="na">track_to_add</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">1</span><span class="w"></span>
</code></pre></div>
<p>Fore more please see <a href="https://manpages.debian.org/bookworm/mpd-sima/mpd_sima.cfg.5.en.html">mpd_sima.cfg (5)</a> (select 0.18.0 version).</p>
<h2>Change in <span class="caps">CLI</span></h2>
<p><code>simadb_cli</code> command was merged as <code>mpd-sima</code> command as positional argument:</p>
<div class="highlight"><pre><span></span><code>mpd-sima [bl-view|bl-add-artist|bl-add-track|bl-delete]
</code></pre></div>
<p>New commands also:</p>
<div class="highlight"><pre><span></span><code>mpd-sima [config-test|create-db|generate-config|purge-history]
</code></pre></div>
<p>Please see manual for more <a href="https://manpages.debian.org/bookworm/mpd-sima/mpd-sima.1.en.html">mpd-sima (1)</a> (select 0.18.0 version).</p>
<h2>New database</h2>
<p>The internal SQLite database has been refactored (new schema, new code).<br>
The internal database stores play history (limited to 30 days) and potential users blocklists (artists, albums, tracks).</p>
<p>There are <strong>no migration ensured</strong> when upgrading to v0.18.0. Then if you had set some blocklists in the database you won’t have them in the new version.</p>
<h2>New documentation</h2>
<p>A new documentation is available as html (sphinx behind): <a href="https://media.kaliko.me/sima/">media.kaliko.me/sima/</a><br>
This is a work in progress and it is not exhaustive then.</p>
<p>Happy listening 🎶!<br> k</p>MPD 0.23.4 for bullseye2021-11-12T00:00:00+01:002021-11-12T00:00:00+01:00kalikotag:kaliko.me,2021-11-12:/posts/2021/11/mpd-0234-for-bullseye/<p><span class="caps">MPD</span> 0.23.4 Debian/RaspiOS bullseye backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://raw.githubusercontent.com/MusicPlayerDaemon/MPD/v0.23.4/NEWS">v0.23.4</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> Bullseye.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>Updating Raspbian suites for Bullseye release2021-11-11T00:00:00+01:002021-11-11T00:00:00+01:00kalikotag:kaliko.me,2021-11-11:/posts/2021/11/updating-raspbian-suites-for-bullseye-release/<p>Switching to Bullseye for <span class="caps">MPD</span> packages</p><p>Now that bullseye Raspberry Pi <span class="caps">OS</span><sup id="fnref:1"><a class="footnote-ref" href="#fn:1">1</a></sup> images <a href="https://www.raspberrypi.com/news/raspberry-pi-os-debian-bullseye/">have been officially
released</a> I
will no longer support buster armhf builds.<br>
<strong>New backports for <span class="caps">MPD</span> packages will be done against Bullseye Raspberry Pi <span class="caps">OS</span>.</strong></p>
<p>The latest <span class="caps">MPD</span> backport available for buster will be then <a href="https://kaliko.me/posts/2021/10/mpd-0232/"><span class="caps">MPD</span> 0.23.2</a>.</p>
<h2>kaliko repositories</h2>
<p><strong>Pay attention</strong>: Releasing the new <em>bullseye-backports</em> suite means the <em>stable-backports</em> suite will also be updated to point to bullseye-backports.</p>
<p>Check your apt source list is mentioning the right release code name (<em>buster-backports</em> for instance) instead of the “floating” stable name (ie. <em>stable-backports</em>).<br>
Here is a easy way to control you have the correct <span class="caps">URL</span>:</p>
<div class="highlight"><pre><span></span><code><span class="c1"># To run in your shell as a regular non privileged user</span>
<span class="nv">distribution</span><span class="o">=</span><span class="k">$(</span>lsb_release -si<span class="p">|</span>tr <span class="s1">'[:upper:]'</span> <span class="s1">'[:lower:]'</span><span class="k">)</span>
<span class="nv">release</span><span class="o">=</span><span class="k">$(</span>lsb_release -sc<span class="k">)</span>
<span class="c1"># This will print the correct URL for this host, check your conf in /etc/apt</span>
<span class="nb">echo</span> <span class="s2">"https://deb.kaliko.me/</span><span class="si">${</span><span class="nv">distribution</span><span class="si">}</span><span class="s2">-backports/ </span><span class="si">${</span><span class="nv">release</span><span class="si">}</span><span class="s2">-backports main"</span>
</code></pre></div>
<h2>When will it happen</h2>
<p>In the next days, weeks, hopefully by the end of the year.</p>
<p>Consult <a href="https://kaliko.me/debian">the dedicated page</a> for more information about how to set the repository.</p>
<div class="footnote">
<hr>
<ol>
<li id="fn:1">
<p>previously known as Raspbian, <a href="https://www.tomshardware.com/news/raspberry-pi-os-no-longer-raspbian">more in this
blog post</a> if
your interested in the details. <a class="footnote-backref" href="#fnref:1" title="Jump back to footnote 1 in the text">↩</a></p>
</li>
</ol>
</div>MPD 0.23.22021-10-22T00:00:00+02:002021-10-22T00:00:00+02:00kalikotag:kaliko.me,2021-10-22:/posts/2021/10/mpd-0232/<p><span class="caps">MPD</span> 0.23.2 Debian Buster backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://www.musicpd.org/news/2021/10/mpd-0-23-2-released/">v0.23.2</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64</a> Buster and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">rapsbian/armhf</a> Buster.</p>
<p>io_uring support is disabled, with Debian/buster kernel does not support
io_uring and regarding Raspbian/Buster, liburing is not available in the main repo.</p>
<p>These packages are built against the current libmpdclient 2.16-1 from official Debian repository.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>Updating Debian suites for Bullseye release2021-08-25T00:00:00+02:002021-08-25T00:00:00+02:00kalikotag:kaliko.me,2021-08-25:/posts/2021/08/updating-debian-suites-for-bullseye-release/<p>Updating Debian suites for Bullseye release</p><p>Debian 11 aka Bullseye <a href="https://www.debian.org/News/2021/20210814">was
released</a> some days ago, then Debian
backports suites from <a href="https://kaliko.me/debian"><code>deb.kaliko.me</code></a> will be updated.</p>
<ul>
<li>First I will remove oldstable stretch backports</li>
<li>Then I will start a new suite <strong>bullseye-backports</strong> and update <strong>stable-backports</strong> to point to bullseye-backports.</li>
</ul>
<p>If you had set <strong>stable-backports</strong> suite in your sources, pay attention as it will then point to bullseye backports instead of buster.</p>
<p>In order to <strong>keep following oldstable aka buster (debian 10)</strong>, please update from <code>stable-backports</code> to <code>buster-backports</code> in your source list.</p>
<p>Further information about the repo on <a href="https://kaliko.me/debian"><code>deb.kaliko.me</code></a>.</p>python-musicpd 0.7.02021-07-23T00:00:00+02:002021-07-23T00:00:00+02:00kalikotag:kaliko.me,2021-07-23:/posts/2021/07/python-musicpd-070/<p>Releasing python-musicpd 0.7.0</p><p>This release adds socket timeout (disabled by default) and minor <a href="https://gitlab.com/kaliko/python-musicpd/-/blob/v0.7.0/CHANGES.txt#L4-9">changes</a>.</p>
<p>For socket timeout please read the <a href="https://kaliko.gitlab.io/python-musicpd/use.html#socket-timeout">doc</a> and <a href="https://kaliko.me/posts/2021/07/python-musicpd-socket-timeout/">previous
post</a> on the subject.</p>
<ul>
<li>python-musicpd 0.7.0 is available <a href="https://pypi.org/project/python-musicpd/">on pypi</a>.</li>
<li><a href="https://kaliko.gitlab.io/python-musicpd">Documentation</a></li>
</ul>
<p>Happy Music Player Daemon hacking with python 🐍 :)<br>
Happy listening 🎶!</p>python-musicpd socket timeout2021-07-10T00:00:00+02:002021-07-10T00:00:00+02:00kalikotag:kaliko.me,2021-07-10:/posts/2021/07/python-musicpd-socket-timeout/<p>Add socket timeout in python-musicpd</p><p>Having socket timeout enabled can help to detect “half-open connection”. For
instance loosing connectivity without the server explicitly closing the
connection (switching network, router down, <span class="caps">MPD</span> stuck|crashing, etc…).</p>
<p>A timeout was introduced in v0.6.0 for the initial <span class="caps">MPD</span> connection (connect
command), then the socket is put in blocking mode with no timeout. Its value is
set in musicpd.CONNECTION_TIMEOUT at module level (overridden by MPD_TIMEOUT
environment variable following <a href="https://mpd.readthedocs.io/en/latest/client.html"><span class="caps">MPD</span> recommendations</a>).</p>
<p>Latest commit <a href="https://gitlab.com/kaliko/python-musicpd/-/commit/0c16ca07">0c16ca07</a>
added the possibility to set a socket timeout for the next call/response to <span class="caps">MPD</span>
after the initial connect.</p>
<p>This is not released yet. Please test if you are using this module as part of
your projects. The sphinx documentation is up-to-date, not online though, <a href="https://kaliko.gitlab.io/python-musicpd/index.html#build-documentation">need
to be build</a>.</p>
<p><a href="https://kaliko.me/extra/musicpd-timeout-socket.py">Here are some lines of python</a> to
test the feature using <a href="https://docs.python.org/3/library/select.html#select.select">select.select</a>.</p>
<p>Happy Music Player Daemon hacking with python 🐍 :)<br>
Happy listening 🎶!</p>MPD 0.22.9 packages released2021-07-03T00:00:00+02:002021-07-03T00:00:00+02:00kalikotag:kaliko.me,2021-07-03:/posts/2021/07/mpd-0229-released/<p><span class="caps">MPD</span> 0.22.9 packages Debian/Raspbian Buster</p><p>Packages for <span class="caps">MPD</span> <a href="https://www.musicpd.org/news/2021/06/mpd-0-22-9-released/">v0.22.9</a> are now
available in the repositories for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> Buster.</p>
<p>io_uring support is disabled, with Debian/buster kernel does not support
io_uring and regarding Raspbian/Buster, liburing is not available in the main repo.</p>
<p>These packages are built against the current libmpdclient 2.16-1 from official Debian repository.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>
<p>Debian buster backports (<strong>amd64</strong> only):</p>
<div class="highlight"><pre><span></span><code><span class="c"># /etc/apt/sources.list.d/deb.kaliko.me.list</span>
<span class="c"># Buster BACKPORTS</span>
<span class="k">deb</span> <span class="sx">[signed-by=/usr/share/keyrings/deb.kaliko.me.gpg]</span> <span class="kp">https://deb.kaliko.me/debian-backports/</span> <span class="kp">buster-backports</span> <span class="kp">main</span>
</code></pre></div>
<p>Raspberry Pi <span class="caps">OS</span> backports (<strong>armhf</strong>):</p>
<div class="highlight"><pre><span></span><code><span class="c"># /etc/apt/sources.list.d/deb.kaliko.me.list</span>
<span class="c"># Raspberry Pi OS BACKPORTS</span>
<span class="k">deb</span> <span class="sx">[signed-by=/usr/share/keyrings/deb.kaliko.me.gpg]</span> <span class="kp">https://deb.kaliko.me/raspbian-backports/</span> <span class="kp">buster-backports</span> <span class="kp">main</span>
</code></pre></div>
<p>Add the signing key:</p>
<p><code class="prompt">wget -O /usr/share/keyrings/deb.kaliko.me.gpg https://kaliko.me/kaliko.gpg</code></p>MPD 0.22.92021-06-28T00:00:00+02:002021-06-28T00:00:00+02:00kalikotag:kaliko.me,2021-06-28:/posts/2021/06/mpd-0229/<p>Preview <span class="caps">MPD</span> 0.22.9 packages Debian/Raspbian Buster</p><p>Packages for <span class="caps">MPD</span> <a href="https://www.musicpd.org/news/2021/06/mpd-0-22-9-released/">v0.22.9</a> are built for
<a href="https://media.kaliko.me/deb/mpd/mpd_0.22.9/build_mpd_stable-amd64/mpd_0.22.9-1~bpo10+1_amd64.deb">debian/amd64</a> Buster and
<a href="https://media.kaliko.me/deb/mpd/mpd_0.22.9/build_mpd_stable-armhf/mpd_0.22.9-1~bpo10+1_armhf.deb">raspbian/armhf</a> Buster.</p>
<p>io_uring support is disabled, with Debian/buster kernel does not support
io_uring and regarding Raspbian/Buster, liburing is not available in the main repo.</p>
<p>These packages are built against the current libmpdclient 2.16-1 from official Debian repository.</p>
<p><strong>⚠ Be aware these packages are not yet published in the unofficial Debian repositories <a href="https://kaliko.me/debian">deb.kaliko.me</a>.<br>
To install them get the binary package for you architecture and run <code>apt install</code> on the “*.deb” file.</strong></p>
<p>You can check package integrity (and authenticity, as far as you can trust my gpg key) using signatures in “*.asc” files :</p>
<ul>
<li><a href="https://media.kaliko.me/deb/mpd/mpd_0.22.9/build_mpd_stable-amd64/mpd_0.22.9-1~bpo10+1_amd64.deb">mpd_0.22.9-1~bpo10+1_amd64.deb</a>
[<a href="https://media.kaliko.me/deb/mpd/mpd_0.22.9/build_mpd_stable-amd64/mpd_0.22.9-1~bpo10+1_amd64.deb.asc">asc</a>]</li>
<li><a href="https://media.kaliko.me/deb/mpd/mpd_0.22.9/build_mpd_stable-armhf/mpd_0.22.9-1~bpo10+1_armhf.deb">mpd_0.22.9-1~bpo10+1_armhf.deb</a>
[<a href="https://media.kaliko.me/deb/mpd/mpd_0.22.9/build_mpd_stable-armhf/mpd_0.22.9-1~bpo10+1_armhf.deb.asc">asc</a>]</li>
</ul>
<p>I’ll wait some days for <a href="https://kaliko.me/contact">feedback and potential issues</a> before publishing them.</p>
<p>Happy listening 🎶 !</p>python-musicpd 0.6.02021-05-28T00:00:00+02:002021-05-28T00:00:00+02:00kalikotag:kaliko.me,2021-05-28:/posts/2021/05/python-musicpd-060/<p>Releasing python-musicpd 0.6.0</p><p>This release adds <a href="https://mpd.readthedocs.io/en/stable/user.html#client-connections">abstract unix
socket</a>
support, new commands (binarylimit and getvol).</p>
<p><a href="https://mpd.readthedocs.io/en/latest/client.html#environment-variables"><code>MPD_TIMEOUT</code></a>
environment variable is now used and the default connection timeout is 30s (previously 5s).</p>
<ul>
<li>python-musicpd 0.6.0 is available <a href="https://pypi.org/project/python-musicpd/">on pypi</a>.</li>
<li><a href="https://kaliko.gitlab.io/python-musicpd">Documentation</a></li>
</ul>
<p>Happy Music Player Daemon hacking with python :)</p>MPD 0.22.6 Raspbian builds2021-05-20T00:00:00+02:002021-05-20T00:00:00+02:00kalikotag:kaliko.me,2021-05-20:/posts/2021/05/mpd-0226-raspbian-builds/<p><span class="caps">MPD</span> 0.22.6 Debian Buster backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://www.musicpd.org/news/2021/02/mpd-0-22-6-released/">v0.22.6</a> are built for
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> Buster. </p>
<p>io_uring support is disabled, with Debian/buster and Raspbian/Buster, liburing is not even available in the main
repo for Raspbian/Buster.</p>
<p>These packages are built against the current libmpdclient 2.16-1 from official Debian repository.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>
<p>Sorry for the delay (I know 0.22.7 got released yesterday :)).</p>
<p>Regarding 0.22.7 I’ll first try to update official <a href="https://salsa.debian.org/mpd-team/mpd">Debian
package</a>, then backporting should be
straight forward for both Debian and Rapsbian.</p>
<p>I’m doing this in my spare time, nearly <a href="https://liberapay.com/kaliko/donate">for free</a>, then it can get delayed.<br>
ping me if you need, I’ll raise the priority for this and it’s always good to
hear these builds are useful :)</p>
<p>Happy listening 🎶 !</p>GPG key expired2021-03-28T00:00:00+01:002021-03-28T00:00:00+01:00kalikotag:kaliko.me,2021-03-28:/posts/2021/03/gpg-key-expired/<p>My gpg key have expired, please update</p><p>I’ve just set a new expiration date for my keys two years from now: <strong>2023-03-28</strong>.</p>
<p>Please update your copy in your repository setup in case you’re using <a href="https://kaliko.me/debian">deb.kaliko.me</a>.</p>
<p>I also encourage using the new setup with <code>Signed-By</code> option in the <code>sources.list</code>. Follow the instructions in <a href="https://kaliko.me/debian">kaliko.me/debian</a>.</p>
<p>The key with the new expiration date is available here:</p>
<ul>
<li>ascii <a href="https://kaliko.me/kaliko.asc">kaliko.asc</a></li>
<li>binary <a href="https://kaliko.me/kaliko.gpg">kaliko.gpg</a></li>
</ul>MPD 0.22.62021-03-15T00:00:00+01:002021-03-15T00:00:00+01:00kalikotag:kaliko.me,2021-03-15:/posts/2021/03/mpd-0226/<p><span class="caps">MPD</span> 0.22.6 Debian Buster backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://www.musicpd.org/news/2021/02/mpd-0-22-6-released/">v0.22.6</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64</a> Buster.<br>
No armhf yet, I just need to take time to build it, I hope to have it soon (ping me if needed).</p>
<p>io_uring support is disabled, with Debian/buster kernel does not support
io_uring and regarding Raspbian/Buster, liburing is not available in the main repo.</p>
<p>These packages are built against the current libmpdclient 2.16-1 from official Debian repository.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>TLS broken on kaliko.me2021-02-19T00:00:00+01:002021-02-19T00:00:00+01:00kalikotag:kaliko.me,2021-02-19:/posts/2021/02/tls-broken/<p><span class="caps">TLS</span> certificate broken for a while, fixed now</p><p><span class="caps">TLS</span> certificate for <code>kaliko.me</code> and <code>*.kaliko.me</code> were broken since 2021-02-19 00:00.<br>
I fixed the issue (auto renewal failing).</p>
<p>Sorry for the inconvenience.</p>MPD_sima 0.16.12021-01-09T00:00:00+01:002021-01-09T00:00:00+01:00kalikotag:kaliko.me,2021-01-09:/posts/2021/01/sima-0.16.1/<p>MPD_sima 0.16.1 Release</p><p><a href="https://kaliko.me/mpd-sima">MPD_sima</a> v0.16.1 is available.</p>
<p>The package is available on <a href="https://pypi.org/project/MPD-sima/0.16.1/">pypi.org</a>
and tagged 0.16.1 in git:</p>
<div class="highlight"><pre><span></span><code>pip install MPD-sima<span class="o">==</span><span class="m">0</span>.16.1
<span class="c1"># Or from git</span>
pip install git+https://gitlab.com/kaliko/sima.git@0.16.1#egg<span class="o">=</span>MPD-sima
</code></pre></div>
<h2>Main changes</h2>
<p>For changes in 0.16.0 look at <a href="https://kaliko.me/posts/2020/12/sima-0.16.0/">the previous post</a>.</p>
<p>With 0.16.1 there were some important internal plumbing changes in the plugin
system, but no major changes from the user point of view, hence the point release.</p>
<p>These changes allow to share some logic/code between last.fm and tags plugin
(searching/fetching artists/albums). Then the tags plugin introduced in 0.16.0
can now queue whole album instead of single tracks.</p>
<p>Now to listen to the last 30 years of hardcore albums in your music library:</p>
<div class="highlight"><pre><span></span><code><span class="k">[tags]</span><span class="w"></span>
<span class="na">queue_mode</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">album</span><span class="w"></span>
<span class="na">genre</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">Hardcore</span><span class="w"></span>
<span class="na">filter</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">(date =~ '(199[0-9]+|20[0-9]+)')</span><span class="w"></span>
<span class="na">album_to_add</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">2</span><span class="w"></span>
</code></pre></div>
<p>Please report issue on gitlab: <a href="https://gitlab.com/kaliko/sima/-/issues">gitlab.com/kaliko/sima/-/issues</a></p>
<p>Happy listening<br> k</p>MPD_sima 0.16.02020-12-16T00:00:00+01:002021-01-09T00:00:00+01:00kalikotag:kaliko.me,2020-12-16:/posts/2020/12/sima-0.16.0/<p>MPD_sima 0.16.0 Release</p><p><a href="https://kaliko.me/mpd-sima">MPD_sima</a> v0.16.0 is available.</p>
<p>The package is available on <a href="https://pypi.org/project/MPD-sima/0.16.0/">pypi.org</a>
and tagged 0.16.0 in git:</p>
<div class="highlight"><pre><span></span><code>pip install MPD-sima<span class="o">==</span><span class="m">0</span>.16.0
<span class="c1"># Or from git</span>
pip install git+https://gitlab.com/kaliko/sima.git@0.16.0#egg<span class="o">=</span>MPD-sima
</code></pre></div>
<h2>Main changes</h2>
<h3>Python 3.6</h3>
<p>This release needs ate least python 3.6.</p>
<h3>New offline autoqueue plugin</h3>
<p>The new <strong>Tags</strong> plugin allows offline autoqueuing (no request to external
service to find similarities). This is the first early release of this plugin,
it still needs some polishing, please be kind and report issues if needed :)</p>
<p>The plugin relies on tags to find similar tracks. Available tags are ‘comment’,
‘date’, ‘genre’, ‘label’ and ‘originaldate’. This queue mode is static though,
once you configured a set of tag to look for MPD_sima will queue tracks
according to these tags only.</p>
<p>For instance, assuming you want to listen to <strong>Rock</strong> from the last century, here is the config for the plugin:</p>
<div class="highlight"><pre><span></span><code><span class="c1"># mpd_sima.cfg</span><span class="w"></span>
<span class="na">...</span><span class="w"></span>
<span class="k">[tags]</span><span class="w"></span>
<span class="na">genre</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">Rock, Hard Rock, Punk Rock</span><span class="w"></span>
<span class="na">date</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990</span><span class="w"></span>
</code></pre></div>
<p>This will look for tracks tags with one of the genre set <strong>and</strong> one of the year set in date :<br>
In pseudo code:</p>
<div class="highlight"><pre><span></span><code>track.genre in [ "Rock", "Hard Rock", "Punk Rock" ]
AND
track.date in [ 1980,1981,1982,1983,1984,1985,1986,1987,1988,1989 ]
</code></pre></div>
<p>In addition to supported tag above, you can use <a href="https://www.musicpd.org/doc/html/protocol.html#filters"><span class="caps">MPD</span>
filter</a> as well.</p>
<p>It allows using any tags <span class="caps">MPD</span> exposes and to write more concise expression. For
instance for the example above you can configure the plugin with this filter:</p>
<div class="highlight"><pre><span></span><code><span class="c1"># mpd_sima.cfg</span><span class="w"></span>
<span class="na">...</span><span class="w"></span>
<span class="k">[tags]</span><span class="w"></span>
<span class="na">genre</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">Rock, Hard Rock, Punk Rock</span><span class="w"></span>
<span class="na">filter</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">( date =~ '198[0-9]+' )</span><span class="w"></span>
</code></pre></div>
<p>An interesting feature with filters is the availability to query extra metadata
like <strong>duration</strong>, <strong>AudioFormat</strong> or <strong>Last-Modified</strong>. For example you queue files modifed
since december 2020 :</p>
<div class="highlight"><pre><span></span><code><span class="k">[tags]</span><span class="w"></span>
<span class="na">filter</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">(modified-since '2020-12-01')</span><span class="w"></span>
</code></pre></div>
<p>Testing the plugin configuration is possible with the new executable <code>test-tags-config</code>. Testing your config in <em>/etc/mpd-sima.cfg</em> :</p>
<div class="highlight"><pre><span></span><code>test-tags-config /etc/mpd-sima.cfg
Filter forged: <span class="s2">"((date =~ '199[0-9]+') AND (genre =~ '(Rock|Hardcore|Punk)'))"</span>
<span class="o">{</span><span class="s1">'Swans'</span>, <span class="s1">'Metallica'</span>, <span class="s1">'The Business'</span>, <span class="s1">'The Ejected'</span>, <span class="s1">'Raised Fist'</span>, <span class="s1">'Catharsis'</span>, <span class="s1">'The</span>
<span class="s1">Jesus Lizard'</span>, <span class="s1">'Nada Surf'</span>, <span class="s1">'Mogwai'</span>, <span class="s1">'Jeff Buckley'</span>, <span class="s1">'blink‐182'</span>, <span class="s1">'Korn'</span>, <span class="s1">'Faith No More'</span>,
<span class="s1">'Mr. Bungle'</span>, <span class="s1">'Dodgy'</span>, <span class="s1">'Beck'</span>, <span class="s1">'Soundgarden'</span>, <span class="s1">'Pennywise'</span>, <span class="s1">'Filter'</span>, <span class="s1">'Kyuss'</span>, <span class="s1">'Bad Religion'</span>,
<span class="s1">'Neurosis'</span>, <span class="s1">'Slaughter and The Dogs'</span>, <span class="s1">'GunsN’ Roses'</span>, <span class="s1">'Jimmy Page & Robert Plant'</span>,
<span class="s1">'The Posies'</span>, <span class="s1">'Menace'</span>, <span class="s1">'Body Count'</span>, <span class="s1">'The Smashing Pumpkins'</span>, …<span class="o">}</span>
</code></pre></div>
<h3><span class="caps">MPD</span> client refactoring</h3>
<p>The refactoring will hopefully make the client catch more artists (looking for
last.fm artists in the local music library). It should also behave better in
album mode. Finally the top track mode is also faster (new cache system
speeding up the loop).</p>
<p>Please report issue on gitlab: <a href="https://gitlab.com/kaliko/sima/-/issues">gitlab.com/kaliko/sima/-/issues</a></p>
<p>Happy listening<br> k</p>mpd-slim 0.22.32020-12-10T00:00:00+01:002020-12-10T00:00:00+01:00kalikotag:kaliko.me,2020-12-10:/posts/2020/12/mpd-slim-0223/<p><span class="caps">MPD</span> 0.22.3 (slim builds) Debian|Raspbian Buster</p><p><a href="https://kaliko.me/posts/2019/10/mpd-slim/">mpd-slim</a> builds for <span class="caps">MPD</span> v0.22.3 are available for
<a href="https://deb.kaliko.me/debian/pool/main/m/mpd-slim/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian/pool/main/m/mpd-slim/">raspbian/armhf</a> Buster.</p>
<p>These packages are built against the current libmpdclient 2.16-1 from official Debian repository.</p>
<p>You can add deb.kaliko.me to your source list to follow future builds.</p>
<p>Important changes:</p>
<ul>
<li>Completely remove Sys V init support</li>
<li>Add conflicts with mpd package</li>
<li>Repository moved to non-backports</li>
</ul>
<p>Repositories:</p>
<p>Debian/amd64, use:</p>
<div class="highlight"><pre><span></span><code><span class="na">deb https://deb.kaliko.me/debian/ buster main</span><span class="w"></span>
</code></pre></div>
<p>Raspbian/armhf, use:</p>
<div class="highlight"><pre><span></span><code><span class="na">deb https://deb.kaliko.me/raspbian/ buster main</span><span class="w"></span>
</code></pre></div>
<p>cf. <a href="https://kaliko.me/debian">dedicated page</a> for more info on my debian repositories.</p>Bug in MPD 0.22.3-1~bpo10+12020-12-07T00:00:00+01:002020-12-07T00:00:00+01:00kalikotag:kaliko.me,2020-12-07:/posts/2020/12/MPD_0.22.3-1_bpo10+1/<p>Bug in latest <span class="caps">MPD</span> 0.22.3-1~bpo10+1 package (/run/mpd not writable by <span class="caps">MPD</span>)</p><p>The latest package for <span class="caps">MPD</span> v0.22.3, buster backport 0.22.3-1~bpo10+1 is bugged.
The process cannot write the <span class="caps">PID</span> file to the location defined in the config.</p>
<p>The bug is due to a missing systemd tempfile config I failed to ship in the package
when I backported 0.22.3 to Debian/Buster.</p>
<p>A fix is available in <a href="https://kaliko.me/debian"><code>deb.kaliko.me</code></a>.</p>
<div class="highlight"><pre><span></span><code>apt update
<span class="c1"># check the package is available, should be 0.22.3-1~bpo10+2</span>
apt policy mpd
<span class="c1"># install</span>
apt install <span class="nv">mpd</span><span class="o">=</span><span class="m">0</span>.22.3-1~bpo10+2
</code></pre></div>
<p>Alternatively you can download the package and run <code>apt install ./<package>.deb</code> :</p>
<ul>
<li><code>amd64</code>: <a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/mpd_0.22.3-1~bpo10+2_amd64.deb">mpd_0.22.3-1~bpo10+2_amd64.deb</a></li>
<li><code>armhf</code>: <a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/mpd_0.22.3-1~bpo10+2_armhf.deb">mpd_0.22.3-1~bpo10+2_armhf.deb</a></li>
</ul>
<p>Special thanks to the user who reported the issue :) and sorry for the inconvenience.</p>
<p>Cheers<br>
Happy Listening!</p>MPD 0.22.32020-12-01T00:00:00+01:002020-12-01T00:00:00+01:00kalikotag:kaliko.me,2020-12-01:/posts/2020/12/mpd-0223/<p><span class="caps">MPD</span> 0.22.3 Debian|Raspbian Buster backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://www.musicpd.org/news/2020/11/mpd-0-22-3-released/">v0.22.3</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> Buster.</p>
<p>io_uring support is disabled, with Debian/buster kernel does not support
io_uring and regarding Raspbian/Buster, liburing is not available in the main repo.</p>
<p>These packages are built against the current libmpdclient 2.16-1 from official Debian repository.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>ncmpc 0.422020-11-06T00:00:00+01:002020-11-06T00:00:00+01:00kalikotag:kaliko.me,2020-11-06:/posts/2020/11/ncmpc-042/<p>ncmpc 0.42 Debian Buster backports</p><p>Packages for ncmpc <a href="https://www.musicpd.org/news/2020/10/ncmpc-0-42-released/">v0.42</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/n/ncmpc/">amd64</a> Buster.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>
<p>The package is built with <a href="https://packages.debian.org/source/buster/libmpdclient">libmpdclient 2.16-1</a>.<br>
<code>partitions</code> management is not yet supported then.</p>ncmpc 0.402020-10-12T00:00:00+02:002020-10-12T00:00:00+02:00kalikotag:kaliko.me,2020-10-12:/posts/2020/10/ncmpc-040/<p>ncmpc 0.40 Debian Buster backports</p><p>Packages for ncmpc <a href="https://www.musicpd.org/news/2020/10/ncmpc-0-40-released/">v0.40</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/n/ncmpc/">amd64</a> Buster.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>
<p>The package is built with <a href="https://packages.debian.org/source/buster/libmpdclient">libmpdclient
2.16-1</a>.<br>
<code>partitions</code> management is not yet supported then.</p>MPD slim 0.21.262020-09-26T00:00:00+02:002020-09-26T00:00:00+02:00kalikotag:kaliko.me,2020-09-26:/posts/2020/09/mpd-slim-02126/<p><span class="caps">MPD</span> 0.21.26 (slim builds) Debian|Raspbian Buster backports</p><p><a href="https://kaliko.me/posts/2019/10/mpd-slim/">mpd-slim</a> builds for <span class="caps">MPD</span>
<a href="https://www.musicpd.org/news/2020/09/mpd-0-21-26-released/">v0.21.26</a> are available for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd-slim/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd-slim/">raspbian/armhf</a> Buster.</p>
<p>These packages are built against the current libmpdclient 2.16-1 from official Debian repository.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>MPD 0.21.262020-09-25T00:00:00+02:002020-09-25T00:00:00+02:00kalikotag:kaliko.me,2020-09-25:/posts/2020/09/mpd-02126/<p><span class="caps">MPD</span> 0.21.26 Debian|Raspbian Buster backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://www.musicpd.org/news/2020/09/mpd-0-21-26-released/">v0.21.26</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> Buster.</p>
<p>These packages are built against the current libmpdclient 2.16-1 from official Debian repository.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>MPD slim 0.21.232020-06-02T00:00:00+02:002020-06-02T00:00:00+02:00kalikotag:kaliko.me,2020-06-02:/posts/2020/06/mpd-slim-02123/<p><span class="caps">MPD</span> slim 0.21.23 with sox and shout</p><p>I built mpd-slim 0.21.23 with new option enabled sox and shout.</p>
<p>Builds are available for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd-slim/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd-slim/">raspbian/armhf</a> Buster.</p>
<p>No vanilla 0.21.23 builds backported for buster are planned, request them if needed.</p>
<p>More info on slim <span class="caps">MPD</span> builds <a href="https://kaliko.me/posts/2019/10/mpd-slim/">in this post</a>.</p>MPD_sima 0.16.0.dev02020-05-16T00:00:00+02:002020-05-16T00:00:00+02:00kalikotag:kaliko.me,2020-05-16:/posts/2020/05/sima-0.16.0.dev0/<p>MPD_sima 0.16.0.dev0 Development Release</p><p>I just released development version of <a href="https://kaliko.me/mpd-sima">MPD_sima</a>. It’s purpose is to test the
major <span class="caps">MPD</span> client refactoring and spot potential regressions.</p>
<p>The package is available on <a href="https://pypi.org/manage/project/MPD-sima/release/0.16.0.dev0/">pypi.org</a>
and as a dev release tagged 0.16.0.dev0 in git:</p>
<div class="highlight"><pre><span></span><code>pip install MPD-sima<span class="o">==</span><span class="m">0</span>.16.0.dev0
<span class="c1"># Or from git</span>
pip install git+https://gitlab.com/kaliko/sima.git@0.16.0.dev0#egg<span class="o">=</span>MPD-sima
</code></pre></div>
<p>Please report issue on gitlab: <a href="https://gitlab.com/kaliko/sima/-/issues">gitlab.com/kaliko/sima/-/issues</a></p>
<p>The refactoring will hopefully make the client catch more artists (looking for
last.fm artists in the local music library). It should also behave better in
album mode. Finally the top track mode is also faster (new cache system
speeding up the loop).</p>
<p>Happy listening<br> k</p>XMPP bot2020-05-03T00:00:00+02:002020-05-04T00:00:00+02:00kalikotag:kaliko.me,2020-05-03:/posts/2020/05/sid/<p>Releasing a python <span class="caps">XMPP</span> bot</p><p><a href="https://kaliko.me/sid">I’ve revived an <span class="caps">XMPP</span> bot</a> forgotten in my git
repo. It was written back in 2010 fork of another xmpp bot (cf. sid/sid.py for
copyrights). The xmpp client is built on top of <a href="https://slixmpp.readthedocs.io/">slixmpp</a> an async xmpp module.</p>
<p>It was originally written for the Debian chat room at <a href="https://chat.jabberfr.org/">jabberfr</a>. It is still
its main purpose but can be extended for whatever suits you.
Check for the code on <a href="https://kaliko.me/sid">the project page</a>.</p>
<p>Current plugins:</p>
<ul>
<li>archive: show <strong>package versions</strong> in Debian archive</li>
<li>bts: deal with the <strong>Debian <a href="https://www.debian.org/Bugs/">bug tracking system</a></strong></li>
<li>echo: a <strong>poste restante</strong> service, leave a message to be re-delivered latter</li>
<li>feeds: monitors <strong>xml feeds</strong></li>
<li>ping: plain <strong>ping</strong></li>
</ul>
<p>The bot is still in development, you’ll need to write some python to configure/run it, it’s pretty simple though:</p>
<div class="highlight"><pre><span></span><code><span class="ch">#!/usr/bin/env python3</span>
<span class="kn">import</span> <span class="nn">getpass</span>
<span class="kn">from</span> <span class="nn">sid.sid</span> <span class="kn">import</span> <span class="n">MUCBot</span>
<span class="kn">from</span> <span class="nn">sid.ping</span> <span class="kn">import</span> <span class="n">Ping</span>
<span class="n">JID</span> <span class="o">=</span> <span class="s1">'bot@example.org'</span>
<span class="n">NICK</span> <span class="o">=</span> <span class="s1">'sid'</span>
<span class="n">PASS</span> <span class="o">=</span> <span class="n">getpass</span><span class="o">.</span><span class="n">getpass</span><span class="p">(</span><span class="s1">'Password for "</span><span class="si">{}</span><span class="s1">": '</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">JID</span><span class="p">))</span>
<span class="n">ROOM</span> <span class="o">=</span> <span class="s1">'room@conf.example.org'</span>
<span class="n">xmpp</span> <span class="o">=</span> <span class="n">MUCBot</span><span class="p">(</span><span class="n">JID</span><span class="p">,</span> <span class="n">PASS</span><span class="p">,</span> <span class="n">ROOM</span><span class="p">,</span> <span class="n">NICK</span><span class="p">)</span>
<span class="n">xmpp</span><span class="o">.</span><span class="n">register_bot_plugin</span><span class="p">(</span><span class="n">Ping</span><span class="p">)</span>
<span class="k">try</span><span class="p">:</span>
<span class="n">xmpp</span><span class="o">.</span><span class="n">connect</span><span class="p">()</span>
<span class="n">xmpp</span><span class="o">.</span><span class="n">process</span><span class="p">()</span>
<span class="k">except</span> <span class="ne">KeyboardInterrupt</span><span class="p">:</span>
<span class="n">xmpp</span><span class="o">.</span><span class="n">shutdown_plugins</span><span class="p">()</span>
<span class="n">xmpp</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Done'</span><span class="p">)</span>
</code></pre></div>
<p>Please refer to <a href="https://kaliko.me/sid">the dedicated page</a> for more. Happy hacking!</p>ncmpc 0.382020-05-02T00:00:00+02:002020-05-02T00:00:00+02:00kalikotag:kaliko.me,2020-05-02:/posts/2020/05/ncmpc-038/<p>ncmpc 0.38 Debian Buster backports</p><p>Packages for ncmpc <a href="https://www.musicpd.org/news/2020/04/ncmpc-0-38-released/">v0.38</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/n/ncmpc/">amd64</a> Buster.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>
<p>The package is built with <a href="https://packages.debian.org/source/buster/libmpdclient">libmpdclient
2.16-1</a>.<br>
<code>partitions</code> management is not yet supported then.</p>Picard 2.3.12020-04-20T00:00:00+02:002020-04-20T00:00:00+02:00kalikotag:kaliko.me,2020-04-20:/posts/2020/04/picard-231/<p>Picard 2.3.1 Buster backports</p><p>Buster backported packages for <a href="https://blog.metabrainz.org/2020/02/27/picard-2-3-1-released/">picard 2.3.1</a> are available for
<a href="https://deb.kaliko.me/debian-backports/pool/main/p/picard/">amd64</a>.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>MPD 0.21.222020-04-13T00:00:00+02:002020-04-13T00:00:00+02:00kalikotag:kaliko.me,2020-04-13:/posts/2020/04/mpd-02122/<p><span class="caps">MPD</span> 0.21.22 Debian|Raspbian Buster backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://www.musicpd.org/news/2020/04/mpd-0-21-22-released/">v0.21.22</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">debian/amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">raspbian/armhf</a> Buster.</p>
<p><a href="https://kaliko.me/posts/2019/10/mpd-slim/">mpd-slim</a> builds are also available.</p>
<p>These packages are built against the current libmpdclient 2.16-1 from official Debian repository.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>ncmpc 0.372020-01-24T00:00:00+01:002020-01-24T00:00:00+01:00kalikotag:kaliko.me,2020-01-24:/posts/2020/01/ncmpc-037/<p>ncmpc 0.37 Debian|Raspbian Buster backports</p><p>Packages for ncmpc <a href="https://www.musicpd.org/news/2020/01/ncmpc-0-37-released/">v0.37</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/n/ncmpc/">amd64</a> Buster.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>
<p>The package is built with <a href="https://packages.debian.org/source/buster/libmpdclient">libmpdclient
2.16-1</a>.<br>
<code>partitions</code> management is not yet supported then.<br>
The <code>modified</code> search filter is available though.</p>MPD 0.21.192020-01-21T00:00:00+01:002020-01-21T00:00:00+01:00kalikotag:kaliko.me,2020-01-21:/posts/2020/01/mpd-02119/<p><span class="caps">MPD</span> 0.21.19 Debian|Raspbian Buster backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://www.musicpd.org/news/2020/01/mpd-0-21-19-released/">v0.21.19</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">armhf</a> Buster.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>MPD_sima 0.15.22020-01-12T00:00:00+01:002020-01-12T00:00:00+01:00kalikotag:kaliko.me,2020-01-12:/posts/2020/01/mpd_sima-0152/<p>MPD_sima 0.15.2 Buster backports</p><p>Packages for <a href="https://gitlab.com/kaliko/sima/blob/d1207a23e5730d0b2a26e711458e6e193aac4dcb/doc/Changelog#L1">mpd-sima 0.15.2</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd-sima/">all</a> Buster.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>
<p>Happy Listening!</p>MPD 0.21.172019-12-19T00:00:00+01:002019-12-19T00:00:00+01:00kalikotag:kaliko.me,2019-12-19:/posts/2019/12/mpd-02117/<p><span class="caps">MPD</span> 0.21.17 Debian|Raspbian Buster backports</p><p>Packages for <span class="caps">MPD</span> <a href="https://www.musicpd.org/news/2019/12/mpd-0-21-17-released/">v0.21.17</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/m/mpd/">amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/m/mpd/">armhf</a> Buster.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>Picard 2.2.32019-11-15T00:00:00+01:002019-11-15T00:00:00+01:00kalikotag:kaliko.me,2019-11-15:/posts/2019/11/picard-223/<p>Picard 2.2.3 Buster backports</p><p>Packages for <a href="https://blog.metabrainz.org/2019/11/06/picard-2-2-3-released/">picard 2.2.3</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/p/picard/">amd64</a> Buster.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>ncmpc 0.362019-11-05T00:00:00+01:002019-11-05T00:00:00+01:00kalikotag:kaliko.me,2019-11-05:/posts/2019/11/ncmpc-036/<p>ncmpc 0.36 Debian|Raspbian Buster backports</p><p>Packages for ncmpc <a href="https://www.musicpd.org/news/2019/11/ncmpc-0-36-released/">v0.36</a> are built for
<a href="https://deb.kaliko.me/debian-backports/pool/main/n/ncmpc/">amd64</a> and
<a href="https://deb.kaliko.me/raspbian-backports/pool/main/n/ncmpc/">armhf</a> Buster.</p>
<p>You can <a href="https://kaliko.me/debian">add <code>deb.kaliko.me</code></a> to your source list to follow future builds.</p>
<p>Or you can simply <code>wget</code> the package and run:</p>
<div class="highlight"><pre><span></span><code>dpkg -i ncmpc_<PKG-VER>_armhf.deb
apt install -f
</code></pre></div>MPD slim build2019-10-24T00:00:00+02:002020-12-10T00:00:00+01:00kalikotag:kaliko.me,2019-10-24:/posts/2019/10/mpd-slim/<p><span class="caps">MPD</span> debian package build for embedded system</p><p>Running <span class="caps">MPD</span> on raspberry I decided to build a lighter version of <span class="caps">MPD</span> rather
than using the vanilla Debian build.</p>
<h2>Build options</h2>
<p>My setup is quite common, a <span class="caps">NAS</span> exposes my music library over the network and a
raspberry runs <span class="caps">MPD</span> with a <a href="https://www.musicpd.org/doc/html/user.html#satellite-setup" title="MPD Satellite setup">satellite setup</a>.</p>
<p>My music library contains only <em>vorbis</em>, <em>mp3</em> and <em>flac</em> files and I’m playing
sound on the raspberry (HiFiBerry Digi+), hence <em>alsa</em>.</p>
<p>Then I only need a subset of decoder plugins and functionalities enabled in the
official Debian package.</p>
<p>Here are the build options used (./debian/rules):</p>
<div class="highlight"><pre><span></span><code><span class="nv">ENABLE_DOCUMENTATION</span><span class="o">=</span>-Ddocumentation<span class="o">=</span>enabled -Dmanpages<span class="o">=</span><span class="nb">true</span> -Dhtml_manual<span class="o">=</span><span class="nb">false</span>
<span class="c"># Client support</span>
<span class="nv">ENABLE_CLIENTS</span><span class="o">=</span>-Dipv6<span class="o">=</span>enabled <span class="se">\</span>
-Dtcp<span class="o">=</span><span class="nb">true</span> <span class="se">\</span>
-Dlocal_socket<span class="o">=</span><span class="nb">true</span>
<span class="nv">ENABLE_NETFS</span><span class="o">=</span>-Dnfs<span class="o">=</span>enabled -Dneighbor<span class="o">=</span><span class="nb">true</span> -Dsmbclient<span class="o">=</span>disabled
<span class="nv">SLIM_OPTIONS</span><span class="o">=</span>--auto-features<span class="o">=</span>disabled <span class="si">${</span><span class="nv">ENABLE_DOCUMENTATION</span><span class="si">}</span> <span class="se">\</span>
<span class="si">${</span><span class="nv">ENABLE_NETFS</span><span class="si">}</span> <span class="se">\</span>
<span class="si">${</span><span class="nv">ENABLE_CLIENTS</span><span class="si">}</span> -Dlibmpdclient<span class="o">=</span>enabled <span class="se">\</span>
-Dflac<span class="o">=</span>enabled -Dopus<span class="o">=</span>enabled -Dmad<span class="o">=</span>enabled <span class="se">\</span>
-Dlibsamplerate<span class="o">=</span>enabled -Dsqlite<span class="o">=</span>enabled -Dsyslog<span class="o">=</span>enabled <span class="se">\</span>
-Dlame<span class="o">=</span>enabled <span class="se">\</span>
-Dpcre<span class="o">=</span>enabled <span class="se">\</span>
-Did3tag<span class="o">=</span>enabled <span class="se">\</span>
-Dhttpd<span class="o">=</span><span class="nb">true</span> -Dpipe<span class="o">=</span><span class="nb">true</span> -Dpulse<span class="o">=</span>enabled <span class="se">\</span>
-Dexpat<span class="o">=</span>enabled <span class="se">\</span>
-Dshout<span class="o">=</span>enabled <span class="se">\</span>
-Dsoxr<span class="o">=</span>enabled <span class="se">\</span>
-Dcurl<span class="o">=</span>enabled
</code></pre></div>
<p>Get the Debian source packages for the details (cf. below).</p>
<h2>Result</h2>
<p>The final binary package is not that much smaller but it links against much
less libraries. The main gain lies then in the installation itself.</p>
<p>I got the numbers from a Debian/buster installation (amd64 arch., no desktop, server minimal).<br>
Once running a regular install <code class="line">apt-get install --assume-no</code> and another with
<code class="line">--no-install-recommends</code> option.</p>
<table>
<thead>
<tr>
<th>apt: w/ recommends</th>
<th>mpd</th>
<th>mpd-slim</th>
</tr>
</thead>
<tbody>
<tr>
<td>nb. packages</td>
<td>179</td>
<td>50</td>
</tr>
<tr>
<td>download size [<span class="caps">MB</span>]</td>
<td>66</td>
<td>15</td>
</tr>
<tr>
<td>install size [<span class="caps">MB</span>]</td>
<td>410</td>
<td>50</td>
</tr>
</tbody>
</table>
<p><br /></p>
<table>
<thead>
<tr>
<th>apt: no recommends</th>
<th>mpd</th>
<th>mpd-slim</th>
</tr>
</thead>
<tbody>
<tr>
<td>nb. packages</td>
<td>143</td>
<td>50</td>
</tr>
<tr>
<td>download size [<span class="caps">MB</span>]</td>
<td>38</td>
<td>15</td>
</tr>
<tr>
<td>install size [<span class="caps">MB</span>]</td>
<td>135</td>
<td>50</td>
</tr>
</tbody>
</table>
<h2>Packages</h2>
<p>Packages, binary and source, are available for Debian/Raspbian stable in my backports repo.<br>
Please refer the <a href="https://kaliko.me/debian">dedicated page</a> to setup your repositories.</p>
<p>Packages might be available directly in the repo itself:</p>
<ul>
<li><a href="https://deb.kaliko.me/debian/pool/main/m/mpd-slim/">deb.kaliko.me/debian/pool/main/m/mpd-slim/</a></li>
<li><a href="https://deb.kaliko.me/raspbian/pool/main/m/mpd-slim/">deb.kaliko.me/raspbian/pool/main/m/mpd-slim/</a></li>
</ul>
<p>Use <code class="line">apt install ./mpd-slim_….deb</code> to install directly from file.</p>
<p>Happy listening!</p>New Raspbian repository2019-10-20T00:00:00+02:002019-10-20T00:00:00+02:00kalikotag:kaliko.me,2019-10-20:/posts/2019/10/new-raspbian-repository/<p>Raspbian apt repository</p><p>Just added a Raspbian apt repository to expose backported build for the <a href="https://www.musicpd.org/">latest <span class="caps">MPD</span> version</a></p>
<h3>Configuration</h3>
<p>Here is a config for your raspberry:</p>
<div class="highlight"><pre><span></span><code><span class="c"># Drop this line in /etc/apt/sources.list.d/deb.kaliko.me.list</span>
<span class="k">deb</span> <span class="s">http://deb.kaliko.me/raspbian-backports/</span> <span class="kp">stable-backports</span> <span class="kp">main</span>
</code></pre></div>
<p>You can then install a recent <span class="caps">MPD</span> running:<br>
<code class="line">apt install mpd/stable-backports</code></p>
<p>Happy listening</p>Moving to pelican2019-10-19T00:00:00+02:002019-10-19T00:00:00+02:00kalikotag:kaliko.me,2019-10-19:/posts/2019/10/moving-to-pelican/<p>Refactored the site to move from Flask+FrozenFlask to Pelican :)</p>