<?xml version="1.0" encoding="utf-8"?> 
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
 <title type="text">Will Lachance&#39;s Log: Posts tagged &#39;homelab&#39;</title>
 <link rel="self" href="https://wrla.ch/feeds/homelab.atom.xml" />
 <link href="https://wrla.ch/tags/homelab.html" />
 <id>urn:https-wrla-ch:-tags-homelab-html</id>
 <updated>2026-09-23T13:44:30Z</updated>

 <entry>
  <title type="text">Building a homelab</title>
  <link rel="alternate" href="https://wrla.ch/log/2026/09/building-a-homelab/?utm_source=homelab&amp;utm_medium=Atom" />
  <id>urn:https-wrla-ch:-log-2026-09-building-a-homelab</id>
  <published>2026-09-23T13:44:30Z</published>
  <updated>2026-09-23T13:44:30Z</updated>
  <author>
   <name>Will Lachance</name></author>
  <content type="html">
&lt;p&gt;Over the past half a year (starting around this post:
&lt;a href=&#34;/log/2026/03/music-updates/&#34;&gt;Music updates&lt;/a&gt;) I&#39;ve been slowly building out
a homelab.&lt;/p&gt;
&lt;p&gt;Despite being adjacent to communities where this is common (&lt;a href=&#34;https://www.recurse.com/&#34;&gt;Recurse&lt;/a&gt;, etc.),
this wasn&#39;t something I thought I would do a few years ago: too much effort
for the expected return.  A couple of things changed since then:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;My &lt;a href=&#34;https://marimo.io/blog/case-study-voltus&#34;&gt;present work at Voltus&lt;/a&gt; requires me to at least think of infrastructure
issues a fair bit more: the engineering team is still small enough that
I need to get into the weeds of how things are configured, deployed and
monitored-- not just how they work at the data and application layer.&lt;/li&gt;
&lt;li&gt;The software stack around it has gotten better: we&#39;re long past the days where
this meant dangerously exposing a raw Linux system on a router. Also there
are many more actually useful things you can &lt;em&gt;run&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;LLMs make this type of thing vastly easier to build independently with only
generalist-level knowledge.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The exact architecture is still a work in progress, but the basic components
are in place:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Using &lt;a href=&#34;https://tailscale.com/&#34;&gt;Tailscale&lt;/a&gt; for the network boundary. This lets me run a
bunch of network services using my local machines without
exposing them directly to the internet. I can run services with minimal (or even no)
built-in authentication since access is controlled by the tailnet.&lt;/li&gt;
&lt;li&gt;Using an old w520 for the main &amp;quot;persistent&amp;quot; system server running the network services.
8 GB, Intel Sandy Bridge. It&#39;s underpowered by today&#39;s standards but more than enough to run the
types of things I might want to do (music servers, read-it-later, lightweight
notebooks, ai agent harnesses).&lt;/li&gt;
&lt;li&gt;Storing persistent configuration as a git repository. Mostly a bunch of
docker service definitions and systemd units, along with README.md files describing
how to set it up and run it when I inevitably forget. I&#39;m thinking about moving some
of this to &lt;a href=&#34;https://nixos.org/&#34;&gt;nix&lt;/a&gt; someday, but haven&#39;t found a compelling reason to do so other than
&amp;quot;nix is cool, I want to learn more about it&amp;quot; (maybe that&#39;s enough).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here is the server in all its glory:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://wrla.ch/log/2026/03/music-updates/w520.jpg&#34; alt=&#34;ThinkPad w520 running homelab&#34; /&gt;&lt;/p&gt;
&lt;p&gt;The setup so far is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://jellyfin.org/&#34;&gt;jellyfin&lt;/a&gt; for music listening&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://readeck.org/en/&#34;&gt;readeck&lt;/a&gt; for saving useful posts to disk (after Mozilla discontinued Pocket, I determined
that I should never trust a third party service to do this again)&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/marimo-team/marimohub&#34;&gt;marimohub&lt;/a&gt; for exploring analytical ideas / questions in notebook form (it&#39;s
a little under-documented right now, but it supports tailscale authentication
headers out of the box, I might write more about this later)&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://pi-web.dev/&#34;&gt;pi-web&lt;/a&gt; for interactive coding (honestly mostly used for working on this system recursively, but maybe more one day)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I&#39;m pretty happy with the setup as a learning experience. I&#39;ve been using
various LLMs to build it, but try to understand their end products. Feels like
the appropriate use of technology: the configuration is mostly boilerplate,
the interesting questions for me are higher level: what does each additional piece of functionality allow me to do, what are the
risks, etc. I could of course &amp;quot;do things the hard way&amp;quot; and reproduce tailscale
configuration and systemd files from scratch but it just doesn&#39;t seem quite
worth it. At present, I don&#39;t have the ambition of becoming an infrastructure engineer.&lt;/p&gt;
&lt;p&gt;I don&#39;t really have illusions that this system is incredibly useful or life
changing in itself-- it just replaces a few cloud services I would
otherwise pay for (or be sad when they go away, as happened with Pocket). Most
of the value is in the experience of building it.&lt;/p&gt;
</content></entry>
</feed>