<?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 The DevOps Blog</title>
    <link>https://blog.lazkani.io/posts/</link>
    <description>Recent content in Posts on The DevOps Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-US</language>
    <copyright>Elia el Lazkani</copyright>
    <lastBuildDate>Wed, 05 Mar 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.lazkani.io/posts/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Multi-Stage Docker container Build</title>
      <link>https://blog.lazkani.io/posts/multi-stage-docker-container-build/</link>
      <pubDate>Wed, 05 Mar 2025 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/multi-stage-docker-container-build/</guid>
      <description>&lt;p&gt;One of the hidden gems of &lt;em&gt;Docker containers&lt;/em&gt; is &lt;em&gt;multi-stage&lt;/em&gt; builds. If it
never  made any sense to you, you&amp;rsquo;ve heard of it but have no clue what it is or
just passing along&amp;hellip; We&amp;rsquo;re going to use it in a practical example.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Environment Variables Made Easy</title>
      <link>https://blog.lazkani.io/posts/environment-variables-made-easy/</link>
      <pubDate>Thu, 20 Feb 2025 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/environment-variables-made-easy/</guid>
      <description>&lt;p&gt;If you&amp;rsquo;ve written software in the last decade, then you&amp;rsquo;re probably familiar
with the current technologies at play. You write your code, locally, in your
IDE, build and test it. You&amp;rsquo;ve made your &lt;em&gt;commit&lt;/em&gt; and pushed it to the revision
control system server and created a &lt;em&gt;pull request&lt;/em&gt;. Pipelines started, code
built, unit tests ran, magic all over and now it&amp;rsquo;s deployed in &lt;em&gt;staging&lt;/em&gt;. Once
the code lives in &lt;em&gt;staging&lt;/em&gt; long enough to build trust in its performance it
goes to &lt;em&gt;production&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;This is in a nutshell how it looks like. The big elephant in the room is, of
course, that all of these different environments are, well&amp;hellip; different !&lt;/p&gt;
&lt;p&gt;This means that the values I used to test my code locally is different than the
values used to test in the pipeline, for security reasons. The same goes for
every single environment. Configuration files could solve a lot of these issues
but, as we all know, they don&amp;rsquo;t solve all of them.&lt;/p&gt;
&lt;p&gt;Another solution is to use &lt;em&gt;environment variables&lt;/em&gt;, which could be easily
injected into scripts, environments and even containers. It&amp;rsquo;s a win-win
everywhere except managing them locally. You&amp;rsquo;re probably thinking my &lt;code&gt;.profile&lt;/code&gt;
file looks like a mess. You&amp;rsquo;d be surprised to know that mine is empty, but how ?&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>What 2025 blog question challenge ?</title>
      <link>https://blog.lazkani.io/posts/what-2025-blog-question-challenge/</link>
      <pubDate>Thu, 20 Feb 2025 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/what-2025-blog-question-challenge/</guid>
      <description>&lt;p&gt;A few weeks ago, &lt;a href=&#34;https://janusworx.com&#34;&gt;Jason&lt;/a&gt; sneakily slipped me a link to a &lt;a href=&#34;https://janusworx.com/work/blog-questions-challenge-2025/&#34;&gt;blog post&lt;/a&gt; of his. He
knows that I &lt;em&gt;already&lt;/em&gt; subscribe to his blog but you cannot be as wise without
meddling with the forces of nature. Well, long story short, his meddling worked
so&amp;hellip; here we go ?&lt;/p&gt;
&lt;h2 id=&#34;why-did-you-make-the-blog-in-the-first-place&#34;&gt;Why did you make the blog in the first place?&lt;/h2&gt;</description>
    </item>
    
    <item>
      <title>Deploying Traefik and Pihole on the Swarm home cluster</title>
      <link>https://blog.lazkani.io/posts/deploying-traefik-and-pihole-on-the-swarm-home-cluster/</link>
      <pubDate>Thu, 25 Aug 2022 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/deploying-traefik-and-pihole-on-the-swarm-home-cluster/</guid>
      <description>&lt;p&gt;In the &lt;a href=&#34;https://blog.lazkani.io/posts/raspberry-pi-container-orchestration-and-swarm-right-at-home/&#34;&gt;previous post&lt;/a&gt;, we setup a &lt;em&gt;Swarm&lt;/em&gt; cluster. That&amp;rsquo;s fine and dandy but that
cluster, as far as we&amp;rsquo;re concerned, is useless. Let&amp;rsquo;s change that.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Raspberry Pi, Container Orchestration and Swarm right at home</title>
      <link>https://blog.lazkani.io/posts/raspberry-pi-container-orchestration-and-swarm-right-at-home/</link>
      <pubDate>Wed, 24 Aug 2022 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/raspberry-pi-container-orchestration-and-swarm-right-at-home/</guid>
      <description>&lt;p&gt;When I started looking into solutions for my home container orchestration, I
wanted a solution that runs on my 2 Raspberry Pis. These beasts have 4 virtual
CPUs and a whoping 1GB of memory each. In other words, not a lot of resources to
go around. What can I run on these? I wonder!&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>NixOS on encrypted ZFS</title>
      <link>https://blog.lazkani.io/posts/nixos-on-encrypted-zfs/</link>
      <pubDate>Sun, 17 Oct 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/nixos-on-encrypted-zfs/</guid>
      <description>&lt;p&gt;I wouldn&amp;rsquo;t call myself a distro hopper. The decision of distribution is solely
