<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>hi, it&#39;s mike</title>
    <link>https://mike.puddingtime.org/tags/kitty/</link>
    <description>Recent content on hi, it&#39;s mike</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <managingEditor>mike@puddingtime.org (mike)</managingEditor>
    <webMaster>mike@puddingtime.org (mike)</webMaster>
    <copyright>© 2026, mike</copyright>
    <lastBuildDate>Mon, 22 Jan 2024 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://mike.puddingtime.org/tags/kitty/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Daily Notes for 2024-01-22</title>
      <link>https://mike.puddingtime.org/posts/2024-01-22-daily-notes/</link>
      <pubDate>Mon, 22 Jan 2024 00:00:00 +0000</pubDate><author>mike@puddingtime.org (mike)</author>
      <guid>https://mike.puddingtime.org/posts/2024-01-22-daily-notes/</guid>
      <description>FreshRSS seems close enough to feedly. Kitty on the Synology. E-readers vs. tablets.</description>
      <content:encoded><![CDATA[<h2 id="freshrss-on-the-synology">FreshRSS on the Synology</h2>
<p>I can make do with just about any RSS service provided it:</p>
<ul>
<li>Has a clean web UI</li>
<li>Allows third-party clients (e.g. Reeder, Unread)</li>
<li>Has some sort of provisioning for filtering.</li>
</ul>
<p>There are plenty that do the first two. That last requirement is a little harder, and it&rsquo;s why I&rsquo;ve largely stuck with Feedly despite a small break, when their management team demonstrated some bad ideas they eventually walked back.</p>
<p>But I&rsquo;ve been on this self-hosting kick, and I learned about <a href="https://freshrss.org/index.html">FreshRSS</a> while I was poking around with PikaPods, so after a quick OPML export of my Feedly list and a little experimentation I&rsquo;ve moved FreshRSS into the Synology:</p>
<ul>
<li>Clean web UI with keyboard shortcuts</li>
<li>Extensions framework</li>
<li>Sharing configuration</li>
<li>Works with <a href="https://reederapp.com/">Reeder</a></li>
</ul>
<p>The filtering works a couple of ways:</p>
<p>You can set up a &ldquo;mark as read&rdquo; filter with a simple syntax that includes operators like <kbd>inurl</kbd>, <kbd>intitle</kbd>, and <kbd>keyword</kbd>. That will handle new articles as they come in. That&rsquo;s the best option if you&rsquo;re using a client.</p>
<p>You can also use those operators in the web UI&rsquo;s search field then save them and apply them to current articles just to clean up the view. That&rsquo;s okay for cleaning up your current view before your filters start working on new stuff, or if you want to be able to create a one-click way to narrow a feed.</p>
<p>And your saved queries can also be referenced with the <kbd>search:QUERYNAME</kbd> operator, so if you model one out and like it you can make it more proactive.</p>
<p>You can guess what I don&rsquo;t care to read about from <em>The Oregonian</em> based on my initial list:</p>






<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">inurl:/advice/
</span></span><span class="line"><span class="cl">inurl:/ducks/
</span></span><span class="line"><span class="cl">inurl:/betting/
</span></span><span class="line"><span class="cl">inurl:/nfl/
</span></span><span class="line"><span class="cl">inurl:/beavers/</span></span></code></pre></div>
<p>Give it time and it will grow. I&rsquo;ve only been using FreshRSS for a couple of days, so I haven&rsquo;t had time to be
exposed to everything, like the many, many, many articles that landed in the <kbd>/casino/</kbd> section between starting this draft over breakfast and coming back to wind things down after dinner, making wish The O would do like other newspapers do and segment its RSS feeds at least into the major sections.</p>
<p>As it is, they don&rsquo;t do that, <em>and</em> have a wildly flat and very granular IA, so you can&rsquo;t just filter out <kbd>inurl:/sports/</kbd> in one go, but at least they have reliable category URLs. At some point I will have to do the work of filtering out deal posts from all the tech sites, who are not at all incentivized to make it easier to avoid their affiliate link farming. Feedly has some sort of &ldquo;AI&rdquo; that creates meta-categories to filter on, so I could just tell it &ldquo;no deal posts&rdquo; and clean up a few edge cases.</p>
<p>I did look at a few others. <a href="https://tt-rss.org/">TinyTinyRSS</a> was a prime candidate, and even has a native Synology package. Performance wasn&rsquo;t great, though. A few others had no filtering.</p>
<h2 id="kitty-and-the-synology">Kitty and the Synology</h2>
<p>Also on the topic of the Synology, if anyone has gotten kitty&rsquo;s advanced features working with one I would love a guide or insight into how. The environment is just a tad too locked down and non-standard, and a recent skim down a GitHub issue suggested that there&rsquo;s not a lot of hope on that front. You can get as far as the Syno understanding that there&rsquo;s such a <kbd>$TERM</kbd> as <kbd>xterm-kitty</kbd>, but the stuff like <kbd>kitten ssh</kbd> has been a lost cause. Or rather, I <del>am</del> was running out of patience with it because there&rsquo;s a lot of magic on the happy path and then it gets pretty manual if you have to go off-road, and this is a Linux-based appliance we are trying to get this thing wedged onto, not some plain old box.</p>
<p>I changed that to <em>was</em> because I found <a href="https://github.com/kovidgoyal/kitty/issues/713">this thread</a> and it helped me figure out the small step I needed to take to get kitty working with my root account on the Syno.</p>
<p>And what a thread. It ends with the maintainer saying:</p>
<blockquote>
<p>In any case, as I have explained before, if you want to perpetually
stagnate the terminal ecosystem by insisting every terminal be xterm
(the biggest boat anchor on the entire ecosystem), please just use
xterm. kitty is not for you.</p>
</blockquote>
<p>I kinda get where he&rsquo;s coming from by the time the whole thing is over: Open source project owners are all over the map in terms of their approach to community interactions and management. Just yesterday I saw one who pleaded with a user who&rsquo;d decided to just go use another app to share some sort of exit feedback. People in <em>this</em> thread were doing the whole &ldquo;if this isn&rsquo;t addressed I will try something else&rdquo; thing that I imagine gets pretty grating if you&rsquo;re just some person making a thing and giving it away and are over whatever things in the ecosystem you are over. Like, there are a lot of projects devoted to strict compliance with What Has Come Before, and I don&rsquo;t think the *nix world has any shortage of adherence to What Has Come Before.</p>
<p>Anyhow, I usually don&rsquo;t do anything particularly complex over on the Syno, but I was having issues with tab completion, backspace, and command history going screwy whenever I was operating as root so it seemed worth fixing to just keep using kitty and not remember to use another terminal app for this particular hobby.</p>
<h2 id="e-readers-vs-dot-tablets">E-readers vs. Tablets</h2>
<p><a href="https://sixcolors.com/post/2024/01/two-e-readers-that-made-me-reconsider-why-i-use-e-readers/">Jason Snell on eink e-readers vs. tablets</a>.</p>
<p>I&rsquo;ve been through the &ldquo;maybe I want to just consolidate down into an iPad mini&rdquo; thing with my assorted e-ink devices, and I always come back to &ldquo;the reading experience is worse on a tablet.&rdquo; I&rsquo;ve been back and forth on which ecosystem, too, and will stick with Kobo, less as a features thing and more as a &ldquo;it&rsquo;s hard to be rid of Amazon but I can at least be less into Amazon&rdquo; thing.</p>
<p>The not-Nook/Kobo/Amazon space is interesting. I don&rsquo;t know if I am up to being that much of a resister to Big Ebook. I have a little Onyx Boox Palma and super wanted to like it, but it&rsquo;s just an e-ink Android tablet about the size of a &ldquo;Max&rdquo;-sized iPhone, and the e-ink/Android app experience with Kobo wasn&rsquo;t very good. There are other reading apps for it, but I don&rsquo;t know how location sync works in that ecosystem. Now that I have calibre-web set up I could get my books into anything, but I&rsquo;m being way too much of a perfectionist on questions like &ldquo;but what if I leave my e-reader behind and just want to use my phone for the train ride downtown&rdquo; or whatever.</p>
<p>On the flipside, there are some very good e-reader apps for Android that can talk to calibre-web in <a href="https://en.wikipedia.org/wiki/Open_Publication_Distribution_System">OPDS mode</a>. You don&rsquo;t get the location sync stuff &ndash; it&rsquo;s just a way to browse and retrieve your books &ndash; but if you can upload an epub to calibre-web it can come back down to a bunch of these apps, some of which do have for-pay location sync backends as an app feature.</p>
<p>Kinda academic right now: I have a nice and relatively new Kobo, I have a slightly more worn out but functional old Kobo, and I have them talking to my calibre-web install plus access to the Kobo store, Overdrive, and my Pocket articles. I don&rsquo;t need to go out and buy another e-reader just to be a little more indy.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Daily notes for 2023-12-29</title>
      <link>https://mike.puddingtime.org/posts/2023-12-29-daily-notes/</link>
      <pubDate>Fri, 29 Dec 2023 15:08:36 -0800</pubDate><author>mike@puddingtime.org (mike)</author>
      <guid>https://mike.puddingtime.org/posts/2023-12-29-daily-notes/</guid>
      <description>kitty and denote. Terminal maximalism? A few fun CLI app directories. Autojump for better CLI fs navigation. More Vampire Survivors.</description>
      <content:encoded><![CDATA[<h2 id="vampire-survivors-again">Vampire Survivors, again</h2>
<p>I used to play this tower defense game on the Mac called <em>Hordes of Orcs.</em>  Orcs would enter a maze, you&rsquo;d build towers of all kinds to murder them. After playing for a while, I came to pick out a certain aural signature. As you built more and more elaborate orc-murdering capabilities, you could begin to hear a rhythm emerge &ndash; the sound of a tower spraying hot death, the sounds the orcs made. It was not a rhythm game, but it invoked a similar feeling.  I came to think of a session of HoO as &ldquo;firing up the murder factory.&rdquo;</p>
<p>Well, Vampire Survivors sort of does that, too. I didn&rsquo;t really notice until I turned the music off, but as a level progresses and gets more intense and your character is surrounded by a number of orbiting weapons (boomerang axes, a lethal garlic aura, puddles of holy water dropping from the sky, two orbiting birds that rain death, etc.) you can hear the rhythm of all those things interacting.</p>
<p>It also occurred to me that Vampire Survivors reminds me a lot of <em><a href="https://en.wikipedia.org/wiki/Robotron%3A_2084">Robotron: 2084</a></em>.</p>
<p>Anyhow, it&rsquo;s an awful lot of fun for such a simple game.</p>
<h2 id="kitty-and-denote">kitty and denote</h2>
<p>Okay.</p>
<ol>
<li>Emacs as a systemd service? <a href="/posts/2023-12-25-daily-notes/">Check</a>.</li>
<li>Launching useful stuff in kitty? <a href="/posts/2023-12-27-daily-notes/">Check</a>.</li>
<li>Making a quick Denote note in kitty &hellip; ?</li>
</ol>
<p>Sure.</p>
<p>Make an org capture template like this:</p>






<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-lisp" data-lang="lisp"><span class="line"><span class="cl"><span class="p">(</span><span class="nv">with-eval-after-load</span> <span class="ss">&#39;org-capture</span>
</span></span><span class="line"><span class="cl">  <span class="p">(</span><span class="nv">add-to-list</span> <span class="ss">&#39;org-capture-templates</span>
</span></span><span class="line"><span class="cl">               <span class="o">&#39;</span><span class="p">(</span><span class="s">&#34;n&#34;</span> <span class="s">&#34;New note (with Denote)&#34;</span> <span class="nv">plain</span>
</span></span><span class="line"><span class="cl">                 <span class="p">(</span><span class="nv">file</span> <span class="nv">denote-last-path</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">                 <span class="nf">#&#39;</span><span class="nv">denote-org-capture</span>
</span></span><span class="line"><span class="cl">                 <span class="ss">:no-save</span> <span class="no">t</span>
</span></span><span class="line"><span class="cl">                 <span class="ss">:immediate-finish</span> <span class="no">nil</span>
</span></span><span class="line"><span class="cl">                 <span class="ss">:kill-buffer</span> <span class="no">t</span>
</span></span><span class="line"><span class="cl">                 <span class="ss">:jump-to-captured</span> <span class="no">t</span><span class="p">)))</span></span></span></code></pre></div>
<p>&hellip; then add this to <code>kitty.conf</code>:</p>
<p><code>map kitty_mod+d launch emacsclient -t &quot;org-protocol:///capture?template=n&quot;</code></p>
<p>That launches an emacsclient instance in a new kitty window teed up to enter the title and tags for a denote note.</p>
<p>There&rsquo;s another way to do this, using kitty&rsquo;s startup sessions capabilities.</p>
<p>You can make a session file with something like this in your config directory:</p>






<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">launch emacsclient -t &#34;org-protocol:///capture?template=n&#34;
</span></span><span class="line"><span class="cl">focus_os_window`</span></span></code></pre></div>
<p>&hellip; name it something like <code>denote.conf</code></p>
<p>&hellip; and launch it with <code>kitty --session denote.conf</code>.</p>
<p>Which isn&rsquo;t really what you want to do. You really want to use that for a custom keybinding out in your window manager.</p>
<h2 id="terminal-maximalism">terminal maximalism?</h2>
<p>Seeing my agenda for the day in a terminal &hellip; getting my upcoming todos in a terminal &hellip; denote notes in a terminal &hellip;</p>
<p>Is this all some sort of terminal maximalism thing?</p>
<p>Maybe, I guess?</p>
<p>I don&rsquo;t know about the rest of the world, but I go through moods with this stuff. Some days I feel supremely unfussed about the assorted UIs imposed on us by web app designers. Some days I feel very resistant to messing around with a browser or mouse. It&rsquo;s nice to sit down to a text editor in a terminal, start writing, and be able to quickly orient on where I&rsquo;m at in the day with a glance at my agenda or the day&rsquo;s todos. There are some days I don&rsquo;t feel put upon doing that in a browser window.</p>
<p>Looking at <a href="https://github.com/xwmx/nb">nb</a> is what got me thinking about doing more in a text shell, but I couldn&rsquo;t figure out a good way to solve for the mobile use case and I didn&rsquo;t want to live in it as my task manager. Sometimes it is handy to be able to manage or just review todos with a GUI. Its notes tool is fine, but I spent a lot of time setting up Denote and really appreciate it, plus I have a way to review my Denote notes via the web and create them on the go with Drafts.</p>
<p>And when I think about my little 11&quot; MacBook Air, that&rsquo;s a machine that would benefit from not having a lot of GUI clutter and not having a lot of open apps. It&rsquo;s a great candidate for spending more time in a terminal.</p>
<p>So &hellip; less terminal maximalism and more terminal optionality. For days when pointy-clicky feels really burdensome.</p>
<p>Anyhow, I did find a few good collections of CLI app links:</p>
<ul>
<li><a href="https://github.com/agarrharr/awesome-cli-apps">awesome-cli-apps</a></li>
<li><a href="https://github.com/alebcay/awesome-shell">awesome-shell</a></li>
</ul>
<p>I think my favorite discovery from both of them at this point is probably <a href="https://github.com/alebcay/awesome-shell#readme">autojump</a>, which watches where you visit and lets you go there from anywhere else, rather than having to descend and ascend a directory hierarchy. If you want to give it a try, the documentation is missing one key thing, at least if you pull it down from Fedora: You need to source a file it sticks in <code>/usr/share/autojump</code> in your shell&rsquo;s <code>.rc</code> file. The core package in Fedora supplies that file for bash, and you have to install the <code>autojump-zsh</code> package to get it for zsh.</p>
<h2 id="the-working-world">the working world</h2>
<p>Today I feel very annoyed with what I have come to think of as &ldquo;Businessing,&rdquo; which is to say &ldquo;all the things people do in the course of working in a business, but especially the ones that involve things nobody will say and rules nobody will articulate.&rdquo;</p>
<p>I don&rsquo;t think I have much more to say about it than that, so consider this me quietly whispering discontent into a hole in the side of a stump in the middle of an empty field under a new moon at midnight.</p>
<p>Okay. I have a little more to say.</p>
<p>Years and years ago I read Paul Fussel&rsquo;s <em><a href="https://www.goodreads.com/book/show/60044.Class">Class</a></em>. I was at something of a personal low point: Recently out of the army, a very different person on the other side of the experience, and feeling exiled in a small southern university town. <em>Class</em> gave me a lens for observing other people that my feelings of unbelonging and insecurity hadn&rsquo;t ever allowed through. It&rsquo;s a light, biting book that would pair nicely with Barbara Ehreneich&rsquo;s <em><a href="https://www.goodreads.com/book/show/24457.Fear_of_Falling">Fear of Falling</a></em>.</p>
<p>Once I saw the thing <em>Class</em> calls out when it&rsquo;s at its most empathetic &ndash; the constant and pervasive atmosphere of insecurity middle class people occupy and perpetuate &ndash; it made some things about work a little easier.  But just a little.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Daily notes for 2023-12-27</title>
      <link>https://mike.puddingtime.org/posts/2023-12-27-daily-notes/</link>
      <pubDate>Wed, 27 Dec 2023 17:13:08 -0800</pubDate><author>mike@puddingtime.org (mike)</author>
      <guid>https://mike.puddingtime.org/posts/2023-12-27-daily-notes/</guid>
      <description>Todos and agenda with kitty. Better Zoom audio. Roy Clark, guitar god.</description>
      <content:encoded><![CDATA[<h2 id="todos-and-agenda-with-kitty">Todos and agenda with kitty</h2>
<p>I&rsquo;ve been using Todoist to stick stuff that I have to keep track of in a list: It&rsquo;s got a decent web interface, you can do a card view, and it has clients for pretty much everything. It could be any of several online todo apps. I don&rsquo;t care. I don&rsquo;t love it, I am not passionate about it, it&rsquo;s just there and it makes lists which means my preference for hand-written meeting notes doesn&rsquo;t have to get in the way of keeping track of tasks.</p>
<p>I was happy to learn about <a href="https://github.com/alanvardy/tod">this Rust-based CLI tool for Todoist called &ldquo;tod&rdquo;</a>, which makes it easy to pull lists of todos, process todos, etc. all from the command line. I don&rsquo;t mean to use it to process things, but I was looking for a way to print a list of today&rsquo;s todos, and it can do that.</p>
<p>I was also happy to learn about <a href="https://github.com/insanum/gcalcli">gcalcli</a>, which can pull your Google Calendar down from the command line, as well.</p>
<p>I made a couple of launch actions in kitty:</p>






<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">map kitty_mod+a launch --hold ruby ~/bin/agenda.rb
</span></span><span class="line"><span class="cl">map kitty_mod+o launch --hold tod task list -f today</span></span></code></pre></div>
<p>The ruby script in the first line is a wrapper around gcalcli because its agenda command takes a couple of ISO-8601 dates, and I got tired of trying to escape <code>date</code> and all its arguments in a config file.</p>
<p>So, <code>mod+a</code> to list today&rsquo;s agenda in a kitty window, and <code>mod+o</code> to list my todos for the day.</p>
<p><img src="https://photos.smugmug.com/photos/i-72SnqMW/0/XL/i-72SnqMW-XL.png" alt="A kitty terminal showing a text todo list and calendar agenda."></p>
<h2 id="better-zoom-audio">Better Zoom audio</h2>
<p>I have wanted to get rid of my Jabra headset because I look like a telemarketer in it. I had a few offers of loaned gear, neither of which I&rsquo;d gotten around to collecting before I went digging around in the photography parts bin thinking I had, at some point in the past few years, bought a mic and maybe it&rsquo;d do the trick. Sure enough, I found a RØDE VideoMic sitting at the bottom of the box. I bought it for a holiday project and never thought of it as a way to improve teleconferencing until Luke said &ldquo;USB shotgun mic&rdquo; as a possible solution.</p>
<p>I mounted it in the hot shoe of the Fujifilm X-T2 I use for Zoom video and plugged into my Linux desktop. It showed up as a source for Zoom, and that was about all there was to it. I did a few tests to make sure the positioning would work, then a few A/B tests with my Jabra headset to see how much of a change there&rsquo;d be. There&rsquo;s definitely a little less presence, but it&rsquo;s not that much worse, I&rsquo;m free of the headset, and the sound is much better than the mics that come on laptops. It seems to have an app for configuring some soft options if you plug it into a Mac or iPhone.</p>
<p>I&rsquo;m using a pair of powered bookshelf speakers as &ldquo;studio monitors&rdquo; right now. They&rsquo;re a little undefined and boomy with <em>other</em> peoples&rsquo; dinky laptop mics, so I&rsquo;m not sure what to do there. A little preliminary fiddling with <a href="https://github.com/wwmm/easyeffects">Easy Effects</a> suggests I can probably squeeze something out in software.</p>
<p>But even in this sorta primitive state, I really like where I&rsquo;m at: I can just sit down at my desk, start the call, and not have a thing stuck on my head, Bluetooth to worry about, etc. etc. The CamLink 4K/Fujifilm combo has been very consistent, and the 23mm/f2 &ldquo;Fujicron&rdquo; has been a great lens for this application. It crops tight enough to seem more intimate than the average super-wide web cam, but not so tight that I&rsquo;m a giant looming head or unable to shift between &ldquo;attentive and upright&rdquo; and &ldquo;listening but not hanging on every word.&rdquo;</p>
<p>I need to improve my lighting situation a little. I have a Lume Cube Panel Mini but need to get a reliable power source and mount for it so I can quit using the overhead light in my office when the light coming in through the window gets too low: It makes the lens hunt unless I stop it down (and up goes the ISO) and the light coming off the monitor gives everything a super cold cast.</p>
<h2 id="roy-clark-guitar-god">Roy Clark, Guitar God</h2>
<p>My family watched <em>Hee Haw</em> growing up, and Roy Clark was always just the one who smiled a lot to me. I think I liked Buck Owens better for reasons lost to me. We also watched <em>The Odd Couple</em>, so here&rsquo;s a crossing of the streams.</p>
<iframe width="560" height="315" src="https://www.youtube.com/embed/-xssnp7R51A?si=-dYliXADqDnrX_i8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
]]></content:encoded>
    </item>
    <item>
      <title>Daily notes for 2023-12-26</title>
      <link>https://mike.puddingtime.org/posts/2023-12-26-daily-notes/</link>
      <pubDate>Tue, 26 Dec 2023 21:17:33 -0800</pubDate><author>mike@puddingtime.org (mike)</author>
      <guid>https://mike.puddingtime.org/posts/2023-12-26-daily-notes/</guid>
      <description>Detroit: Become Human. Linux config cloning with Mackup. Machine-specific configs with kitty. Making kitty your default GNOME terminal (sort of).</description>
      <content:encoded><![CDATA[<h2 id="detroit-become-human">Detroit: Become Human</h2>
<p>&hellip; was on sale on Steam. Ben recommended it, so <a href="https://www.quanticdream.com/en/detroit-become-human">that&rsquo;s</a> the new game for the Steamdeck this week. So far &hellip; you know &hellip; there&rsquo;s a little <em>Blade Runner</em>, there&rsquo;s a little <em>Minority Report</em>, there&rsquo;s a little <em>AI</em>. It moves at a pace that works for me, with a few things that require some timing, but mostly just making decisions and dealing with the outcomes.</p>
<h2 id="config-cloning-with-mackup-again">Config cloning with Mackup (again)</h2>
<p>A while back <a href="/posts/2023-03-20-daily-notes-for-2023-03-20/#mackup">I learned about Mackup</a>, which uses whatever you&rsquo;ve got in the way of a syncing filesystem to sync config files between systems. It has a library of hundreds of apps from Mac and Linux that it understands out of the box: You can either let it sync everything it can find, give it an allow list, or give it a disallow list. By default it expects to use Dropbox, but I took a little time to set it up in syncthing this evening.</p>
<p>At the moment I&rsquo;m using it for zsh, kitty, git, ssh, and the GitHub CLI tool, which led me to figure out &hellip;</p>
<h2 id="machine-specific-configs-with-kitty">Machine-specific configs with kitty</h2>
<p>As I play with <a href="https://sw.kovidgoyal.net/kitty/">kitty</a> more I&rsquo;ve been bumping into the display differences between all my different machines. That makes finding a consistent font size a little annoying. I learned that kitty can take environment variables in its config, so for machine-specific stuff I can do something like:</p>






<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">include ${HOSTNAME}.conf</span></span></code></pre></div>
<p>&hellip; then in <code>foo.conf</code> put machine-specific settings:</p>






<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">font_size 18</span></span></code></pre></div>
<h2 id="making-kitty-your-default-gnome-terminal-sort-of">Making kitty your default GNOME terminal (sort of)</h2>
<p><a href="https://github.com/hrdkmishra/changetoKitty/blob/main/changetoKitty.sh">This shell script</a> just concedes to my muscle memory: When I invoke the GNOME launcher and type &ldquo;terminal&rdquo; before I can stop myself, this just makes sure kitty is the thing launching.</p>
<h2 id="my-linux-life">My Linux life</h2>
<p>I think it has been over a week since I last switched over to the Mac Studio. It&rsquo;s just sitting there. I copied my photo library over to a drive attached to the Linux desktop, but haven&rsquo;t taken the time to start playing with darktable in earnest.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Daily notes for 2023-12-25</title>
      <link>https://mike.puddingtime.org/posts/2023-12-25-daily-notes/</link>
      <pubDate>Mon, 25 Dec 2023 13:06:19 -0800</pubDate><author>mike@puddingtime.org (mike)</author>
      <guid>https://mike.puddingtime.org/posts/2023-12-25-daily-notes/</guid>
      <description>Kitty (and GNOME generally) with the Monaspace fonts. My first game of Cards Against Humanity. Emacs as a systemd service.</description>
      <content:encoded><![CDATA[<h2 id="kitty-and-gnome-generally-with-the-monaspace-fonts">Kitty (and GNOME generally) with the Monaspace fonts.</h2>
<p>You can tell it was a long weekend because I was experimenting with alternative terminal emulators, starting with <a href="https://sw.kovidgoyal.net/kitty/">kitty</a> because &hellip; I saw someone mention it? I don&rsquo;t remember why, but here we are.</p>
<p>In the process of configuring it I came across something I&rsquo;d just pushed to the background, which was that none of the terminal apps I was using were picking up on the <a href="https://monaspace.githubnext.com/">Monaspace fonts</a> as legit candidates. So I decided to run it down and learned that the font system doesn&rsquo;t see those fonts as actually monospaced.</p>
<p>Here&rsquo;s an incantation you can stick in <code>~/.config/fontconfig/conf.d/20-monaspace.conf</code>, then run <code>fc-cache -f</code>.</p>






<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-xml" data-lang="xml"><span class="line"><span class="cl"><span class="cp">&lt;?xml version=&#34;1.0&#34;?&gt;</span>
</span></span><span class="line"><span class="cl"><span class="cp">&lt;!DOCTYPE fontconfig SYSTEM &#34;fonts.dtd&#34;&gt;</span>
</span></span><span class="line"><span class="cl"><span class="nt">&lt;fontconfig&gt;</span>
</span></span><span class="line"><span class="cl">    <span class="nt">&lt;match</span> <span class="na">target=</span><span class="s">&#34;scan&#34;</span><span class="nt">&gt;</span>
</span></span><span class="line"><span class="cl">        <span class="nt">&lt;test</span> <span class="na">name=</span><span class="s">&#34;family&#34;</span> <span class="na">compare=</span><span class="s">&#34;contains&#34;</span><span class="nt">&gt;</span>
</span></span><span class="line"><span class="cl">            <span class="nt">&lt;string&gt;</span>Monaspace<span class="nt">&lt;/string&gt;</span>
</span></span><span class="line"><span class="cl">        <span class="nt">&lt;/test&gt;</span>
</span></span><span class="line"><span class="cl">        <span class="nt">&lt;edit</span> <span class="na">name=</span><span class="s">&#34;spacing&#34;</span><span class="nt">&gt;</span>
</span></span><span class="line"><span class="cl">            <span class="nt">&lt;const&gt;</span>dual<span class="nt">&lt;/const&gt;</span>
</span></span><span class="line"><span class="cl">        <span class="nt">&lt;/edit&gt;</span>
</span></span><span class="line"><span class="cl">    <span class="nt">&lt;/match&gt;</span>
</span></span><span class="line"><span class="cl"><span class="nt">&lt;/fontconfig&gt;</span></span></span></code></pre></div>
<p>Seemed to fix it.</p>
<p>Anyhow, what do I like about kitty?</p>
<ul>
<li>Quick access to launching URLs from a keyboard shortcut.</li>
<li>The whole &ldquo;kitten&rdquo; extension system, which includes some good ones for theme selection, file transfers, and <a href="https://sw.kovidgoyal.net/kitty/kittens/hyperlinked_grep/">hyperlinked grep</a></li>
<li>Its pared-down, simple vibe sitting on top of all the customization.</li>
</ul>
<h2 id="my-first-game-of-cards-against-humanity">My first game of Cards Against Humanity</h2>
<p>&hellip; was this weekend, with a room full of people I don&rsquo;t know very well. How to approach this?</p>
<p>I guess I&rsquo;ll say this:</p>
<p>I&rsquo;ve got a particular sense of humor and I am okay with it, but it is not for everyone. Given what looked like a big box full of thousands of Cards Against Himanity cards, it is entirely reasonable to me that there would be something in there that would exceed my own capacity to shock or to be shocked. There were a few &ldquo;ick&rdquo; moments, and a few &ldquo;lol&rdquo; moments, but many, many more &ldquo;I&rsquo;d have to think this is funny for this to be funny&rdquo; moments, but not because I found those things <em>offensive</em> so much as just &hellip; not funny?</p>
<p>The whole exercise was a little lost on me because there is a difference between &ldquo;I am wound super tight and this is a transgressive thrill that allows me to occupy a space I do not ordinarily permit myself or permit for others&rdquo; and &ldquo;I find all sorts of shit funny and understand not everyone else does, so I am not going to communicate some of those things in some contexts.&rdquo;</p>
<p>So I didn&rsquo;t find the whole thing liberating or freeing or transgressive. It reminded me a lot of what David Graeber had to say about &ldquo;play&rdquo; vs. &ldquo;games&rdquo;:</p>
<blockquote>
<p>&ldquo;Freedom has to be in tension with something, or it’s just randomness. This suggests that the absolute pure form of play, one that really is absolutely untrammeled by rules of any sort (other than those it itself generates and can set aside at any instance) itself can exist only in our imagination, as an aspect of those divine powers that generate the cosmos. Here’s a quote from Indian philosopher of science Shiv Visvanathan:</p>
</blockquote>
<blockquote>
<p>&ldquo;&rsquo;<em>A game is a bounded, specific way of problem solving. Play is more cosmic and open-ended. Gods play, but man unfortunately is a gaming individual. A game has a predictable resolution, play may not. Play allows for emergence, novelty, surprise.</em>'</p>
</blockquote>
<blockquote>
<p>&ldquo;All true. But there is also something potentially terrifying about play for just this reason. Because this open-ended creativity is also what allows it to be randomly destructive. Cats play with mice. Pulling the wings off flies is also a form of play. Playful gods are rarely ones any sane person would desire to encounter. Let me put forth a suggestion, then. What ultimately lies behind the appeal of bureaucracy is fear of play.&rdquo;</p>
</blockquote>
<p>Cards Against Humanity is definitely a game. And it is not, as Dungeons and Dragons can be, a kind of game that allows you to poke at the edges of play very much.</p>
<h2 id="launching-emacs-from-systemd">Launching Emacs from systemd</h2>
<p>It happened a few versions ago, when I was busy running it on a Mac, but Emacs ships with a systemd unit, so you can fire it up like a service and use it with emacsclient. That simplifies a few things. <a href="https://emacsredux.com/blog/2020/07/16/running-emacs-with-systemd/">Bozhidar Batsov on how it all works.</a> I came across this while I was busy trying to make my Hugo posting script work across Linux and macOS machines, and cursing the whole daemonized Emacs situation. His whole blog is a treasure trove.</p>
<p>I&rsquo;m wondering, given the way I use Emacs these days, why I insist on running the GUI version. I should try not for a few days and see what comes up.</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
