<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on vranix</title><link>https://vranix.com/posts/</link><description>Recent content in Posts on vranix</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Wed, 09 Oct 2024 11:46:50 -0700</lastBuildDate><atom:link href="https://vranix.com/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>Fixing my Linux sound issues</title><link>https://vranix.com/2024/fixing-pipewire/</link><pubDate>Wed, 09 Oct 2024 11:46:50 -0700</pubDate><guid>https://vranix.com/2024/fixing-pipewire/</guid><description>&lt;p>Every couple of days my audio and audio applications would stop working. Through some
trial and error I found that restarting pipewire-pulse would temporarily work around the
issue&amp;ndash; music would play again, my volume keys would start working &amp;ndash; for another couple
of days..&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>systemctl restart --user pipewire-pulse
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>I eventually tired of this work-around and decided to look into it further. The messages
coming from the pipewire-pulse server looked like this, one for each failed attempt to do
something, like volume-up/down.&lt;/p></description></item><item><title>Introducing Geniveev: a CLI for boilerplate generation</title><link>https://vranix.com/2024/geniveev/</link><pubDate>Mon, 08 Apr 2024 06:47:09 -0700</pubDate><guid>https://vranix.com/2024/geniveev/</guid><description>&lt;p>I worked on a product with a microservice architecture for a while. As one does working
in such an environment, I found myself creating a lot of little services. Each of these services
was first described as a service in a protobuf file. The services were compiled into
an interface which you would then implement. We also used a tool for injecting
dependencies to make creating these services easier.&lt;/p>
&lt;p>This is a long way for me to say that to start a new project, I would
generally have to create three files in different (new) directories. Like any self-respecting
developer, I would hunt down one such file, create the new directory, copy an existing file to
the new directory, do some deletion and substitions and work my way to the next file until I was done.
This process felt hokey because it was; the developer experience was lacking.&lt;/p></description></item><item><title>home-manager neovim setup: embedded lua highlighting</title><link>https://vranix.com/2024/lua-highlighting-homemanager-vim/</link><pubDate>Sat, 06 Apr 2024 06:47:09 -0700</pubDate><guid>https://vranix.com/2024/lua-highlighting-homemanager-vim/</guid><description>&lt;h3 id="problem">Problem&lt;/h3>
&lt;p>I use home-manager to manage my neovim configuration. When using a plugin, a typical
configuration snippet might look like this:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-nix" data-lang="nix">&lt;span style="display:flex;">&lt;span>{
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> plugin &lt;span style="color:#719e07">=&lt;/span> neogit;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> type &lt;span style="color:#719e07">=&lt;/span> &lt;span style="color:#2aa198">&amp;#34;lua&amp;#34;&lt;/span>;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> config &lt;span style="color:#719e07">=&lt;/span> &lt;span style="color:#2aa198">&amp;#39;&amp;#39;
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> require(&amp;#39;neogit&amp;#39;).setup {
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> disable_commit_confirmation = true,
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> integrations = {
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> diffview = true,
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> }
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> }
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> &amp;#39;&amp;#39;&lt;/span>;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>This works well enough for me. I like how I can specify the configuration for a plugin
next to where I specify the plugin itself. The only problem is that by default the lua
configuration is highlighted as nix code, i.e., as one large string.&lt;/p></description></item><item><title>Problems with self-hosting</title><link>https://vranix.com/2022/fixing-selfhosting/</link><pubDate>Thu, 12 May 2022 09:10:16 -0700</pubDate><guid>https://vranix.com/2022/fixing-selfhosting/</guid><description>&lt;h2 id="even-nerds-dont-want-to-run-their-own-servers">Even nerds don&amp;rsquo;t want to run their own servers&lt;/h2>
&lt;p>This is a quote from Moxie Marlinspike&amp;rsquo;s post &lt;a href="https://moxie.org/2022/01/07/web3-first-impressions.html">My first impressions of
web3&lt;/a>. This article is
great critique of web3. He makes a number of good points, but what I found most
interesting was his assertion that people do not want to run their own servers.
And I cannot stop thinking about this and not b/c I think he&amp;rsquo;s wrong, but b/c I think
these challenges can be overcome.&lt;/p></description></item><item><title>Nix dev shells from 10,000 feet</title><link>https://vranix.com/2022/nix-devshells/</link><pubDate>Wed, 09 Mar 2022 12:37:53 -0800</pubDate><guid>https://vranix.com/2022/nix-devshells/</guid><description>&lt;h2 id="setting-the-scene">Setting the scene&lt;/h2>
&lt;p>After neglecting this small place on the internet for years, I cloned the repo with the
hope of quickly updating my resume. This site is constructed with &lt;a href="https://gohugo.io">Hugo&lt;/a>,
which is a static site generator written in golang. Anyway, I needed to install that too, so I
edited my &lt;a href="https://github.com/nix-community/home-manager">home-manager&lt;/a> configuration and &lt;a href="https://github.com/svrana/nix-home/blob/main/Makefile#L26">switched&lt;/a>,
i.e., I installed it.&lt;/p>
&lt;h2 id="there-was-an-attempt">There was an attempt&lt;/h2>
&lt;p>First thing I tried was running &amp;ldquo;hugo serve&amp;rdquo; which starts a web server and serves the
content of your hugo project so changes can be seen as you make them. But that failed. I
don&amp;rsquo;t remember the errors; it&amp;rsquo;s not important, I knew what happened- years had passed,
non-backward compatible changes had been made to hugo and something I was doing no longer worked.
That&amp;rsquo;s one way of putting it. The more correct way of putting it is that I was using a
much newer version of hugo for a website that was created using a previous version. This was
my own mistake and this wasn&amp;rsquo;t going to happen again. This time I would fix the glitch.&lt;/p></description></item></channel></rss>