based on requirements. I have requirements and I want the distribution to
fulfill them as much as possible. After 15 years, I know what I want and I go
and find it.&lt;/p&gt;
&lt;p&gt;In this case, an unexpected project caught my eye. The idea is so radically
different that I wasn&amp;rsquo;t actually searching for it this time. It is one of those
times where it found me first.&lt;/p&gt;
&lt;p&gt;After looking into &lt;strong&gt;Nix&lt;/strong&gt; and &lt;strong&gt;NixOS&lt;/strong&gt;, I decided it is going to be my
distribution of choice on the desktop. I will use that as my test bed before
migrating all the serious work there. That&amp;rsquo;s how I got my first taste of &lt;strong&gt;NixOS&lt;/strong&gt;
outside of the deterministic virtualization layer and into the wild.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>QMK Firmware</title>
      <link>https://blog.lazkani.io/posts/qmk-firmware/</link>
      <pubDate>Thu, 23 Sep 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/qmk-firmware/</guid>
      <description>&lt;p&gt;Over the years, I have owned a few mechanical keyboards. I&amp;rsquo;m quite fond of them.
I&amp;rsquo;ve also built my own keyboard from scratch years ago. Hot-swappable back then
was still in its easy stages and the sockets weren&amp;rsquo;t that good. Alas, we&amp;rsquo;re in
2021 and I&amp;rsquo;ve recently purchased the &lt;strong&gt;Keychron Q1&lt;/strong&gt; keyboard.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve chosen this keyboard for many reasons, but the one you most care about is
the topic that brought you here. It&amp;rsquo;s a &lt;strong&gt;QMK Firmware&lt;/strong&gt; compatible keyboards. Do
you know what that means ?&lt;/p&gt;
&lt;p&gt;That means that we&amp;rsquo;re going to be digging into &lt;code&gt;qmk_firmware&lt;/code&gt;. Tag along !&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Upgrade your monitoring setup with Prometheus</title>
      <link>https://blog.lazkani.io/posts/upgrade-your-monitoring-setup-with-prometheus/</link>
      <pubDate>Fri, 17 Sep 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/upgrade-your-monitoring-setup-with-prometheus/</guid>
      <description>&lt;p&gt;After running simple monitoring for quite a while, I decided to upgrade my
setup. It is about time to get some real metric gathering to see what&amp;rsquo;s going
on. It&amp;rsquo;s also time to get some proper monitoring setup.&lt;/p&gt;
&lt;p&gt;There are a lot of options in this field and I should, probably, write a blog
post on my views on the topic. For this experiment, on the other hand, the
solution is already pre-chosen. We&amp;rsquo;ll be running Prometheus.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>When is Gitea for you ?</title>
      <link>https://blog.lazkani.io/posts/when-is-gitea-for-you/</link>
      <pubDate>Fri, 13 Aug 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/when-is-gitea-for-you/</guid>
      <description>&lt;p&gt;As a &lt;em&gt;platform engineer&lt;/em&gt;, you aim to choose the best tool for the job. Your goal
is to minimize complexity as much as possible to minimize breakages and make it
easier to recover. And when you think it&amp;rsquo;s that simple, you get hit by the fact
that the best tool for the job is determined out of a list of requirements.&lt;/p&gt;
&lt;p&gt;Dive down with me on a thought experiment that made me choose the hidden diamond
behind a lot of my projects; &lt;strong&gt;Gitea&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Time to deploy our static blog</title>
      <link>https://blog.lazkani.io/posts/time-to-deploy-our-static-blog/</link>
      <pubDate>Sat, 10 Jul 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/time-to-deploy-our-static-blog/</guid>
      <description>&lt;p&gt;In the previous post, entitled &amp;ldquo;&lt;a href=&#34;https://blog.lazkani.io/posts/let-s-play-with-traefik/&#34;&gt;Let&amp;rsquo;s play with Traefik&lt;/a&gt;&amp;rdquo;, we deployed
&lt;em&gt;Traefik&lt;/em&gt; and configured it. We left it in a running state but we haven&amp;rsquo;t
&lt;em&gt;really&lt;/em&gt; used it properly yet.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s put it to some good use this time around.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Let&#39;s play with Traefik</title>
      <link>https://blog.lazkani.io/posts/let-s-play-with-traefik/</link>
      <pubDate>Thu, 24 Jun 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/let-s-play-with-traefik/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve been playing around with containers for a few years now. I find them very useful.
If you host your own, like I do, you probably write a lot of &lt;em&gt;nginx&lt;/em&gt; configurations, maybe &lt;em&gt;apache&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;If that&amp;rsquo;s the case, then you have your own solution to get certificates.
I&amp;rsquo;m also assuming that you are using &lt;em&gt;let&amp;rsquo;s encrypt&lt;/em&gt; with &lt;em&gt;certbot&lt;/em&gt; or something.&lt;/p&gt;
&lt;p&gt;Well, I didn&amp;rsquo;t want to anymore. It was time to consolidate. Here comes Traefik.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Playing with containers and Tor</title>
      <link>https://blog.lazkani.io/posts/playing-with-containers-and-tor/</link>
      <pubDate>Mon, 21 Jun 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/playing-with-containers-and-tor/</guid>
      <description>&lt;p&gt;As my followers well know, by now, I am a tinkerer at heart. Why do I do things ? No one knows ! I don&amp;rsquo;t even know.&lt;/p&gt;
