<?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>Permanent on xow.se</title>
    <link>https://www.xow.se/tags/permanent/</link>
    <description>Recent content in Permanent on xow.se</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 19 May 2026 16:48:30 +0200</lastBuildDate>
    <atom:link href="https://www.xow.se/tags/permanent/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>zsh - Extending functionality</title>
      <link>https://www.xow.se/notes/zsh-extending-funcionality-lczs/</link>
      <pubDate>Tue, 19 May 2026 16:48:30 +0200</pubDate>
      <guid>https://www.xow.se/notes/zsh-extending-funcionality-lczs/</guid>
      <description>&lt;p&gt;I might be an old fart that like it like it was. But I still decided to pimp my zsh with some useful additions, most notably git status symbols.&lt;/p&gt;
&lt;p&gt;This is what I ended up with as a starting point.&lt;/p&gt;
&lt;p&gt;Installed the following applications:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;doas pkg install zoxide eza starship
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Added below settings to &lt;code&gt;$HOME/.zshrc&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-~/.zshrc&#34; data-lang=&#34;~/.zshrc&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;alias zls&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;zoxide query -l |fzf&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;alias ls&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;eza --icons -g&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;alias ll&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;eza --icons --git -glo --color=never&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;alias la&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;eza --icons --git -gloaa --color=never&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;alias tree&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;eza --icons --tree&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;alias grep&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;rg --color=auto&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;compdef eza&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;ls
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;source &amp;lt;&lt;span style=&#34;color:#f92672&#34;&gt;(&lt;/span&gt;fzf --zsh&lt;span style=&#34;color:#f92672&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;bindkey -M viins &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;^H&amp;#34;&lt;/span&gt; fzf-history-widget
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;bindkey -M vicmd &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;^H&amp;#34;&lt;/span&gt; fzf-history-widget
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# Alt+G: fzf cd from root (think global)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;fzf-cd-root-widget&lt;span style=&#34;color:#f92672&#34;&gt;()&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  local dir
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  dir&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;$(&lt;/span&gt;fd --type d . / --color&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;never --hidden 2&amp;gt;/dev/null | fzf +m&lt;span style=&#34;color:#66d9ef&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;[[&lt;/span&gt; -n &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;$dir&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;]]&lt;/span&gt;; &lt;span style=&#34;color:#66d9ef&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    cd &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;$dir&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    zle reset-prompt
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#66d9ef&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;zle -N fzf-cd-root-widget
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;bindkey &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;\eg&amp;#39;&lt;/span&gt; fzf-cd-root-widget
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;eval &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;$(&lt;/span&gt;zoxide init zsh&lt;span style=&#34;color:#66d9ef&#34;&gt;)&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;eval &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;$(&lt;/span&gt;starship init zsh&lt;span style=&#34;color:#66d9ef&#34;&gt;)&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;And for the prompt I configured &lt;code&gt;$HOME/.config/starship.toml&lt;/code&gt; like this:&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I might be an old fart that like it like it was. But I still decided to pimp my zsh with some useful additions, most notably git status symbols.</p>
<p>This is what I ended up with as a starting point.</p>
<p>Installed the following applications:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"><code class="language-sh" data-lang="sh"><span style="display:flex;"><span>doas pkg install zoxide eza starship
</span></span></code></pre></div><p>Added below settings to <code>$HOME/.zshrc</code>:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"><code class="language-~/.zshrc" data-lang="~/.zshrc"><span style="display:flex;"><span>alias zls<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;zoxide query -l |fzf&#39;</span>
</span></span><span style="display:flex;"><span>alias ls<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;eza --icons -g&#39;</span>
</span></span><span style="display:flex;"><span>alias ll<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;eza --icons --git -glo --color=never&#39;</span>
</span></span><span style="display:flex;"><span>alias la<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;eza --icons --git -gloaa --color=never&#39;</span>
</span></span><span style="display:flex;"><span>alias tree<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;eza --icons --tree&#39;</span>
</span></span><span style="display:flex;"><span>alias grep<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;rg --color=auto&#39;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>compdef eza<span style="color:#f92672">=</span>ls
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>source &lt;<span style="color:#f92672">(</span>fzf --zsh<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>bindkey -M viins <span style="color:#e6db74">&#34;^H&#34;</span> fzf-history-widget
</span></span><span style="display:flex;"><span>bindkey -M vicmd <span style="color:#e6db74">&#34;^H&#34;</span> fzf-history-widget
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e"># Alt+G: fzf cd from root (think global)</span>
</span></span><span style="display:flex;"><span>fzf-cd-root-widget<span style="color:#f92672">()</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>  local dir
</span></span><span style="display:flex;"><span>  dir<span style="color:#f92672">=</span><span style="color:#66d9ef">$(</span>fd --type d . / --color<span style="color:#f92672">=</span>never --hidden 2&gt;/dev/null | fzf +m<span style="color:#66d9ef">)</span>
</span></span><span style="display:flex;"><span>  <span style="color:#66d9ef">if</span> <span style="color:#f92672">[[</span> -n <span style="color:#e6db74">&#34;</span>$dir<span style="color:#e6db74">&#34;</span> <span style="color:#f92672">]]</span>; <span style="color:#66d9ef">then</span>
</span></span><span style="display:flex;"><span>    cd <span style="color:#e6db74">&#34;</span>$dir<span style="color:#e6db74">&#34;</span>
</span></span><span style="display:flex;"><span>    zle reset-prompt
</span></span><span style="display:flex;"><span>  <span style="color:#66d9ef">fi</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span>zle -N fzf-cd-root-widget
</span></span><span style="display:flex;"><span>bindkey <span style="color:#e6db74">&#39;\eg&#39;</span> fzf-cd-root-widget
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>eval <span style="color:#e6db74">&#34;</span><span style="color:#66d9ef">$(</span>zoxide init zsh<span style="color:#66d9ef">)</span><span style="color:#e6db74">&#34;</span>
</span></span><span style="display:flex;"><span>eval <span style="color:#e6db74">&#34;</span><span style="color:#66d9ef">$(</span>starship init zsh<span style="color:#66d9ef">)</span><span style="color:#e6db74">&#34;</span>
</span></span></code></pre></div><p>And for the prompt I configured <code>$HOME/.config/starship.toml</code> like this:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"><code class="language-~/.config/starship.toml" data-lang="~/.config/starship.toml"><span style="display:flex;"><span><span style="color:#a6e22e">format</span> = <span style="color:#e6db74">&#34; $directory$git_status$character&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">add_newline</span> = <span style="color:#66d9ef">false</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>[<span style="color:#a6e22e">directory</span>]
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">format</span> = <span style="color:#e6db74">&#34;[$path]($style) &#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">style</span> = <span style="color:#e6db74">&#34;plain&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">truncation_length</span> = <span style="color:#ae81ff">0</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">truncate_to_repo</span> = <span style="color:#66d9ef">false</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>[<span style="color:#a6e22e">character</span>]
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">success_symbol</span> = <span style="color:#e6db74">&#34;[%](plain)&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">error_symbol</span> = <span style="color:#e6db74">&#34;[%](plain)&#34;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>[<span style="color:#a6e22e">git_status</span>]
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">format</span> = <span style="color:#e6db74">&#39;([$all_status$ahead_behind]($style) )&#39;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">style</span> = <span style="color:#e6db74">&#34;plain&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">staged</span> = <span style="color:#e6db74">&#34;●&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">modified</span> = <span style="color:#e6db74">&#34;∗&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">untracked</span> = <span style="color:#e6db74">&#34;…&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">deleted</span> = <span style="color:#e6db74">&#34;×&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">renamed</span> = <span style="color:#e6db74">&#34;→&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">conflicted</span> = <span style="color:#e6db74">&#34;⚡&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">ahead</span> = <span style="color:#e6db74">&#34;↑&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">behind</span> = <span style="color:#e6db74">&#34;↓&#34;</span>
</span></span></code></pre></div>]]></content:encoded>
    </item>
    <item>
      <title>zsh - Autoloading functions</title>
      <link>https://www.xow.se/notes/zsh-autoloading-functions-2d6e/</link>
      <pubDate>Thu, 14 May 2026 19:48:02 +0200</pubDate>
      <guid>https://www.xow.se/notes/zsh-autoloading-functions-2d6e/</guid>
      <description>&lt;p&gt;I figured it would be fun to convert some of my scripts into zsh functions. Who knows, one might learn a thing or two.&lt;/p&gt;
&lt;p&gt;I decided to store my functions in &lt;code&gt;$HOME/bin/functions&lt;/code&gt;, and therefor added the below settings to &lt;code&gt;$HOME/.zshrc&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;export fpath&lt;span style=&#34;color:#f92672&#34;&gt;=(&lt;/span&gt;$HOME/bin/functions /usr/local/share/zsh/site-functions $fpath&lt;span style=&#34;color:#f92672&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;autoload -Uz $HOME/bin/functions/*&lt;span style=&#34;color:#f92672&#34;&gt;(&lt;/span&gt;.:t&lt;span style=&#34;color:#f92672&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <content:encoded><![CDATA[<p>I figured it would be fun to convert some of my scripts into zsh functions. Who knows, one might learn a thing or two.</p>
<p>I decided to store my functions in <code>$HOME/bin/functions</code>, and therefor added the below settings to <code>$HOME/.zshrc</code>:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"><code class="language-sh" data-lang="sh"><span style="display:flex;"><span>export fpath<span style="color:#f92672">=(</span>$HOME/bin/functions /usr/local/share/zsh/site-functions $fpath<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>autoload -Uz $HOME/bin/functions/*<span style="color:#f92672">(</span>.:t<span style="color:#f92672">)</span>
</span></span></code></pre></div>]]></content:encoded>
    </item>
    <item>
      <title>NixOS - Cleaning up old generations</title>
      <link>https://www.xow.se/notes/nixos-cleaning-up-old-generations-ytuf/</link>
      <pubDate>Sun, 10 May 2026 18:59:19 +0200</pubDate>
      <guid>https://www.xow.se/notes/nixos-cleaning-up-old-generations-ytuf/</guid>
      <description>&lt;p&gt;Eventually every new NixOS user is going to run out of disk space. Or, atleast I did.&lt;/p&gt;
&lt;p&gt;Here’s how I did my housekeeping:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# Keep 5 system generations&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo nix-env --profile /nix/var/nix/profiles/system --delete-generations +5
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# Same for your user profile&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;nix-env --delete-generations old
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# Run garbage collection (this actually frees space)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo nix-collect-garbage -d
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# Clean boot entries (removes old kernels from /boot)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo /run/current-system/bin/switch-to-configuration boot
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <content:encoded><![CDATA[<p>Eventually every new NixOS user is going to run out of disk space. Or, atleast I did.</p>
<p>Here’s how I did my housekeeping:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"><code class="language-sh" data-lang="sh"><span style="display:flex;"><span><span style="color:#75715e"># Keep 5 system generations</span>
</span></span><span style="display:flex;"><span>sudo nix-env --profile /nix/var/nix/profiles/system --delete-generations +5
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e"># Same for your user profile</span>
</span></span><span style="display:flex;"><span>nix-env --delete-generations old
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e"># Run garbage collection (this actually frees space)</span>
</span></span><span style="display:flex;"><span>sudo nix-collect-garbage -d
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e"># Clean boot entries (removes old kernels from /boot)</span>
</span></span><span style="display:flex;"><span>sudo /run/current-system/bin/switch-to-configuration boot
</span></span></code></pre></div>]]></content:encoded>
    </item>
    <item>
      <title>Odlingsplan - 2026</title>
      <link>https://www.xow.se/notes/odlingsplan-2026-36cx/</link>
      <pubDate>Sun, 10 May 2026 18:53:22 +0200</pubDate>
      <guid>https://www.xow.se/notes/odlingsplan-2026-36cx/</guid>
      <description>&lt;p&gt;Detta är planen för årets odlingar, redo att revideras.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&#34;Plan&#34; loading=&#34;lazy&#34; src=&#34;https://www.xow.se/notes/odlingsplan-2026-36cx/images/9x6b-1.jpg&#34;&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Detta är planen för årets odlingar, redo att revideras.</p>
<p><img alt="Plan" loading="lazy" src="/notes/odlingsplan-2026-36cx/images/9x6b-1.jpg"></p>
]]></content:encoded>
    </item>
  </channel>
</rss>
