<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>napkins</title><description>Recent Posts</description><pubDate>Sat, 04 Jul 2026 12:24:58 +0200</pubDate><link>https://napkins.mtmn.name/</link><atom:link href="https://napkins.mtmn.name/feed.xml" rel="self" type="application/rss+xml" /><item><title>counterpoint 06/26</title><author>miro@mtmn.name (miro)</author><pubDate>Sat, 04 Jul 2026 12:00:00 +0200</pubDate><guid>https://napkins.mtmn.name/posts/counterpoint-06-26.html</guid><link>https://napkins.mtmn.name/posts/counterpoint-06-26.html</link><description>&lt;p&gt;Salutations!&lt;/p&gt;&lt;p&gt;We have been doing a bi-monthly residence with Filip at &lt;a href=&quot;https://infameradio.com/&quot;&gt;Infame Radio&lt;/a&gt; and last month's show is up in the clouds!&lt;/p&gt;&lt;p&gt;Yours truly for the first hour with an eclectic thinky-dancey tracks and Filip for the second hour with club heaters, go get some!&lt;/p&gt;&lt;iframe width=&quot;100%&quot; src=&quot;https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/soundcloud%253Atracks%253A2342116910&amp;amp;color=%237a9a34&amp;amp;auto_play=false&amp;amp;hide_related=false&amp;amp;show_comments=true&amp;amp;show_user=true&amp;amp;show_reposts=false&amp;amp;show_teaser=true&amp;amp;visual=true&quot; scrolling=&quot;no&quot; height=&quot;300&quot; frameborder=&quot;no&quot; allow=&quot;autoplay; encrypted-media&quot;&gt;&lt;/iframe&gt;&lt;h2&gt;Tracklist&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Geins’t Nait + LØ + Scanner - Callas&lt;/li&gt;
&lt;li&gt;Anastasia Kristensen - Magpie Song&lt;/li&gt;
&lt;li&gt;tibslc - You Just Want&lt;/li&gt;
&lt;li&gt;Evitceles - Sink&lt;/li&gt;
&lt;li&gt;Mike Cooper - Red Jungle Fowl&lt;/li&gt;
&lt;li&gt;Inweys - B&lt;/li&gt;
&lt;li&gt;Ostseetraum - Ende&lt;/li&gt;
&lt;li&gt;rikardfvs - Adho Mukha Svanasana&lt;/li&gt;
&lt;li&gt;Aquadab &amp;amp; MC A - Shape Decorated Screen&lt;/li&gt;
&lt;li&gt;Torn - Stay&lt;/li&gt;
&lt;li&gt;dadan karambolo - Downpour&lt;/li&gt;
&lt;li&gt;Commodo - Deep Harbour&lt;/li&gt;
&lt;li&gt;Andy Martin - Afrofuturism&lt;/li&gt;
&lt;li&gt;Panda Lassow - Potencia De Kuduairo&lt;/li&gt;
&lt;li&gt;Volruptus - Tapetum Lucidum&lt;/li&gt;
&lt;li&gt;natsumi hirota - Epilogue&lt;/li&gt;
&lt;li&gt;Phran - Un Poquito&lt;/li&gt;
&lt;li&gt;KADAPAT, Nova Ruth, Siko Setyanto - Tedun&lt;/li&gt;
&lt;li&gt;Paperclip Minimiser - TT A1&lt;/li&gt;
&lt;li&gt;Praga Express - Till Next Time&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>how a stray &quot;j&quot; ruined my evening</title><author>miro@mtmn.name (miro)</author><pubDate>Mon, 08 Jun 2026 00:00:00 +0200</pubDate><guid>https://napkins.mtmn.name/posts/stray-jay.html</guid><link>https://napkins.mtmn.name/posts/stray-jay.html</link><description>&lt;p&gt;Some time ago I decided to wrangle a silly link shortener that I called shirts linkener, shirts for short.&lt;/p&gt;&lt;p&gt;There's nothing special about it in particular, rather it's in my &lt;code&gt;run-once-forget-forever&lt;/code&gt; shell script that copies the generated links to a clipboard using &lt;code&gt;wl-clipboard&lt;/code&gt;.&lt;/p&gt;&lt;pre&gt;&lt;code class=&quot;language-sh&quot;&gt;#!/bin/sh

shirt=$(curl -s -X POST &amp;quot;$(pass show shirts/url)&amp;quot; \
    -H &amp;quot;Authorization: Bearer $(pass show shirts)&amp;quot; \
    -H &amp;quot;Content-Type: application/json&amp;quot; \
    -d &amp;quot;{\&amp;quot;url\&amp;quot;: \&amp;quot;${1?missing url}\&amp;quot;}&amp;quot;)