&lt;p&gt;All I know, all I can tell you is that I like to see what can I do with the tools I have at hand. How can I bend them to my will.
Why, you may ask. The answer is a bit complicated; part of who I am, part of what I do as a DevOps. End line is, this time I was curious.&lt;/p&gt;
&lt;p&gt;I went down a road that taught me so much more about &lt;em&gt;containers&lt;/em&gt;, &lt;em&gt;docker&lt;/em&gt;, &lt;em&gt;docker-compose&lt;/em&gt; and even &lt;em&gt;Linux&lt;/em&gt; itself.&lt;/p&gt;
&lt;p&gt;The question I had was simple, &lt;strong&gt;can I run a container only through Tor running in another container?&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>A Python Environment Setup</title>
      <link>https://blog.lazkani.io/posts/a-python-environment-setup/</link>
      <pubDate>Thu, 17 Jun 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/a-python-environment-setup/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve been told that &lt;code&gt;python&lt;/code&gt; package management is bad. I have seen some really bad practices online, asking you to run commands here and there without an understanding of the bigger picture, what they do and sometimes with escalated privileges.&lt;/p&gt;
&lt;p&gt;Along the years, I have compiled a list of practices I follow, and a list of tools I use. I hope to be able to share some of the knowledge I&amp;rsquo;ve acquired and show you a different way of doing things. You might learn about a new tool, or a new use for a tool. Come along for the ride !&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Calendar Organization with Org</title>
      <link>https://blog.lazkani.io/posts/calendar-organization-with-org/</link>
      <pubDate>Sun, 30 May 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/calendar-organization-with-org/</guid>
      <description>&lt;p&gt;I have been having &lt;em&gt;some&lt;/em&gt; issues with my calendar. Recurring stuff have been going out of wack for some reason. In general, the setup I&amp;rsquo;ve had for the past few years have now become a problem I need to fix.&lt;/p&gt;
&lt;p&gt;I decided to turn to my trusted &lt;em&gt;emacs&lt;/em&gt;, like I usually do. &lt;em&gt;Doom&lt;/em&gt; comes bundled with something. Let&amp;rsquo;s figure out what it is and how to configure it together.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Linux Containers</title>
      <link>https://blog.lazkani.io/posts/linux-containers/</link>
      <pubDate>Sat, 27 Feb 2021 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/linux-containers/</guid>
      <description>&lt;p&gt;Our story dates &lt;em&gt;all the way&lt;/em&gt; back to 2006, believe it or not. The first steps were taken towards what we know today as &lt;strong&gt;containers&lt;/strong&gt;.
We&amp;rsquo;ll discuss their history, how to build them and how to use them. Stick around! you might enjoy the ride.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Email IMAP Setup with isync</title>
      <link>https://blog.lazkani.io/posts/email-imap-setup-with-isync/</link>
      <pubDate>Thu, 03 Dec 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/email-imap-setup-with-isync/</guid>
      <description>&lt;p&gt;The blog post &amp;ldquo;&lt;a href=&#34;https://blog.lazkani.io/posts/email-setup-with-isync-notmuch-afew-msmtp-and-emacs/&#34;&gt;Email Setup with isync, notmuch, afew, msmtp and Emacs&lt;/a&gt;&amp;rdquo; prompted a few questions. The questions were around synchronizing email in general.&lt;/p&gt;
&lt;p&gt;I did promise to write up more blog posts to explain the pieces I brushed over quickly for brevity and ease of understanding. Or so I thought !&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Email Setup with isync, notmuch, afew, msmtp and Emacs</title>
      <link>https://blog.lazkani.io/posts/email-setup-with-isync-notmuch-afew-msmtp-and-emacs/</link>
      <pubDate>Sun, 29 Nov 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/email-setup-with-isync-notmuch-afew-msmtp-and-emacs/</guid>
      <description>&lt;p&gt;I was asked recently about how I have my email client setup. As I naturally do, I replied with something along the lines of the following.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I use isync, notmuch, afew and msmtp with emacs as an interface, let me get you a link on how I did my setup from my blog.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;To my surprise, I never wrote about the topic. I guess this is as better time as any to do so.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s dig in.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Dotfiles with Chezmoi</title>
      <link>https://blog.lazkani.io/posts/dotfiles-with-chezmoi/</link>
      <pubDate>Mon, 05 Oct 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/dotfiles-with-chezmoi/</guid>
      <description>&lt;p&gt;A few months ago, I went on a search for a solution for my &lt;em&gt;dotfiles&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;I tried projects likes &lt;a href=&#34;https://www.gnu.org/software/stow/&#34;&gt;GNU Stow&lt;/a&gt;, &lt;a href=&#34;https://github.com/anishathalye/dotbot&#34;&gt;dotbot&lt;/a&gt; and a &lt;a href=&#34;https://www.atlassian.com/git/tutorials/dotfiles&#34;&gt;bare &lt;em&gt;git&lt;/em&gt; repository&lt;/a&gt;.
