<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>in ♥️ with linux</title>
    <link>https://inlovewithlinux.com/</link>
    <description>After 20 years with macOS, I returned to Linux &lt;span&gt;many&lt;/span&gt; days ago, including &lt;strong&gt;some&lt;/strong&gt; days without hopping  on openSUSE.</description>
    <pubDate>Wed, 09 Sep 2026 12:15:55 +0200</pubDate>
    <item>
      <title>1000 happy and open days</title>
      <link>https://inlovewithlinux.com/1000-happy-and-open-days</link>
      <description>&lt;![CDATA[Disclaimer: If this post comes across as Apple-bashing, I apologize. That’s not my intention! I had a lot of fun with the Mac and enjoyed my time with that system.&#xA;&#xA;But exactly 1000 days ago, I switched back from Mac to Linux. Without a doubt, the best decision I could have made as a tech enthusiast.&#xA;&#xA;Redhat 6.1&#xA;&#xA;I was already a Linux user in the late 90s and early 2000s (SuSE 5.1, Redhat 6, Mandrake, and Slackware), but then the Mac became too tempting with the iBook 12 G4. What a dream device! Additionally, macOS appealed as an &#34;easy-to-use&#34; Unix system.&#xA;&#xA;Even though I had already been experimenting in the last years with Linux again on an &#34;old&#34; Thinkpad T460 and the MNT Pocket Reform, my main computer was still a MacBook.&#xA;&#xA;Then, exactly 1000 days ago, a Tuxedo Pulse 14 finally replaced the MacBook as my main device.&#xA;&#xA;Although it was a good choice, the hardware has since been replaced multiple times. But Linux has always remained.&#xA;&#xA;Current hardware includes a self-built AMD desktop with an orange case and a Framework 12 as my laptop. The home server is a HPE ProLiant MicroServer Gen10.&#xA;&#xA;Redhat 6.1&#xA;&#xA;Of course, I’ve been actively hopping distros during this time.&#xA;&#xA;On the desktop: Fedora → Debian Stable → openSUSE Tumbleweed → Debian Stable → openSUSE Tumbleweed&#xA;On the server: Debian Stable → openSUSE Slowroll → Debian Stable&#xA;&#xA;openSUSE Tumbleweed seems to be the winner ... for now.&#xA;&#xA;The same hopping around happened on the desktop environment: GNOME → SWAY → NIRI → GNOME → NIRI / GNOME&#xA;&#xA;From a purely emotional perspective, I think GNOME will win out in the long run.&#xA;&#xA;At first, I took the GNOME beginner’s route and installed a ton of extensions because things were missing. By now, I feel like I understand the GNOME way (and it’s fantastic!), and I only run two extensions: Caffeine and Audio Switch Shortcuts. No unnecessary stuff or UI clutter.&#xA;&#xA;But NIRI is also used frequently. To me, NIRI and GNOME feel like closely related cousins ;)&#xA;A GNOME with integrated NIRI will remain an unfulfilled dream.&#xA;&#xA;SWAY also continues to tempt me daily with its sleek system access.&#xA;&#xA;KDE is also frequently installed and uninstalled. I understand the approach, but I just can&#39;t warm up to the design.&#xA;&#xA;That’s the beauty of Linux: the freedom to choose from a variety of desktops that can be installed in parallel. The apps don’t care what they run on or in.&#xA;&#xA;The same freedom applies to hardware. Apple builds fantastic laptops! But I was limited to one manufacturer. If they did something (even ethically) that I didn’t like, I was stuck. With Linux, I don’t have this problem: I can simply buy from someone else next time.&#xA;&#xA;This is currently the case with my Framework 12. I like the device, but I don’t like all the projects the company currently backs. So, for my next purchase, I can decide whether it will be another Framework or a device from a different manufacturer.&#xA;&#xA;Switching to Linux also had the wonderful side effect of changing the ecosystem around me. iOS was replaced by free Android alternatives: via e/OS and iodeOS, I landed on GrapheneOS.&#xA;Currently, I&#39;m even playing around with SailfishOS.&#xA;&#xA;Services have also changed: my music streams via Navidrome, and my family organizes photos using ente. KeepassXC and KeepassDX replaced 1Password.&#xA;&#xA;Even home automation switched from HomeKit to Home Assistant.&#xA;&#xA;So, 1000 happy days with the decision to switch—and never going back to proprietary! It wasn’t always a painless transition. But it was worth it.]]&gt;</description>
      <content:encoded><![CDATA[<p><strong>Disclaimer:</strong> If this post comes across as Apple-bashing, I apologize. That’s not my intention! I had a lot of fun with the Mac and enjoyed my time with that system.</p>

<p><strong>But exactly 1000 days ago, I switched back from Mac to Linux.</strong> Without a doubt, the best decision I could have made as a tech enthusiast.</p>

<p><img src="/posts/260825/redhat.jpg" alt="Redhat 6.1"></p>

<p>I was already a Linux user in the late 90s and early 2000s (<strong>SuSE 5.1</strong>, <strong>Redhat 6</strong>, <a href="https://en.wikipedia.org/wiki/Mandriva_Linux">Mandrake</a>, and <a href="http://www.slackware.com">Slackware</a>), but then the Mac became too tempting with the <a href="https://en.wikipedia.org/wiki/IBook">iBook 12 G4</a>. What a dream device! Additionally, macOS appealed as an “easy-to-use” Unix system.</p>

<p>Even though I had already been experimenting in the last years with Linux again on an “old” <strong>Thinkpad T460</strong> and the <a href="https://shop.mntre.com/products/mnt-pocket-reform">MNT Pocket Reform</a>, my main computer was still a MacBook.</p>

<p>Then, exactly 1000 days ago, a <a href="https://www.tuxedocomputers.com/en/TUXEDO-Pulse-14-Gen3">Tuxedo Pulse 14</a> finally replaced the MacBook as my main device.</p>

<p>Although it was a good choice, the hardware has since been replaced multiple times. But Linux has always remained.</p>

<p>Current hardware includes a self-built <strong>AMD desktop with an orange case</strong> and a <a href="https://frame.work/de/en/laptop12">Framework 12</a> as my laptop. The home server is a <strong>HPE ProLiant MicroServer Gen10</strong>.</p>

<p><img src="/posts/260825/desktop.jpg" alt="Redhat 6.1"></p>

<p>Of course, I’ve been actively hopping <strong>distros</strong> during this time.</p>

<p><strong>On the desktop:</strong> <a href="https://fedoraproject.org/">Fedora</a> → <a href="https://www.debian.org/">Debian Stable</a> → <a href="https://get.opensuse.org/tumbleweed/">openSUSE Tumbleweed</a> → <a href="https://www.debian.org/">Debian Stable</a> → <a href="https://get.opensuse.org/tumbleweed/">openSUSE Tumbleweed</a>
<strong>On the server:</strong> <a href="https://www.debian.org/">Debian Stable</a> → <a href="https://en.opensuse.org/Portal:Slowroll">openSUSE Slowroll</a> → <a href="https://www.debian.org/">Debian Stable</a></p>

<p><a href="https://get.opensuse.org/tumbleweed/">openSUSE Tumbleweed</a> seems to be the winner ... for now.</p>

<p>The same hopping around happened on the <strong>desktop environment:</strong> <a href="https://www.gnome.org/">GNOME</a> → <a href="https://swaywm.org/">SWAY</a> → <a href="https://github.com/niri-wm/niri">NIRI</a> → <a href="https://www.gnome.org/">GNOME</a> → <a href="https://github.com/niri-wm/niri">NIRI</a> / <a href="https://www.gnome.org/">GNOME</a></p>

<p>From a purely emotional perspective, I think <a href="https://www.gnome.org/">GNOME</a> will win out in the long run.</p>

<p>At first, I took the GNOME beginner’s route and installed a ton of extensions because things were missing. By now, I feel like I understand the GNOME way (and it’s fantastic!), and I only run two extensions: <a href="https://extensions.gnome.org/extension/517/caffeine/">Caffeine</a> and <a href="https://extensions.gnome.org/extension/8150/audio-switch-shortcuts/">Audio Switch Shortcuts</a>. No unnecessary stuff or UI clutter.</p>

<p>But <a href="https://github.com/niri-wm/niri">NIRI</a> is also used frequently. To me, <a href="https://github.com/niri-wm/niri">NIRI</a> and <a href="https://www.gnome.org/">GNOME</a> feel like closely related cousins ;)
A <a href="https://www.gnome.org/">GNOME</a> with integrated <a href="https://github.com/niri-wm/niri">NIRI</a> will remain an unfulfilled dream.</p>

<p><a href="https://swaywm.org/">SWAY</a> also continues to tempt me daily with its sleek system access.</p>

<p><a href="https://kde.org/">KDE</a> is also frequently installed and uninstalled. I understand the approach, but I just can&#39;t warm up to the design.</p>

<p><strong>That’s the beauty of Linux:</strong> the freedom to choose from a variety of desktops that can be installed in parallel. The apps don’t care what they run on or in.</p>

<p><strong>The same freedom applies to hardware.</strong> Apple builds fantastic laptops! But I was limited to one manufacturer. If they did something (even ethically) that I didn’t like, I was stuck. With Linux, I don’t have this problem: I can simply buy from someone else next time.</p>

<p>This is currently the case with my <a href="https://frame.work/de/en/laptop12">Framework 12</a>. I like the device, but I don’t like all the projects the company currently backs. So, for my next purchase, I can decide whether it will be another Framework or a device from a different manufacturer.</p>

<p><strong>Switching to Linux also had the wonderful side effect of changing the ecosystem around me.</strong> iOS was replaced by free Android alternatives: via <a href="https://e.foundation/e-os/">e/OS</a> and <a href="https://iode.tech/iodeos/">iodeOS</a>, I landed on <a href="https://grapheneos.org/">GrapheneOS</a>.
Currently, I&#39;m even playing around with <a href="https://sailfishos.org/">SailfishOS</a>.</p>

<p><strong>Services</strong> have also changed: my music streams via <a href="https://www.navidrome.org/">Navidrome</a>, and my family organizes photos using <a href="https://ente.com/">ente</a>. <a href="https://keepassxc.org/">KeepassXC</a> and <a href="https://www.keepassdx.com/">KeepassDX</a> replaced 1Password.</p>

<p>Even <strong>home automation</strong> switched from HomeKit to <a href="https://www.home-assistant.io/">Home Assistant</a>.</p>

<p>So, 1000 happy days with the decision to switch—and never going back to proprietary! It wasn’t always a painless transition. But it was worth it.</p>
]]></content:encoded>
      <guid>https://inlovewithlinux.com/1000-happy-and-open-days</guid>
      <pubDate>Tue, 25 Aug 2026 06:42:56 +0200</pubDate>
    </item>
    <item>
      <title>fix firefox glitch</title>
      <link>https://inlovewithlinux.com/fix-firefox-glitch</link>
      <description>&lt;![CDATA[Firefox (or Librewolf) has an annoying glitch on my systems under GNOME at 150% screen scaling. A black line at the top edge that occasionally appears. Actually the line has no opacity.&#xA;&#xA;Glitch&#xA;(The image was altered to make the glitch more visible)&#xA;&#xA;This drives my mad, so I choose a simple solution: fix it with a custom theme!&#xA;&#xA;I use the ADW-GTK3 theme for GTK3 apps, so simple theme which includes ADW-GTK3 (installed in ~/.local/themes/adw-gtk3/) works great.&#xA;&#xA;I call the theme rounded (because of the corners) and it is installed in ~/.local/themes/rounded/gtk-3.0/. There create a gtk.css.&#xA;&#xA;@import url(&#34;../../adw-gtk3/gtk-3.0/gtk.css&#34;);&#xA;&#xA;window decoration {&#xA;  border-radius: 15px;&#xA;  box-shadow:&#xA;    0 3px 8px 0 rgba(0, 0, 0, 0.3), &#xA;    0 0 0 0 @headerbarbgcolor;  &#xA;}&#xA;&#xA;For a first test start firefox via terminal:&#xA;&#xA;env GTKTHEME=rounded firefox&#xA;&#xA;or&#xA;&#xA;env GTKTHEME=rounded librewolf&#xA;&#xA;NoGlitch&#xA;&#xA;To make the fix permanent, simply modify the .desktop file.&#xA;&#xA;Firefox:&#xA;&#xA;cp /usr/share/applications/firefox.desktop ~/.local/share/applications/&#xA;&#xA;Then, in the firefox.desktop file, change the Exec line to the following:&#xA;&#xA;Exec=env GTKTHEME=rounded firefox %u&#xA;&#xA;Librewolf:&#xA;&#xA;cp /usr/share/applications/librewolf.desktop ~/.local/share/applications/&#xA;&#xA;Then, in the librewolf.desktop file, change the Exec line to the following:&#xA;&#xA;Exec=env GTKTHEME=rounded librewolf %u&#xA;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p><a href="https://www.firefox.com/">Firefox</a> (or <a href="https://librewolf.net/">Librewolf</a>) has an annoying glitch on my systems under GNOME at 150% screen scaling. A black line at the top edge that occasionally appears. Actually the line has no opacity.</p>

<p><img src="/posts/260822/glitch-min.png" alt="Glitch">
(<em>The image was altered to make the glitch more visible</em>)</p>

<p>This drives my mad, so I choose a simple solution: fix it with a custom theme!</p>

<p>I use the <a href="https://github.com/lassekongo83/adw-gtk3">ADW-GTK3</a> theme for GTK3 apps, so simple theme which includes ADW-GTK3 (installed in ~/.local/themes/adw-gtk3/) works great.</p>

<p>I call the theme rounded (because of the corners) and it is installed in <strong>~/.local/themes/rounded/gtk-3.0/</strong>. There create a <strong>gtk.css</strong>.</p>

<pre><code>@import url(&#34;../../adw-gtk3/gtk-3.0/gtk.css&#34;);

window decoration {
  border-radius: 15px;
  box-shadow:
    0 3px 8px 0 rgba(0, 0, 0, 0.3), 
    0 0 0 0 @headerbar_bg_color;  
}
</code></pre>

<p>For a first test start firefox via terminal:</p>

<p><code>env GTK_THEME=rounded firefox</code></p>

<p>or</p>

<p><code>env GTK_THEME=rounded librewolf</code></p>

<p><img src="/posts/260822/noglitch-min.png" alt="NoGlitch"></p>

<p>To make the fix permanent, simply modify the <code>.desktop</code> file.</p>

<p><strong>Firefox:</strong></p>

<p><code>cp /usr/share/applications/firefox.desktop ~/.local/share/applications/</code></p>

<p>Then, in the <strong>firefox.desktop</strong> file, change the <strong>Exec</strong> line to the following:</p>

<p><code>Exec=env GTK_THEME=rounded firefox %u</code></p>

<p><strong>Librewolf:</strong></p>

<p><code>cp /usr/share/applications/librewolf.desktop ~/.local/share/applications/</code></p>

<p>Then, in the <strong>librewolf.desktop</strong> file, change the <strong>Exec</strong> line to the following:</p>

<p><code>Exec=env GTK_THEME=rounded librewolf %u</code></p>
]]></content:encoded>
      <guid>https://inlovewithlinux.com/fix-firefox-glitch</guid>
      <pubDate>Sat, 22 Aug 2026 17:34:35 +0200</pubDate>
    </item>
    <item>
      <title>SyncGNOME - shamefull vibe-coding</title>
      <link>https://inlovewithlinux.com/syncgnome-shamefull-vibe-coding</link>
      <description>&lt;![CDATA[I have a very ambivalent relationship with AI. I don’t think system-critical software should be programmed by AI alone. But as a tool for &#34;dumb&#34; tasks, I find it practical nowadays—if it weren’t for the other downsides (energy consumption, RAM prices, etc.).&#xA;&#xA;So, it’s basically hypocritical that I have AI write small scripts for me... but it’s just so easy.&#xA;&#xA;The starting point&#xA;I use two computers in my daily life: a desktop and a laptop. I sync many dotfiles between them using chezmoi, but since GNOME stores its settings in dconf, I need a tool for that. Preferably with a UI that integrates into GNOME.&#xA;&#xA;syncGNOME&#xA;syncGNOME is a simple little Python app that allows importing or exporting entries from dconf via git. The corresponding entries can be added to a config file, as well as paths that should be excluded—like my wallpaper settings, for example.&#xA;Additionally, the device name in gsconnect can be set to the hostname. Maybe that’s very specific to my use case.&#xA;&#xA;SyncGNOME&#xA;&#xA;Update&#xA;&#xA;Because of the AI policy of Codeberg I removed the file.&#xA;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>I have a very ambivalent relationship with AI. I don’t think system-critical software should be programmed by AI alone. But as a tool for “dumb” tasks, I find it practical nowadays—if it weren’t for the other downsides (energy consumption, RAM prices, etc.).</p>

<p>So, it’s basically hypocritical that I have AI write small scripts for me... but it’s just so easy.</p>

<h2 id="the-starting-point">The starting point</h2>

<p>I use two computers in my daily life: a desktop and a laptop. I sync many dotfiles between them using chezmoi, but since GNOME stores its settings in dconf, I need a tool for that. Preferably with a UI that integrates into GNOME.</p>

<h2 id="syncgnome">syncGNOME</h2>

<p>syncGNOME is a simple little Python app that allows importing or exporting entries from dconf via git. The corresponding entries can be added to a config file, as well as paths that should be excluded—like my wallpaper settings, for example.
Additionally, the device name in gsconnect can be set to the hostname. Maybe that’s very specific to my use case.</p>

<p><img src="/posts/260712/syncgnome.jpg" alt="SyncGNOME"></p>

<h2 id="update">Update</h2>

<p>Because of the AI policy of Codeberg I removed the file.</p>
]]></content:encoded>
      <guid>https://inlovewithlinux.com/syncgnome-shamefull-vibe-coding</guid>
      <pubDate>Fri, 10 Jul 2026 12:22:17 +0200</pubDate>
    </item>
    <item>
      <title>in love with scrollable tiling</title>
      <link>https://inlovewithlinux.com/in-love-with-scrollable-tiling</link>
      <description>&lt;![CDATA[I can&#39;t imagine any other window system anymore except for scrollable tiling—the display of windows side by side on an endless strip. For me, it&#39;s the perfect system.&#xA;&#xA;The most well-known example by now is Niri, of which I&#39;m a big fan.&#xA;&#xA;Niri is fast, simple, and powerful to configure, but it needs an ecosystem around it: panel, dock, wallpaper, screen locker, and so on.&#xA;&#xA;With programs like waybar, quickshell, swaybg, or swaylock, there’s a lot that makes Niri perfect. In short: I love Niri.&#xA;&#xA;Niri&#xA;&#xA;But what I love even more is the ecosystem and, above all, the general approach to usability in GNOME. I find the use of the dock particularly brilliant. GNOME seems to have been created exactly for my way of thinking.&#xA;&#xA;GNOME&#xA;&#xA;Now, GNOME doesn’t offer scrollable tiling, but there is an extension that, among other things, also served as inspiration for Niri: PaperWM&#xA;&#xA;PaperWM&#xA;&#xA;In PaperWM you can configure a huge, huge, huge amount. The settings might overwhelm you a bit at first, but gradually, you can build a wonderful scrollable tiling experience for GNOME.&#xA;&#xA;PaperWM&#xA;&#xA;You can also adjust settings individually for specific programs using the window class or window title. For example, Tuba and Fractal both have 50% width and share workspace 2 for me.&#xA;&#xA;PaperWM&#xA;&#xA;Because of the dream combination of GNOME and scrollable tiling, PaperWM is currently my first choice...]]&gt;</description>
      <content:encoded><![CDATA[<p>I can&#39;t imagine any other window system anymore except for scrollable tiling—the display of windows side by side on an endless strip. For me, it&#39;s the perfect system.</p>

<p>The most well-known example by now is <a href="https://github.com/niri-wm/niri">Niri</a>, of which I&#39;m a big fan.</p>

<p><a href="https://github.com/niri-wm/niri">Niri</a> is fast, simple, and powerful to configure, but it needs an ecosystem around it: panel, dock, wallpaper, screen locker, and so on.</p>

<p>With programs like waybar, quickshell, swaybg, or swaylock, there’s a lot that makes Niri perfect. In short: I love Niri.</p>

<p><img src="/posts/260706/niri.jpg" alt="Niri"></p>

<p>But what I love even more is the ecosystem and, above all, the general approach to usability in <a href="https://www.gnome.org/">GNOME</a>. I find the use of the dock particularly brilliant. GNOME seems to have been created exactly for my way of thinking.</p>

<p><img src="/posts/260706/gnome.jpg" alt="GNOME"></p>

<p>Now, GNOME doesn’t offer scrollable tiling, but there is an extension that, among other things, also served as inspiration for Niri: <a href="https://github.com/paperwm/PaperWM">PaperWM</a></p>

<p><img src="/posts/260706/paperwm01.jpg" alt="PaperWM"></p>

<p>In <a href="https://github.com/paperwm/PaperWM">PaperWM</a> you can configure a huge, huge, huge amount. The settings might overwhelm you a bit at first, but gradually, you can build a wonderful scrollable tiling experience for GNOME.</p>

<p><img src="/posts/260706/paperwm02.jpg" alt="PaperWM"></p>

<p>You can also adjust settings individually for specific programs using the window class or window title. For example, Tuba and Fractal both have 50% width and share workspace 2 for me.</p>

<p><img src="/posts/260706/paperwm03.jpg" alt="PaperWM"></p>

<p>Because of the dream combination of GNOME and scrollable tiling, PaperWM is currently my first choice...</p>
]]></content:encoded>
      <guid>https://inlovewithlinux.com/in-love-with-scrollable-tiling</guid>
      <pubDate>Mon, 06 Jul 2026 14:14:03 +0200</pubDate>
    </item>
    <item>
      <title>1-year debian: no fifth month</title>
      <link>https://inlovewithlinux.com/1-year-debian-no-fifth-month</link>
      <description>&lt;![CDATA[My 1-year challenge of using Debian has unfortunately failed. It’s not Debian’s fault, but rather my desktop’s. I kept having crashes and freezes while using GNOME under Wayland. Xorg works fine, but I just don’t want to use Xorg anymore.&#xA;&#xA;I&#39;m pretty sure everything is fixed in Testing or Sid, but then I might as well just go back to openSUSE as a rolling release.&#xA;&#xA;I finally did that and I&#39;m really excited about it. What&#39;s interesting is that I&#39;m not going back to tiling managers like Niri (like I used to). I&#39;m sticking with GNOME. Version 50 especially feels really smooth.&#xA;&#xA;I&#39;m a bit sad, because at heart, Debian was perfect in every way. Just not perfect for my specific hardware...]]&gt;</description>
      <content:encoded><![CDATA[<p>My 1-year challenge of using Debian has unfortunately failed. It’s not Debian’s fault, but rather my desktop’s. I kept having crashes and freezes while using GNOME under Wayland. Xorg works fine, but I just don’t want to use Xorg anymore.</p>

<p>I&#39;m pretty sure everything is fixed in Testing or Sid, but then I might as well just go back to openSUSE as a rolling release.</p>

<p>I finally did that and I&#39;m really excited about it. What&#39;s interesting is that I&#39;m not going back to tiling managers like Niri (like I used to). I&#39;m sticking with GNOME. Version 50 especially feels really smooth.</p>

<p>I&#39;m a bit sad, because at heart, Debian was perfect in every way. Just not perfect for my specific hardware...</p>
]]></content:encoded>
      <guid>https://inlovewithlinux.com/1-year-debian-no-fifth-month</guid>
      <pubDate>Fri, 29 May 2026 22:13:24 +0200</pubDate>
    </item>
    <item>
      <title>Unify GTK3 and GTK4 - Firefox</title>
      <link>https://inlovewithlinux.com/unify-gtk3-and-gtk4-firefox</link>
      <description>&lt;![CDATA[Small disclaimer: Since I&#39;m using Debian Stable, I&#39;m still on GNOME 48. Some of my issues might already be fixed in the latest version...&#xA;&#xA;Personally, I think libadwaita&#39;s design language is the best thing that could happen to a UI. Kind of like Apple back in the day. I just love the look of GTK4 and Adwaita.&#xA;&#xA;adw-gtk3&#xA;&#xA;Since many great apps still use GTK3, adw-gtk3 is a good theme to make those apps look more similar to GTK4.&#xA;It doesn’t quite work because GTK3 only has rounded corners at the top of the window, while GTK4 has all corners rounded. You could tweak it to match, but it wouldn’t make sense since GTK3 apps often have a status bar at the bottom of the window.&#xA;&#xA;Geany in stock Gtk3&#xA;&#xA;Geany in adw-gtk3&#xA;&#xA;I just installed the gtk-3.0 files, because I have no need for tweaking GTK4.&#xA;&#xA;tweaking Firefox (or Librewolf)&#xA;&#xA;Firefox (or in my case, Librewolf) also still uses GTK3 but can have rounded corners at the bottom as well.&#xA;You just need to enable it via about:config.&#xA;Just set widget.gtk.rounded-bottom-corners.enabled to true.&#xA;&#xA;Firefox in stock GTK3&#xA;&#xA;Firefox in adw-gtk3&#xA;&#xA;fixing glitches&#xA;&#xA;Since adw-gtk3 isn’t designed with this in mind (round corners in the bottom), we still need to do a bit of manual tweaking to avoid display issues.&#xA;&#xA;corner glitch&#xA;&#xA;I also have a scaling glitch. On my laptop with 125% UI scaling, Firefox looks good, but on my desktop with 150%, I unfortunately often get a display glitch when moving the window. A dark line appears at the top of the window. This, as mentioned, is under GNOME 48 and only happens with Firefox/Librewolf on my setup (but maybe on yours too).&#xA;&#xA;The solution is both complicated and simple at the same time:&#xA;&#xA;Firefox gets its own GTK theme, which modifies adw-gtk3.&#xA;&#xA;The theme add border-radius and disables the 1px border that causes the glitch.&#xA;&#xA;The &#34;theme&#34; uses a gtk.css file, and for me, it&#39;s located in ~/.local/share/themes/gtk-3.0/.&#xA;&#xA;It assumes that adw-gtk3 is also in ~/.local/share/themes. Otherwise, the path needs to be adjusted.&#xA;&#xA;@import url(&#34;../../adw-gtk3/gtk-3.0/gtk.css&#34;);&#xA;decoration {&#xA;  border-radius: 15px;&#xA;  box-shadow:&#xA;    0 3px 8px 0 rgba(0, 0, 0, 0.3),&#xA;    0 0 0 0 @headerbarbgcolor;&#xA;}&#xA;&#xA;Now we just need to start Firefox individually with this theme. That works with&#xA;&#xA;env GTKTHEME=rounded firefox&#xA;&#xA;For a permanent fix, we copy the relevant .desktop file from /usr/share/applications/ to ~/.local/share/applications/ an adjust the Exec entries to&#xA;&#xA;Exec=env GTKTHEME=rounded /usr/lib/firefox-esr/firefox-esr %u&#xA;&#xA;For Librewolf, of course, the corresponding launcher needs to be adjusted.&#xA;&#xA;Firefox fixed]]&gt;</description>
      <content:encoded><![CDATA[<p><strong>Small disclaimer:</strong> Since I&#39;m using Debian Stable, I&#39;m still on GNOME 48. Some of my issues might already be fixed in the latest version...</p>

<p>Personally, I think libadwaita&#39;s design language is the best thing that could happen to a UI. Kind of like Apple back in the day. I just love the look of GTK4 and Adwaita.</p>

<h2 id="adw-gtk3">adw-gtk3</h2>

<p>Since many great apps still use GTK3, <a href="https://github.com/lassekongo83/adw-gtk3">adw-gtk3</a> is a good theme to make those apps look more similar to GTK4.
It doesn’t quite work because GTK3 only has rounded corners at the top of the window, while GTK4 has all corners rounded. You could tweak it to match, but it wouldn’t make sense since GTK3 apps often have a status bar at the bottom of the window.</p>

<p><img src="/posts/260525/geany1-min.png" alt="Geany in stock Gtk3"></p>

<p><img src="/posts/260525/geany2-min.png" alt="Geany in adw-gtk3"></p>

<p>I just installed the gtk-3.0 files, because I have no need for tweaking GTK4.</p>

<h2 id="tweaking-firefox-or-librewolf">tweaking Firefox (or Librewolf)</h2>

<p>Firefox (or in my case, Librewolf) also still uses GTK3 but can have rounded corners at the bottom as well.
You just need to enable it via <strong>about:config</strong>.
Just set <strong>widget.gtk.rounded-bottom-corners.enabled</strong> to <strong>true</strong>.</p>

<p><img src="/posts/260525/firefox1-min.png" alt="Firefox in stock GTK3"></p>

<p><img src="/posts/260525/firefox2-min.png" alt="Firefox in adw-gtk3"></p>

<h3 id="fixing-glitches">fixing glitches</h3>

<p>Since adw-gtk3 isn’t designed with this in mind (round corners in the bottom), we still need to do a bit of manual tweaking to avoid display issues.</p>

<p><img src="/posts/260525/ecke-min.png" alt="corner glitch"></p>

<p>I also have a scaling glitch. On my laptop with 125% UI scaling, Firefox looks good, but on my desktop with 150%, I unfortunately often get a display glitch when moving the window. A dark line appears at the top of the window. This, as mentioned, is under GNOME 48 and only happens with Firefox/Librewolf on my setup (but maybe on yours too).</p>

<p>The solution is both complicated and simple at the same time:</p>

<p>Firefox gets its own GTK theme, which modifies adw-gtk3.</p>

<p>The theme add border-radius and disables the 1px border that causes the glitch.</p>

<p>The “theme” uses a <strong>gtk.css</strong> file, and for me, it&#39;s located in <strong>~/.local/share/themes/gtk-3.0/</strong>.</p>

<p>It assumes that <strong>adw-gtk3</strong> is also in <strong>~/.local/share/themes</strong>. Otherwise, the path needs to be adjusted.</p>

<pre><code>@import url(&#34;../../adw-gtk3/gtk-3.0/gtk.css&#34;);
decoration {
  border-radius: 15px;
  box-shadow:
    0 3px 8px 0 rgba(0, 0, 0, 0.3),
    0 0 0 0 @headerbar_bg_color;
}
</code></pre>

<p>Now we just need to start Firefox individually with this theme. That works with</p>

<p><code>env GTK_THEME=rounded firefox</code></p>

<p>For a permanent fix, we copy the relevant <strong>.desktop</strong> file from <strong>/usr/share/applications/</strong> to <strong>~/.local/share/applications/</strong> an adjust the <strong>Exec</strong> entries to</p>

<p><code>Exec=env GTK_THEME=rounded /usr/lib/firefox-esr/firefox-esr %u</code></p>

<p>For Librewolf, of course, the corresponding launcher needs to be adjusted.</p>

<p><img src="/posts/260525/firefox3-min.png" alt="Firefox fixed"></p>
]]></content:encoded>
      <guid>https://inlovewithlinux.com/unify-gtk3-and-gtk4-firefox</guid>
      <pubDate>Mon, 25 May 2026 10:57:35 +0200</pubDate>
    </item>
    <item>
      <title>1-year debian: fourth month</title>
      <link>https://inlovewithlinux.com/1-year-debian-fourth-month</link>
      <description>&lt;![CDATA[Now that I&#39;m four months into my one-year “Don&#39;t Distrohop” Debian challenge, I can say that it continues to prove (to me) that choosing “stable” was the right decision. Basically, though, this applies to every LTS version. Instead of constantly chasing after the latest version (as in a rolling release) and putting my energy into updates and “pimping” the UI, I’d rather learn how to use the “old” version properly.&#xA;&#xA;still stable with a bit of frankendebian&#xA;&#xA;Debian stable, combined with backports and Flatpak, is still enough for me.&#xA;&#xA;I’ve only broken the golden rule that stable and testing must never be mixed (FrankenDebian) for one package: framework-tool&#xA;&#xA;This tool is handy for managing my frame.work 12 from the terminal... the charging limit and stuff like that.&#xA;&#xA;But apt configuration does allow you to set the priority of the sources, so only this one package is installed from the testing repository.&#xA;&#xA;more and more love for GNOME&#xA;&#xA;Even after four months, it’s clear to me that there’s no better desktop environment than GNOME.&#xA;&#xA;Sometimes I feel like the system was built just for me. Sure, there are one or two things I’ve tweaked, but basically, the system is perfect.&#xA;&#xA;The only thing is, it would be nice if GTK3 and GTK4 were a bit more consistent… but it’s fine as it is.&#xA;&#xA;understanding systemd (a bit)&#xA;&#xA;I understand systemd more and more. Whether it&#39;s creating services or reading logs. I don&#39;t know where the hate comes from. I find it quite practical.&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Now that I&#39;m four months into my one-year “Don&#39;t Distrohop” Debian challenge, I can say that it continues to prove (to me) that choosing “stable” was the right decision. Basically, though, this applies to every LTS version. Instead of constantly chasing after the latest version (as in a rolling release) and putting my energy into updates and “pimping” the UI, I’d rather learn how to use the “old” version properly.</p>

<h2 id="still-stable-with-a-bit-of-frankendebian">still stable with a bit of frankendebian</h2>

<p>Debian stable, combined with backports and Flatpak, is still enough for me.</p>

<p>I’ve only broken the golden rule that stable and testing must never be mixed (<a href="https://wiki.debian.org/DontBreakDebian">FrankenDebian</a>) for one package: <a href="https://packages.debian.org/forky/framework-tool">framework-tool</a></p>

<p>This tool is handy for managing my <a href="https://frame.work/de/en/laptop12">frame.work 12</a> from the terminal... the charging limit and stuff like that.</p>

<p>But <a href="https://wiki.debian.org/AptConfiguration">apt configuration</a> does allow you to set the priority of the sources, so only this one package is installed from the testing repository.</p>

<h2 id="more-and-more-love-for-gnome">more and more love for GNOME</h2>

<p>Even after four months, it’s clear to me that there’s no better desktop environment than <a href="https://www.gnome.org">GNOME</a>.</p>

<p>Sometimes I feel like the system was built just for me. Sure, there are one or two things I’ve tweaked, but basically, the system is perfect.</p>

<p>The only thing is, it would be nice if GTK3 and GTK4 were a bit more consistent… but it’s fine as it is.</p>

<h2 id="understanding-systemd-a-bit">understanding systemd (a bit)</h2>

<p>I understand systemd more and more. Whether it&#39;s creating services or reading logs. I don&#39;t know where the hate comes from. I find it quite practical.</p>
]]></content:encoded>
      <guid>https://inlovewithlinux.com/1-year-debian-fourth-month</guid>
      <pubDate>Tue, 12 May 2026 06:30:52 +0200</pubDate>
    </item>
    <item>
      <title>local paperless-ngx</title>
      <link>https://inlovewithlinux.com/local-paperless-ngx</link>
      <description>&lt;![CDATA[Update 26-06-14: added openSUSE tumbleweed&#xA;&#xA;A quick disclaimer: I&#39;m not entirely sure what I&#39;m doing here. This weekend was my first time working with podman. So... try this at your own risk!&#xA;&#xA;a little background first&#xA;On the mac, Devonthink has always been—and still is—the best program ever. Simply because all documents are managed locally on the computer. In other words, the app doesn’t require the cloud.&#xA;When I switched to Linux, it really bothered me that I couldn&#39;t find a suitable alternative. Paperwork, for example, also manages documents locally on the computer, but its design was too basic (in my opinion), and I just couldn&#39;t get into it.&#xA;&#xA;paperless-ngx&#xA;  Paperless-ngx is a community-supported open-source document management system that transforms your physical documents into a searchable online archive so you can keep, well, less paper.&#xA;&#xA;This quote from the homepage describes paperless-ngx pretty well, though the “online” part bothered me a bit.&#xA;I don&#39;t want to store my files online on a server, and keeping them on a local NAS doesn&#39;t make sense either, because then I wouldn&#39;t have them with me when I&#39;m on the go.&#xA;&#xA;solution: local paperless-ngx&#xA;Podman comes to the rescue. Thanks to Podman, I can run Paperless locally on my computers using containers. It was surprisingly easy (I only wasted an entire Saturday experimenting with it).&#xA;&#xA;installation&#xA;&#xA;preparation&#xA;Well, you need podman ... &#xA;&#xA;Debian:&#xA;sudo apt install podman-compose&#xA;&#xA;openSUSE tumbleweed:&#xA;sudo zypper in python314-podman-compose&#xA;&#xA;container setup&#xA;First, you need to create a container using Podman. To do this, you’ll need three files in a folder (in my case, paperless-ngx). This folder is simply located in the user’s home directory.&#xA;&#xA;I mainly followed these instructions on linuxguides.de (thanks for the tip Christian!) and the output of the paperless-ngx installer.&#xA;&#xA;.env (hidden file):&#xA;&#xA;COMPOSEPROJECTNAME=paperless&#xA;&#xA;docker-compose.env:&#xA;&#xA;PAPERLESSTIMEZONE=Europe/Berlin&#xA;PAPERLESSOCRLANGUAGE=deu+eng&#xA;USERMAPUID=0&#xA;USERMAPGID=0&#xA;&#xA;docker-compose.yml:&#xA;&#xA;name: paperless&#xA;services:&#xA;  broker:&#xA;    image: docker.io/library/redis:8&#xA;    restart: unless-stopped&#xA;    volumes:&#xA;      redisdata:/data&#xA;  webserver:&#xA;    image: ghcr.io/paperless-ngx/paperless-ngx:latest&#xA;    restart: unless-stopped&#xA;    dependson:&#xA;      broker&#xA;    ports:&#xA;      &#34;8000:8000&#34;&#xA;    volumes:&#xA;      ~/Dokumente/Paperless/Data:/usr/src/paperless/data:Z&#xA;      ~/Dokumente/Paperless/Media:/usr/src/paperless/media:Z&#xA;      ~/Dokumente/Paperless/Export:/usr/src/paperless/export:Z&#xA;      ~/Dokumente/Paperless/Import:/usr/src/paperless/consume:Z&#xA;    envfile: docker-compose.env&#xA;    environment:&#xA;      PAPERLESSREDIS: redis://broker:6379&#xA;volumes:&#xA;  redisdata:&#xA;&#xA;I decided to use SQLite as the database because it will allow me to easily sync it between my computers later using Synthing.&#xA;&#xA;It is important to adjust the volumes. These are located in my “Documents” folder under “paperless.”&#xA;&#xA;Data: the database&#xA;&#xA;Media: all the files&#xA;&#xA;Export: Export Folder&#xA;&#xA;Import: Drop documents in this folder for adding them&#xA;&#xA;The “paperless” folder contains the entire contents of paperless-ngx, making it very easy to back up or sync.&#xA;&#xA;container compose&#xA;In that folder, just run &#xA;&#xA;Debian:&#xA;podman compose up&#xA;&#xA;openSUSE tumbleweed:&#xA;podman-compose up&#xA;&#xA;and everything will be installed.&#xA;&#xA;start and stop the container&#xA;&#xA;The paperless-ngx container doesn&#39;t need to run all the time—only when I need to access it. So I wrote a little Bash script to start or stop the container.&#xA;Just a quick heads-up: I&#39;m a novice and like to keep things colorful ;)&#xA;&#xA;paperless.sh:&#xA;&#xA;!/bin/bash&#xA;&#xA;set -euo pipefail&#xA;&#xA;Colors&#xA;readonly BLUE=&#39;\033[0;34m&#39;&#xA;readonly RED=&#39;\033[0;31m&#39;&#xA;readonly GREEN=&#39;\033[0;32m&#39;&#xA;readonly YELLOW=&#39;\033[1;33m&#39;&#xA;readonly NC=&#39;\033[0m&#39;&#xA;&#xA;BROKER=&#34;paperlessbroker1&#34;&#xA;WEBSERVER=&#34;paperlesswebserver1&#34;&#xA;&#xA;Check, if container are running&#xA;bothrunning() {&#xA;    [ &#34;$(/usr/bin/podman inspect -f &#39;{{.State.Running}}&#39; &#34;$BROKER&#34; 2  /dev/null)&#34; = &#34;true&#34; ] &amp;&amp;&#xA;    [ &#34;$(/usr/bin/podman inspect -f &#39;{{.State.Running}}&#39; &#34;$WEBSERVER&#34; 2  /dev/null)&#34; = &#34;true&#34; ]&#xA;}&#xA;&#xA;Start Containers&#xA;startcontainers() {&#xA;    echo -e &#34;${YELLOW}🟡 Starting $BROKER${NC}&#34;&#xA;    /usr/bin/podman start &#34;$BROKER&#34;   /dev/null 2  &amp;1&#xA;    sleep 2&#xA;    echo -e &#34;${YELLOW}🟡 Starting $WEBSERVER${NC}&#34;&#xA;    /usr/bin/podman start &#34;$WEBSERVER&#34;   /dev/null 2  &amp;1&#xA;    echo -e &#34;${GREEN}🟢 Both Containers running.${NC}&#34;&#xA;}&#xA;&#xA;Stop Containers&#xA;stopcontainers() {&#xA;    echo -ne &#34;${YELLOW}⚠️  Stop Container? ${NC}&#34;&#xA;    read -p &#34;(j/n) [n]: &#34; answer&#xA;    echo&#xA;    if [ &#34;$answer&#34; = &#34;j&#34; ]; then&#xA;        echo -e &#34;${YELLOW}🟡 Stopping $WEBSERVER${NC}&#34;&#xA;        /usr/bin/podman stop &#34;$WEBSERVER&#34;   /dev/null 2  &amp;1&#xA;        sleep 2&#xA;        echo -e &#34;${YELLOW}🟡 Stopping $BROKER${NC}&#34;&#xA;        /usr/bin/podman stop &#34;$BROKER&#34;   /dev/null 2  &amp;1&#xA;        echo&#xA;        echo -e &#34;${GREEN}🟢 Both Containers are stopped.${NC}&#34;&#xA;    else&#xA;        echo -e &#34;${RED}🔴 Cancel: Containers still running.${NC}&#34;&#xA;    fi&#xA;}&#xA;&#xA;Main&#xA;echo&#xA;echo &#34;### Paperless-ngx - Podman ###&#34;&#xA;echo&#xA;if bothrunning; then&#xA;    stopcontainers&#xA;else&#xA;    startcontainers&#xA;fi&#xA;&#xA;Access Paperless&#xA;&#xA;Just go to http://localhost:8000 in your browser, and everything works perfectly.&#xA;&#xA;Sync and backup&#xA;&#xA;As mentioned earlier, the “Paperless” folder in “Documents” contains everything and can be synced between computers using Syncthing, for example.&#xA;This folder is also very easy to back up.&#xA;&#xA;Manage podman&#xA;&#xA;Of course, you can also do this via the CLI, but I like the simplicity of cockpit, which can also be used on Debian. Cockpit has a handy module for managing Podman.&#xA;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p><strong>Update 26-06-14:</strong> added openSUSE tumbleweed</p>

<p><strong>A quick disclaimer:</strong> I&#39;m not entirely sure what I&#39;m doing here. This weekend was my first time working with <a href="https://podman.io/">podman</a>. So... try this at your own risk!</p>

<h2 id="a-little-background-first">a little background first</h2>

<p>On the mac, <a href="https://www.devontechnologies.com/">Devonthink</a> has always been—and still is—the best program ever. Simply because all documents are managed locally on the computer. In other words, the app doesn’t require the cloud.
When I switched to Linux, it really bothered me that I couldn&#39;t find a suitable alternative. <a href="https://www.openpaper.work/">Paperwork</a>, for example, also manages documents locally on the computer, but its design was too basic (in my opinion), and I just couldn&#39;t get into it.</p>

<h2 id="paperless-ngx">paperless-ngx</h2>

<blockquote><p>Paperless-ngx is a community-supported open-source document management system that transforms your physical documents into a searchable online archive so you can keep, well, less paper.</p></blockquote>

<p>This quote from the homepage describes <a href="https://docs.paperless-ngx.com/">paperless-ngx</a> pretty well, though the “online” part bothered me a bit.
I don&#39;t want to store my files online on a server, and keeping them on a local NAS doesn&#39;t make sense either, because then I wouldn&#39;t have them with me when I&#39;m on the go.</p>

<h2 id="solution-local-paperless-ngx">solution: local paperless-ngx</h2>

<p><a href="https://podman.io/">Podman</a> comes to the rescue. Thanks to Podman, I can run Paperless locally on my computers using containers. It was surprisingly easy (I only wasted an entire Saturday experimenting with it).</p>

<h2 id="installation">installation</h2>

<h3 id="preparation">preparation</h3>

<p>Well, you need podman ...</p>

<p><strong>Debian:</strong>
<code>sudo apt install podman-compose</code></p>

<p><strong>openSUSE tumbleweed:</strong>
<code>sudo zypper in python314-podman-compose</code></p>

<h2 id="container-setup">container setup</h2>

<p>First, you need to create a container using Podman. To do this, you’ll need three files in a folder (in my case, paperless-ngx). This folder is simply located in the user’s home directory.</p>

<p>I mainly followed these instructions on <a href="https://forum.linuxguides.de/index.php?thread/11519-paperless-ngx-installation-mit-podman/">linuxguides.de</a> (thanks for the tip <a href="https://chaos.social/@stdevel">Christian</a>!) and the output of the <a href="https://docs.paperless-ngx.com/setup/#docker_script">paperless-ngx installer</a>.</p>

<p><strong>.env</strong> (hidden file):</p>

<p><code>COMPOSE_PROJECT_NAME=paperless</code></p>

<p><strong>docker-compose.env</strong>:</p>

<pre><code>PAPERLESS_TIME_ZONE=Europe/Berlin
PAPERLESS_OCR_LANGUAGE=deu+eng
USERMAP_UID=0
USERMAP_GID=0
</code></pre>

<p><strong>docker-compose.yml</strong>:</p>

<pre><code>name: paperless
services:
  broker:
    image: docker.io/library/redis:8
    restart: unless-stopped
    volumes:
      - redisdata:/data
  webserver:
    image: ghcr.io/paperless-ngx/paperless-ngx:latest
    restart: unless-stopped
    depends_on:
      - broker
    ports:
      - &#34;8000:8000&#34;
    volumes:
      - ~/Dokumente/Paperless/Data:/usr/src/paperless/data:Z
      - ~/Dokumente/Paperless/Media:/usr/src/paperless/media:Z
      - ~/Dokumente/Paperless/Export:/usr/src/paperless/export:Z
      - ~/Dokumente/Paperless/Import:/usr/src/paperless/consume:Z
    env_file: docker-compose.env
    environment:
      PAPERLESS_REDIS: redis://broker:6379
volumes:
  redisdata:
</code></pre>

<p>I decided to use SQLite as the database because it will allow me to easily sync it between my computers later using <a href="https://syncthing.net/">Synthing</a>.</p>

<p>It is important to adjust the volumes. These are located in my “Documents” folder under “paperless.”</p>

<p><strong>Data:</strong> the database</p>

<p><strong>Media:</strong> all the files</p>

<p><strong>Export:</strong> Export Folder</p>

<p><strong>Import:</strong> Drop documents in this folder for adding them</p>

<p>The “paperless” folder contains the entire contents of paperless-ngx, making it very easy to back up or sync.</p>

<h2 id="container-compose">container compose</h2>

<p>In that folder, just run</p>

<p><strong>Debian:</strong>
<code>podman compose up</code></p>

<p><strong>openSUSE tumbleweed:</strong>
<code>podman-compose up</code></p>

<p>and everything will be installed.</p>

<h2 id="start-and-stop-the-container">start and stop the container</h2>

<p>The paperless-ngx container doesn&#39;t need to run all the time—only when I need to access it. So I wrote a little Bash script to start or stop the container.
Just a quick heads-up: I&#39;m a novice and like to keep things colorful ;)</p>

<p>paperless.sh:</p>

<pre><code>#!/bin/bash

set -euo pipefail

# Colors
readonly BLUE=&#39;\033[0;34m&#39;
readonly RED=&#39;\033[0;31m&#39;
readonly GREEN=&#39;\033[0;32m&#39;
readonly YELLOW=&#39;\033[1;33m&#39;
readonly NC=&#39;\033[0m&#39;

BROKER=&#34;paperless_broker_1&#34;
WEBSERVER=&#34;paperless_webserver_1&#34;

# Check, if container are running
both_running() {
    [ &#34;$(/usr/bin/podman inspect -f &#39;{{.State.Running}}&#39; &#34;$BROKER&#34; 2&gt;/dev/null)&#34; = &#34;true&#34; ] &amp;&amp;
    [ &#34;$(/usr/bin/podman inspect -f &#39;{{.State.Running}}&#39; &#34;$WEBSERVER&#34; 2&gt;/dev/null)&#34; = &#34;true&#34; ]
}

# Start Containers
start_containers() {
    echo -e &#34;${YELLOW}🟡 Starting $BROKER${NC}&#34;
    /usr/bin/podman start &#34;$BROKER&#34; &gt;/dev/null 2&gt;&amp;1
    sleep 2
    echo -e &#34;${YELLOW}🟡 Starting $WEBSERVER${NC}&#34;
    /usr/bin/podman start &#34;$WEBSERVER&#34; &gt;/dev/null 2&gt;&amp;1
    echo -e &#34;${GREEN}🟢 Both Containers running.${NC}&#34;
}

# Stop Containers
stop_containers() {
    echo -ne &#34;${YELLOW}⚠️  Stop Container? ${NC}&#34;
    read -p &#34;(j/n) [n]: &#34; answer
    echo
    if [ &#34;$answer&#34; = &#34;j&#34; ]; then
        echo -e &#34;${YELLOW}🟡 Stopping $WEBSERVER${NC}&#34;
        /usr/bin/podman stop &#34;$WEBSERVER&#34; &gt;/dev/null 2&gt;&amp;1
        sleep 2
        echo -e &#34;${YELLOW}🟡 Stopping $BROKER${NC}&#34;
        /usr/bin/podman stop &#34;$BROKER&#34; &gt;/dev/null 2&gt;&amp;1
        echo
        echo -e &#34;${GREEN}🟢 Both Containers are stopped.${NC}&#34;
    else
        echo -e &#34;${RED}🔴 Cancel: Containers still running.${NC}&#34;
    fi
}

# Main
echo
echo &#34;### Paperless-ngx - Podman ###&#34;
echo
if both_running; then
    stop_containers
else
    start_containers
fi
</code></pre>

<h2 id="access-paperless">Access Paperless</h2>

<p>Just go to <strong><a href="http://localhost:8000">http://localhost:8000</a></strong> in your browser, and everything works perfectly.</p>

<p><img src="/posts/260510/paperless.jpg" alt=""></p>

<h2 id="sync-and-backup">Sync and backup</h2>

<p>As mentioned earlier, the “Paperless” folder in “Documents” contains everything and can be synced between computers using Syncthing, for example.
This folder is also very easy to back up.</p>

<h2 id="manage-podman">Manage podman</h2>

<p>Of course, you can also do this via the CLI, but I like the simplicity of <a href="https://cockpit-project.org/">cockpit</a>, which can also be used on Debian. Cockpit has a handy module for managing Podman.</p>

<p><img src="/posts/260510/cockpit.jpg" alt=""></p>
]]></content:encoded>
      <guid>https://inlovewithlinux.com/local-paperless-ngx</guid>
      <pubDate>Sun, 10 May 2026 11:40:38 +0200</pubDate>
    </item>
    <item>
      <title>local music (in GNOME)</title>
      <link>https://inlovewithlinux.com/local-music-in-gnome</link>
      <description>&lt;![CDATA[The largest part of my life, I’ve bought and listened to music locally—first on vinyl, then on cassette, later on CD, and as purchases on iTunes. My music collection is accordingly large, and a small fortune has been invested in building it. Accordingly, I can’t just switch to streaming, and I also want to own my music.&#xA;So, important albums are on vinyl, but I also like to buy them as MP3s, for example from Bandcamp.&#xA;&#xA;Hardware&#xA;At 14, owning a stereo system was the biggest thing - even at almost 50, it still is. I run two 1980s Magnat speakers through a Rotel A12MKII amplifier.&#xA;&#xA;The amplifier supports Bluetooth, but somehow it’s just easier to run 15 meters of audio cable across the room.&#xA;&#xA;Software&#xA;You’ve tried music players on Linux, and so much of it is either very ugly or too bloated.&#xA;&#xA;But there’s one highly praised option: Amberol.&#xA;&#xA;Amberol is simple and looks good. You just open a folder with files, and they play—no database or other unnecessary bells and whistles.&#xA;&#xA;Now there’s still the issue that changing the audio output in GNOME is cumbersome and has to be done through Settings. But the Audio Switch Shortcuts extension solves this problem—with keyboard shortcuts, you can easily switch between devices.&#xA;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>The largest part of my life, I’ve bought and listened to music locally—first on vinyl, then on cassette, later on CD, and as purchases on iTunes. My music collection is accordingly large, and a small fortune has been invested in building it. Accordingly, I can’t just switch to streaming, and I also want to own my music.
So, important albums are on vinyl, but I also like to buy them as MP3s, for example from Bandcamp.</p>

<h2 id="hardware">Hardware</h2>

<p>At 14, owning a stereo system was the biggest thing – even at almost 50, it still is. I run two 1980s Magnat speakers through a <a href="https://rotel.com/de/product/a12mkii">Rotel A12MKII</a> amplifier.</p>

<p><img src="/posts/260501/rotel.jpg" alt=""></p>

<p>The amplifier supports Bluetooth, but somehow it’s just easier to run 15 meters of audio cable across the room.</p>

<h2 id="software">Software</h2>

<p>You’ve tried music players on Linux, and so much of it is either very ugly or too bloated.</p>

<p>But there’s one highly praised option: <a href="https://apps.gnome.org/Amberol/">Amberol</a>.</p>

<p><img src="/posts/260501/amberol.png" alt=""></p>

<p>Amberol is simple and looks good. You just open a folder with files, and they play—no database or other unnecessary bells and whistles.</p>

<p>Now there’s still the issue that changing the audio output in GNOME is cumbersome and has to be done through Settings. But the <a href="https://extensions.gnome.org/extension/8150/audio-switch-shortcuts/">Audio Switch Shortcuts</a> extension solves this problem—with keyboard shortcuts, you can easily switch between devices.</p>

<p><img src="/posts/260501/extension.png" alt=""></p>
]]></content:encoded>
      <guid>https://inlovewithlinux.com/local-music-in-gnome</guid>
      <pubDate>Fri, 01 May 2026 16:48:13 +0200</pubDate>
    </item>
    <item>
      <title>1-year debian: third month</title>
      <link>https://inlovewithlinux.com/1-year-debian-third-month</link>
      <description>&lt;![CDATA[GNOME 50 ... not yet&#xA;I had a brief window—okay, a few days—to distro-hop again after GNOME 50 was released, but then I realized ... I can just wait another 1.5 years for Forky. So it is still GNOME 48 for me :)&#xA;&#xA;Testing laptop&#xA;Because I have a fantastic ThinkPad T460 sitting on my desk as a third machine, I’ve chosen it as the test machine for the upcoming Debian 14 (testing). This gives me a good preview of what’s coming, and honestly, I don’t quite dare to run Testing or Unstable in production. It’s supposed to work well, but Stable just runs too smoothly to switch.&#xA;&#xA;Freeze solved&#xA;After my desktop (AMP Ryzen 5 CPU with Radeon RX 6500 XT GPU) kept freezing unpredictably for a while, the problem appears to have been resolved thanks to a newer kernel, AMD firmware and MESA from the backports repo.&#xA;&#xA;More backports stuff&#xA;Recently, I also experimented with building backports for personal use, thanks to these instructions: SimpleBackportCreation. Works surprisingly simple.&#xA;However, since the GNOME app ecosystem is focusing on Flatpak, installing software via Flatpak is more convenient.&#xA;&#xA;Homelab&#xA;Now that my fiber optic connection is finally arriving soon, my server (also running Trixie) will take on entirely new tasks. I’m hoping my &#39;homelab&#39; will grow a bit, and I’ll dive into something I currently know nothing about: containers.&#xA;I’d therefore appreciate any tips, guides, or recommendations!&#xA;Docker, Podman ... what to choose? Tips are more than welcome!&#xA;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<h2 id="gnome-50-not-yet">GNOME 50 ... not yet</h2>

<p>I had a brief window—okay, a few days—to distro-hop again after GNOME 50 was released, but then I realized ... I can just wait another 1.5 years for Forky. So it is still GNOME 48 for me :)</p>

<h2 id="testing-laptop">Testing laptop</h2>

<p>Because I have a fantastic ThinkPad T460 sitting on my desk as a third machine, I’ve chosen it as the test machine for the upcoming Debian 14 (testing). This gives me a good preview of what’s coming, and honestly, I don’t quite dare to run <a href="https://wiki.debian.org/DebianTesting">Testing</a> or <a href="https://wiki.debian.org/DebianUnstable/">Unstable</a> in production. It’s supposed to work well, but <a href="https://wiki.debian.org/DebianStable">Stable</a> just runs too smoothly to switch.</p>

<h2 id="freeze-solved">Freeze solved</h2>

<p>After my desktop (AMP Ryzen 5 CPU with Radeon RX 6500 XT GPU) kept freezing unpredictably for a while, the problem appears to have been resolved thanks to a newer kernel, AMD firmware and MESA from the <a href="https://backports.debian.org/">backports repo</a>.</p>

<h2 id="more-backports-stuff">More backports stuff</h2>

<p>Recently, I also experimented with building backports for personal use, thanks to these instructions: <a href="https://wiki.debian.org/SimpleBackportCreation">SimpleBackportCreation</a>. Works surprisingly simple.
However, since the GNOME app ecosystem is focusing on Flatpak, installing software via Flatpak is more convenient.</p>

<h2 id="homelab">Homelab</h2>

<p>Now that my fiber optic connection is finally arriving soon, my server (also running Trixie) will take on entirely new tasks. I’m hoping my &#39;homelab&#39; will grow a bit, and I’ll dive into something I currently know nothing about: containers.
I’d therefore appreciate any tips, guides, or recommendations!
Docker, Podman ... what to choose? Tips are more than welcome!</p>
]]></content:encoded>
      <guid>https://inlovewithlinux.com/1-year-debian-third-month</guid>
      <pubDate>Sun, 12 Apr 2026 09:15:03 +0200</pubDate>
    </item>
  </channel>
</rss>