echo &amp;quot;$shirt&amp;quot; | jq
echo &amp;quot;$shirt&amp;quot; | jq -r '.short_url' | wl-copy&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Nothing out of the ordinary here. It shortens the link and copies it to a clipboard. By then I have been hapilly using it for couple of months without an issue.&lt;/p&gt;&lt;p&gt;The fun began when I decided to try out &lt;code&gt;gurk&lt;/code&gt;, a Signal TUI written in Rust. Those who know me, know my obsession with terminal interfaces so this was an obvious match.&lt;/p&gt;&lt;p&gt;One evening I was sharing a link to an image hosted on S3 when I noticed people were saying it shows 404 to them.&lt;/p&gt;&lt;p&gt;After pasting the link into Firefox, it worked. What is going on? I send them the link and it works now...&lt;/p&gt;&lt;p&gt;Time passes and I get the same responses from multiple friends - 404. After some time looking at the messages I notice a pattern - each url ends with &amp;quot;j&amp;quot;.&lt;/p&gt;&lt;p&gt;Turns out I was copying the link with a &lt;code&gt;\n&lt;/code&gt; at the end, which in most cases went unnoticed, but in ANSI newline delimiter is translated as &amp;quot;j&amp;quot;, hence the stray jay at the end of each link.&lt;/p&gt;&lt;p&gt;After having a solid five minutes of immense shame I found that &lt;code&gt;jq&lt;/code&gt; has &lt;code&gt;--join-output&lt;/code&gt; argument, which prevents exactly my case:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;     --join-output / -j:

            Like -r but jq won't print a newline after each output.&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Moral of this story is that terminals are fun and shooting myself in the foot repeatedly acts as a great learning opportunity.&lt;/p&gt;&lt;p&gt;Some of the sources around control codes and escape sequences.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;https://gist.github.com/fnky/458719343aabd01cfb17a3a4f7296797&quot;&gt;https://gist.github.com/fnky/458719343aabd01cfb17a3a4f7296797&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://cirw.in/blog/bracketed-paste&quot;&gt;https://cirw.in/blog/bracketed-paste&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://jdhao.github.io/2021/02/01/bracketed_paste_mode&quot;&gt;https://jdhao.github.io/2021/02/01/bracketed_paste_mode&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;m.&lt;/p&gt;</description></item><item><title>moments eluding 04/26</title><author>miro@mtmn.name (miro)</author><pubDate>Sat, 25 Apr 2026 00:00:00 +0200</pubDate><guid>https://napkins.mtmn.name/posts/moments-eluding-04-26.html</guid><link>https://napkins.mtmn.name/posts/moments-eluding-04-26.html</link><description>&lt;p&gt;This one was fun to record.&lt;/p&gt;&lt;p&gt;Originally I wanted to play more club-friendly music in the second half, but &lt;code&gt;Iceman Junglist Kru&lt;/code&gt; turned up being a drone mixtape, not actual jungle.&lt;/p&gt;&lt;p&gt;Maybe next month?&lt;/p&gt;&lt;iframe src=&quot;https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/soundcloud%253Atracks%253A2307634412&amp;amp;color=%23585c5c&amp;amp;auto_play=false&amp;amp;hide_related=false&amp;amp;show_comments=true&amp;amp;show_user=true&amp;amp;show_reposts=false&amp;amp;show_teaser=true&amp;amp;visual=true&quot; frameborder=&quot;0&quot; class=&quot;embed-soundcloud&quot; allow=&quot;autoplay&quot;&gt;&lt;/iframe&gt;&lt;h2&gt;Tracklist&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Echium - Glacial Rust&lt;/li&gt;
&lt;li&gt;VHS MIDNIGHT STYLE - set for life&lt;/li&gt;
&lt;li&gt;Isabassi - Gracha Razz&lt;/li&gt;
&lt;li&gt;Nova Varnrable - Split (Sister Marion Dub)&lt;/li&gt;
&lt;li&gt;matryoshka - Surface Tension&lt;/li&gt;
&lt;li&gt;Misha Sultan &amp;amp; Purpurniy Dyadya - Babushka&lt;/li&gt;
&lt;li&gt;Cloud Management, Vivien Goldman - Whoops Wrong Planet&lt;/li&gt;
&lt;li&gt;Iceman Junglist Kru - Cold War Surveillance State 2-Step&lt;/li&gt;
&lt;li&gt;Behnam Manahedji - Shushtari&lt;/li&gt;
&lt;li&gt;Zbigniew Preisner - Effroyables Jardins (3 version piano)&lt;/li&gt;
&lt;li&gt;Yin Sno - Violência&lt;/li&gt;
&lt;li&gt;Kaazi - Light Drops On Violet Leaves&lt;/li&gt;
&lt;li&gt;Mineral Stunting - Destiny Melts Like Ice Under a Warm Sun&lt;/li&gt;
&lt;li&gt;Mathilde Nobel - WIDE AWAKE OPEN&lt;/li&gt;
&lt;li&gt;A Ras - O&lt;/li&gt;
&lt;li&gt;DJ Python - Acostados&lt;/li&gt;
&lt;li&gt;Black Zone Myth Chant - Their Love for You&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>