Each one of these solutions has its advantages and its advantages, but I found mine in &lt;a href=&#34;https://www.chezmoi.io/&#34;&gt;&lt;em&gt;Chezmoi&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Chezmoi&lt;/em&gt; ? That&amp;rsquo;s &lt;strong&gt;French&lt;/strong&gt; right ? How is learning &lt;strong&gt;French&lt;/strong&gt; going to help me ?&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Bookmark with Org-capture</title>
      <link>https://blog.lazkani.io/posts/bookmark-with-org-capture/</link>
      <pubDate>Thu, 17 Sep 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/bookmark-with-org-capture/</guid>
      <description>&lt;p&gt;I was reading, and watching, &lt;a href=&#34;https://cestlaz.github.io/about/&#34;&gt;Mike Zamansky&lt;/a&gt;&amp;rsquo;s blog post &lt;a href=&#34;https://cestlaz.github.io/stories/emacs/&#34;&gt;series&lt;/a&gt; about &lt;em&gt;org-capture&lt;/em&gt; and how he manages his bookmarks. His blog and video series are a big recommendation from me, he is teaching me tons every time I watch his videos. His inspirational videos were what made me dig down on how I could do what he&amp;rsquo;s doing but&amp;hellip; my way&amp;hellip;&lt;/p&gt;
&lt;p&gt;I stumbled across &lt;a href=&#34;https://dewaka.com/blog/2020/04/08/bookmarking-with-org-mode/&#34;&gt;this&lt;/a&gt; blog post that describes the process of using &lt;code&gt;org-cliplink&lt;/code&gt; to insert the &lt;em&gt;title&lt;/em&gt; of the post into an &lt;em&gt;org-mode&lt;/em&gt; link. Basically, what I wanted to do is provide a link and get an &lt;em&gt;org-mode&lt;/em&gt; link. Sounds simple enough. Let&amp;rsquo;s dig in.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Yet Another RSS Reader Move ?</title>
      <link>https://blog.lazkani.io/posts/yet-another-rss-reader-move/</link>
      <pubDate>Mon, 14 Sep 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/yet-another-rss-reader-move/</guid>
      <description>&lt;p&gt;The more I get comfortable with &lt;em&gt;emacs&lt;/em&gt; and &lt;em&gt;doom&lt;/em&gt;, the more I tend to move things to it. This means that I am getting things done faster, without the need to get bogged down in the weeds of things.&lt;/p&gt;
&lt;p&gt;This also means that, sometimes, I get to decommission a service that I host for my own personal use. If I can do it with a &lt;em&gt;text file&lt;/em&gt; in &lt;em&gt;git&lt;/em&gt;, why would I host a full-on service to do it for me ?&lt;/p&gt;
&lt;p&gt;You might say, well, then you can access it from anywhere ! Security much ?!&lt;/p&gt;
&lt;p&gt;if I don&amp;rsquo;t have my machine, I will not access my passwords. In practice, the reality is that I am tied to my own machine. On one hand, I cannot access my services online without my machine and if I am on the move it is highly unlikely for me to access my &lt;em&gt;rss&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Oh yeah ! &lt;em&gt;rss&lt;/em&gt; ! That&amp;rsquo;s what we are here for right ? Let&amp;rsquo;s dive in&amp;hellip;&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Literate Programming Emacs Configuration</title>
      <link>https://blog.lazkani.io/posts/literate-programing-emacs-configuration/</link>
      <pubDate>Sat, 12 Sep 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/literate-programing-emacs-configuration/</guid>
      <description>&lt;p&gt;I was working on a &lt;em&gt;project&lt;/em&gt; that required a lot of manual steps. I &lt;em&gt;generally&lt;/em&gt; lean towards &lt;strong&gt;automating everything&lt;/strong&gt; but in &lt;em&gt;some cases&lt;/em&gt; that is, unfortunately, not possible.&lt;/p&gt;
&lt;p&gt;Documenting such project is not an easy task to accomplish, especially with so many moving parts and different outputs.&lt;/p&gt;
&lt;p&gt;Since I have been using &lt;em&gt;org-mode&lt;/em&gt; more frequently for &lt;em&gt;documentation&lt;/em&gt; and &lt;em&gt;organization&lt;/em&gt; in general, I gravitated towards it as a first instinct.&lt;/p&gt;
&lt;p&gt;I wasn&amp;rsquo;t sure of the capabilities of &lt;em&gt;org-mode&lt;/em&gt; in such unfamiliar settings but I was really surprised by the outcome.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Weechat and Emacs</title>
      <link>https://blog.lazkani.io/posts/weechat-and-emacs/</link>
      <pubDate>Thu, 03 Sep 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/weechat-and-emacs/</guid>
      <description>&lt;p&gt;In the last few blog posts, I mentioned a few migrations caused by my &lt;em&gt;VSCode&lt;/em&gt;
discovery a few weeks ago &lt;a href=&#34;https://blog.lazkani.io/posts/emacs-and-org-mode/&#34;&gt;Emacs and Org-mode&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;As I was configuring &lt;em&gt;Doom&lt;/em&gt;, I noticed that there was a configuration for &lt;em&gt;weechat&lt;/em&gt; in there. I checked it out very briefly and found that it was a &lt;em&gt;&lt;a href=&#34;https://github.com/the-kenny/weechat.el&#34;&gt;weechat.el&lt;/a&gt;&lt;/em&gt; package for &lt;em&gt;Emacs&lt;/em&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Git binary clean up</title>
      <link>https://blog.lazkani.io/posts/git-binary-clean-up/</link>
      <pubDate>Wed, 02 Sep 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/git-binary-clean-up/</guid>
      <description>&lt;p&gt;When I first started this blog, I simply started with experiments. The first iteration was a &lt;em&gt;wordpress&lt;/em&gt; which was followed, very fast, by &lt;em&gt;joomla&lt;/em&gt;. Neither of them lasted long. They are simply not for me.&lt;/p&gt;
&lt;p&gt;I am lucky to be a part of a small group started in &lt;code&gt;#dgplug&lt;/code&gt; on &lt;em&gt;Freenode&lt;/em&gt;. In mentioned group, I have access to a lot of cool and awesome people who can put me to shame in development. On the flip side, I live by a &lt;em&gt;motto&lt;/em&gt; that says:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Always surround yourself with people smarter than yourself.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;It&amp;rsquo;s the best way to learn. Anyway, back to the topic at hand, they introduced me to &lt;em&gt;static blog generators&lt;/em&gt;. There my journey started but it started with a trial. I didn&amp;rsquo;t give too much thought to the repository. It moved from &lt;em&gt;GitHub&lt;/em&gt; to &lt;em&gt;Gitlab&lt;/em&gt; and finally &lt;em&gt;here&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;But, of course, you know how projects go, right ?&lt;/p&gt;
&lt;p&gt;Once you start with one, closely follows other ones that crop up along the way. I put them on my &lt;strong&gt;TODO&lt;/strong&gt;, literally. One of those items was that I committed all the images to the repository. It wasn&amp;rsquo;t until a few days ago until I added a &lt;code&gt;.gitattributes&lt;/code&gt; file. Shameful, I know.&lt;/p&gt;
&lt;p&gt;No more ! Today it all changed.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Modifying a Nikola theme</title>
      <link>https://blog.lazkani.io/posts/modifying-a-nikola-theme/</link>
      <pubDate>Tue, 01 Sep 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/modifying-a-nikola-theme/</guid>
      <description>&lt;p&gt;After publishing my &lt;em&gt;blog&lt;/em&gt; in new form yesterday night, I have received some suggestions for changes to the theme.&lt;/p&gt;
&lt;p&gt;First off, I noticed that the footer is not showing after the blog was deployed. That reminded me that I have made changes to the original theme on disk. The pipeline, though, install the theme fresh before deploying the website.&lt;/p&gt;
&lt;p&gt;I needed to fix that. Here&amp;rsquo;s how I did it.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Welcome back to the old world</title>
      <link>https://blog.lazkani.io/posts/welcome-back-to-the-old-world/</link>
      <pubDate>Mon, 31 Aug 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/welcome-back-to-the-old-world/</guid>
      <description>&lt;p&gt;I have recently blogged about moving to &lt;em&gt;emacs&lt;/em&gt; and the reasons behind it.&lt;/p&gt;
&lt;p&gt;Since then, I have used &lt;em&gt;Orgmode&lt;/em&gt; a lot more. And I have begun to like it even more. I had a plan to move the blog to &lt;em&gt;&lt;a href=&#34;https://gohugo.io/&#34;&gt;Hugo&lt;/a&gt;&lt;/em&gt;. After giving it a try, I had inconsistent results. I must&amp;rsquo;ve been doing something wrong. I&amp;rsquo;ve spend a lot more time than I anticipated on it. At some point, it becomes an endeavor with diminishing returns. So I ditched that idea.&lt;/p&gt;
&lt;p&gt;But why did I want to move to &lt;em&gt;Hugo&lt;/em&gt; in the first place ?&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Emacs and Org-mode</title>
      <link>https://blog.lazkani.io/posts/emacs-and-org-mode/</link>
      <pubDate>Sat, 22 Aug 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/emacs-and-org-mode/</guid>
      <description>&lt;p&gt;I have recently found out, late I know, that the &lt;em&gt;VSCode&lt;/em&gt; distribution of the so called &lt;em&gt;Code - OSS&lt;/em&gt; is exactly that; a distribution.&lt;/p&gt;
&lt;p&gt;Let me make it clear, the &lt;em&gt;VSCode&lt;/em&gt; binaries you download from &lt;strong&gt;Microsoft&lt;/strong&gt; has an upstream the &lt;strong&gt;GitHub repository&lt;/strong&gt; named &lt;a href=&#34;https://github.com/Microsoft/vscode&#34;&gt;VSCode&lt;/a&gt; but in fact is not exactly the same code.
&lt;strong&gt;Microsoft&lt;/strong&gt; has already added a few gifts for you, including &lt;strong&gt;telemetry&lt;/strong&gt;, not cool huh ?!
Well, they tell you this in the documentation, urrrmmm &lt;a href=&#34;https://github.com/microsoft/vscode/wiki/Differences-between-the-repository-and-Visual-Studio-Code&#34;&gt;somewhere&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Building k3s on a Pi</title>
      <link>https://blog.lazkani.io/posts/building-k3s-on-a-pi/</link>
      <pubDate>Sun, 09 Aug 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/building-k3s-on-a-pi/</guid>
      <description>&lt;p&gt;I have had a &lt;strong&gt;Pi&lt;/strong&gt; laying around used for a simple task for a while now.
A few days ago, I was browsing the web, learning more about privacy, when I stumbled upon &lt;a href=&#34;https://adguard.com/en/welcome.html&#34;&gt;AdGuard Home&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I have been using it as my internal DNS on top of the security and privacy layers I add to my machine.
Its benefits can be argued but it is a DNS after all and I wanted to see what else it can do for me.
Anyway, I digress. I searched to see if I could find a container for &lt;strong&gt;AdGuard Home&lt;/strong&gt; and I did.&lt;/p&gt;
&lt;p&gt;At this point, I started thinking about what I could do to make the &lt;a href=&#34;https://www.raspberrypi.org/&#34;&gt;Pi&lt;/a&gt; more useful.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s when &lt;a href=&#34;https://k3s.io/&#34;&gt;k3s&lt;/a&gt; came into the picture.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Building up simple monitoring on Healthchecks</title>
      <link>https://blog.lazkani.io/posts/building-up-simple-monitoring-on-healthchecks/</link>
      <pubDate>Tue, 11 Feb 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/building-up-simple-monitoring-on-healthchecks/</guid>
      <description>&lt;p&gt;I talked previously in &amp;ldquo;&lt;a href=&#34;https://blog.lazkani.io/posts/simple-cron-monitoring-with-healthchecks/&#34;&gt;Simple cron monitoring with HealthChecks&lt;/a&gt;&amp;rdquo; about deploying my own simple monitoring system.&lt;/p&gt;
&lt;p&gt;Now that it&amp;rsquo;s up, I&amp;rsquo;m only using it for my backups. That&amp;rsquo;s a good use, for sure, but I know I can do better.&lt;/p&gt;
&lt;p&gt;So I went digging.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Simple cron monitoring with HealthChecks</title>
      <link>https://blog.lazkani.io/posts/simple-cron-monitoring-with-healthchecks/</link>
      <pubDate>Sun, 09 Feb 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/simple-cron-monitoring-with-healthchecks/</guid>
      <description>&lt;p&gt;In a previous post entitled &amp;ldquo;&lt;a href=&#34;https://blog.lazkani.io/posts/automating-borg/&#34;&gt;Automating Borg&lt;/a&gt;&amp;rdquo;, I showed you how you can automate your &lt;strong&gt;borg&lt;/strong&gt; backups with &lt;strong&gt;borgmatic&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;After I started using &lt;strong&gt;borgmatic&lt;/strong&gt; for my backups and hooked it to a &lt;em&gt;cron&lt;/em&gt; running every 2 hours, I got interested into knowing what&amp;rsquo;s happening to my backups at all times.&lt;/p&gt;
&lt;p&gt;My experience comes handy in here, I know I need a monitoring system. I also know that traditional monitoring systems are too complex for my use case.&lt;/p&gt;
&lt;p&gt;I need something simple. I need something I can deploy myself.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Automating Borg</title>
      <link>https://blog.lazkani.io/posts/automating-borg/</link>
      <pubDate>Sun, 02 Feb 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/automating-borg/</guid>
      <description>&lt;p&gt;In the previous blog post entitle &lt;a href=&#34;https://blog.lazkani.io/posts/borgbackup/&#34;&gt;BorgBackup&lt;/a&gt;, I talked about &lt;strong&gt;borg&lt;/strong&gt;.
If you read that post, you would&amp;rsquo;ve noticed that &lt;strong&gt;borg&lt;/strong&gt; has a lot of features.
With a lot of features come a lot of automation.&lt;/p&gt;
&lt;p&gt;If you were thinking about using &lt;strong&gt;borg&lt;/strong&gt;, you should either make a &lt;em&gt;simple cron&lt;/em&gt; or you&amp;rsquo;re gonna have to write an elaborate script to take care of all the different steps.&lt;/p&gt;
&lt;p&gt;What if I told you there&amp;rsquo;s another way ? An easier way ! The &lt;strong&gt;Borgmatic&lt;/strong&gt; way&amp;hellip; What would you say ?&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>BorgBackup</title>
      <link>https://blog.lazkani.io/posts/borgbackup/</link>
      <pubDate>Thu, 30 Jan 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/borgbackup/</guid>
      <description>&lt;p&gt;I usually lurk around &lt;strong&gt;Freenode&lt;/strong&gt; in a few projects that I use, can learn from and/or help with. This is a great opportunity to learn new things &lt;em&gt;all the time&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;This story is familiar in that manner, but that&amp;rsquo;s where similarities diverge. Someone asked around &lt;code&gt;#Weechat&lt;/code&gt; a question that caught my attention because it was, sort of, out of topic. The question was around how do you backup your stuff ?&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>A Quick ZFS Overview on Linux</title>
      <link>https://blog.lazkani.io/posts/a-quick-zfs-overview-on-linux/</link>
      <pubDate>Mon, 27 Jan 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/a-quick-zfs-overview-on-linux/</guid>
      <description>&lt;p&gt;I have, for years, been interested in &lt;em&gt;file systems&lt;/em&gt;. Specifically a &lt;em&gt;file system&lt;/em&gt; to run my personal systems on. For most people &lt;strong&gt;Ext4&lt;/strong&gt; is good enough and that is totally fine. But, as a power user, I like to have more control, more features and more options out of my file system.&lt;/p&gt;
&lt;p&gt;I have played with most of file sytsems on Linux, and have been using &lt;strong&gt;Btrfs&lt;/strong&gt; for a few years now. I have worked with NAS systems running on &lt;strong&gt;ZFS&lt;/strong&gt; and have been very impressed by it. The only problem is that &lt;strong&gt;ZFS&lt;/strong&gt; wasn&amp;rsquo;t been well suppored on Linux at the time. &lt;strong&gt;Btrfs&lt;/strong&gt; promissed to be the &lt;strong&gt;ZFS&lt;/strong&gt; replacement for Linux nativetly, especially that it was backed up by a bunch of the giants like Oracle and RedHat. My decision at that point was made, and yes that was before RedHat&amp;rsquo;s support for &lt;strong&gt;XFS&lt;/strong&gt; which is impressive on its own. Recently though, a new project gave everyone hope. &lt;a href=&#34;http://www.open-zfs.org/wiki/Main%5FPage&#34;&gt;OpenZFS&lt;/a&gt; came to life and so did &lt;a href=&#34;https://zfsonlinux.org/&#34;&gt;ZFS on Linux&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>My Path Down The Road of Cloudflare&#39;s Redirect Loop</title>
      <link>https://blog.lazkani.io/posts/my-path-down-the-road-of-cloudflare-s-redirect-loop/</link>
      <pubDate>Mon, 27 Jan 2020 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/my-path-down-the-road-of-cloudflare-s-redirect-loop/</guid>
      <description>&lt;p&gt;I have used &lt;strong&gt;Cloudflare&lt;/strong&gt; as my &lt;em&gt;DNS manager&lt;/em&gt; for years, specifically because it offers &lt;strong&gt;API&lt;/strong&gt; that works with &lt;strong&gt;certbot&lt;/strong&gt;.
This setup has worked very well for me so far.
The only thing that kept bothering me is that every time I turn on the &lt;em&gt;CDN&lt;/em&gt; capability on my &lt;strong&gt;Cloudflare&lt;/strong&gt; , I get a loor error.
That&amp;rsquo;s weird.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>The Story Behind cmw</title>
      <link>https://blog.lazkani.io/posts/the-story-behind-cmw/</link>
      <pubDate>Sat, 31 Aug 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/the-story-behind-cmw/</guid>
      <description>&lt;p&gt;A few days ago, &lt;a href=&#34;https://kushaldas.in&#34;&gt;Kushal Das&lt;/a&gt; shared a curl command.&lt;/p&gt;
&lt;p&gt;The command was as follows:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;$ curl https://wttr.in/
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;I, obviously, was curious.
I ran it and it was interesting.
So it returns the weather right ? Pretty cool huh!&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Git! Rebase and Strategies</title>
      <link>https://blog.lazkani.io/posts/git-rebase-and-strategies/</link>
      <pubDate>Sat, 10 Aug 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/git-rebase-and-strategies/</guid>
      <description>&lt;p&gt;In the previous topic, I talked about git remotes because it felt
natural after branching and merging.&lt;/p&gt;
&lt;p&gt;Now, the time has come to talk a little bit about &lt;code&gt;rebase&lt;/code&gt; and some good
cases to use it for.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Git! Remotes…</title>
      <link>https://blog.lazkani.io/posts/git-remotes/</link>
      <pubDate>Wed, 07 Aug 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/git-remotes/</guid>
      <description>In the previous post, we talked about branching and merging. We will say a few last words on branches in this post and dive into remotes.
What are remotes ? What are they for ? How are they used ?
Coming right up.
Requirements In this post, we will need another requirement.
 First, you obviously need git. Second, you will need a git repository on a git server. Easier way is to create an account on Gitlab, GitHub or other similar services.</description>
    </item>
    
    <item>
      <title>Git! Branching and Merging</title>
      <link>https://blog.lazkani.io/posts/git-branching-and-merging/</link>
      <pubDate>Thu, 01 Aug 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/git-branching-and-merging/</guid>
      <description>&lt;p&gt;In the previous post about &lt;em&gt;git&lt;/em&gt;, we had a look at what &lt;em&gt;git&lt;/em&gt; is and got our feet wet with a bit of it.
In this post, I will be moving forward with the topic, I will be talking about branches, how to work with them and finally what merging is and how it works.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Git! First Steps…</title>
      <link>https://blog.lazkani.io/posts/git-first-steps/</link>
      <pubDate>Mon, 22 Jul 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/git-first-steps/</guid>
      <description>&lt;p&gt;The topic of &lt;em&gt;git&lt;/em&gt; came up recently a lot at work. Questions were asked about why I like to do what I do and the reasoning beind.
Today, I joined &lt;code&gt;#dgplug&lt;/code&gt; on &lt;a href=&#34;https://freenode.net/&#34;&gt;freenode&lt;/a&gt; and it turns out it was class time and the topic is &lt;em&gt;git&lt;/em&gt; and writing a post on it.&lt;/p&gt;
&lt;p&gt;Which got me thinking&amp;hellip; Why not do that ?&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Deploying Helm in your Kubernetes Cluster</title>
      <link>https://blog.lazkani.io/posts/deploying-helm-in-your-kubernetes-cluster/</link>
      <pubDate>Sat, 16 Mar 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/deploying-helm-in-your-kubernetes-cluster/</guid>
      <description>&lt;p&gt;In the previous post in the &lt;em&gt;kubernetes&lt;/em&gt; series, we deployed a small &lt;em&gt;kubernetes&lt;/em&gt; cluster locally on &lt;em&gt;KVM&lt;/em&gt;. In future posts we will be deploying more things into the cluster. This will enable us to test different projects, ingresses, service meshes, and more from the open source community, build specifically for &lt;em&gt;kubernetes&lt;/em&gt;. To help with this future quest, we will be leveraging a kubernetes package manager. You&amp;rsquo;ve read it right, helm is a kubernetes package manager. Let&amp;rsquo;s get started shall we ?&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Local Kubernetes Cluster on KVM</title>
      <link>https://blog.lazkani.io/posts/local-kubernetes-cluster-on-kvm/</link>
      <pubDate>Sun, 17 Feb 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/local-kubernetes-cluster-on-kvm/</guid>
      <description>&lt;p&gt;I wanted to explore &lt;em&gt;kubernetes&lt;/em&gt; even more for myself and for this blog. I&amp;rsquo;ve worked on pieces of this at work but not the totality of the work which I would like to understand for myself. I wanted, also to explore new tools and ways to leverage the power of &lt;em&gt;kubernetes&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;So far, I have been using &lt;em&gt;minikube&lt;/em&gt; to do the deployments but there is an inherit restriction that comes with using a single bundled node. Sure, it is easy to get it up and running but at some point I had to use &lt;code&gt;nodePort&lt;/code&gt; to go around the IP restriction. This is a restriction that you will have in an actual &lt;em&gt;kubernetes&lt;/em&gt; cluster but I will show you later how to go around it. For now, let&amp;rsquo;s just get a local cluster up and running.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Your First Minikube Helm Deployment</title>
      <link>https://blog.lazkani.io/posts/your-first-minikube-helm-deployment/</link>
      <pubDate>Sun, 10 Feb 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/your-first-minikube-helm-deployment/</guid>
      <description>&lt;p&gt;In the last post, we have configured a basic &lt;em&gt;minikube&lt;/em&gt; cluster. In this post we will deploy a few items we will need in a cluster and maybe in the future, experiment with it a bit.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Minikube Setup</title>
      <link>https://blog.lazkani.io/posts/minikube-setup/</link>
      <pubDate>Sat, 09 Feb 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/minikube-setup/</guid>
      <description>&lt;p&gt;If you have ever worked with &lt;em&gt;kubernetes&lt;/em&gt;, you&amp;rsquo;d know that minikube out of the box does not give you what you need for a quick setup. I&amp;rsquo;m sure you can go &lt;code&gt;minikube start&lt;/code&gt;, everything&amp;rsquo;s up&amp;hellip; Great&amp;hellip; &lt;code&gt;kubectl get pods -n kube-system&lt;/code&gt;&amp;hellip; It works, let&amp;rsquo;s move on&amp;hellip;&lt;/p&gt;
&lt;p&gt;But what if it&amp;rsquo;s not let&amp;rsquo;s move on to something else. We need to look at this as a local test environment in capabilities. We can learn so much from it before applying to the lab. But, as always, there are a few tweaks we need to perform to give it the magic it needs to be a real environment.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Ansible testing with Molecule</title>
      <link>https://blog.lazkani.io/posts/ansible-testing-with-molecule/</link>
      <pubDate>Fri, 11 Jan 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/ansible-testing-with-molecule/</guid>
      <description>&lt;p&gt;When I first started using &lt;a href=&#34;https://www.ansible.com/&#34;&gt;ansible&lt;/a&gt;, I did not know about &lt;a href=&#34;https://molecule.readthedocs.io/en/latest/&#34;&gt;molecule&lt;/a&gt;. It was a bit daunting to start a &lt;em&gt;role&lt;/em&gt; from scratch and trying to develop it without having the ability to test it. Then a co-worker of mine told me about molecule and everything changed.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Weechat, SSH and Notification</title>
      <link>https://blog.lazkani.io/posts/weechat-ssh-and-notification/</link>
      <pubDate>Tue, 01 Jan 2019 00:00:00 +0000</pubDate>
      
      <guid>https://blog.lazkani.io/posts/weechat-ssh-and-notification/</guid>
      <description>&lt;p&gt;I have been on IRC for as long as I have been using &lt;em&gt;Linux&lt;/em&gt; and that is a long time. Throughout the years, I have moved between &lt;em&gt;terminal IRC&lt;/em&gt; clients. In this current iteration, I am using &lt;a href=&#34;https://weechat.org/&#34;&gt;Weechat&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    
  </channel>
</rss>
