<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Linux &amp;mdash; Bruno&#39;s ramblings</title>
    <link>https://infosec.press/brunomiguel/tag:Linux</link>
    <description>A blog where I ramble about... well... stuff.</description>
    <pubDate>Sun, 24 May 2026 23:32:08 +0000</pubDate>
    <item>
      <title>📝 Quick and cheap way to improve output audio quality on (some) Linux (distros)</title>
      <link>https://infosec.press/brunomiguel/quick-and-cheap-way-to-improve-output-audio-quality-on-some-linux-distros</link>
      <description>&lt;![CDATA[This assumes you&#39;re using Pipewire for your audio demands. Also, YMMV, depending on your hardware and the codec and encoding parameters of your music files.&#xA;!--more--&#xA;Currently, 99% the music I listen to is from Tidal, with the 16-bit and 44.1 kHz FLAC streaming option, and the configs at the bottom of this blog post are targeting this.&#xA;&#xA;Without further ado, let&#39;s start with the tools ⚒️.&#xA;&#xA;Easy Effects smallsup[1]/sup/small&#xA;Homepage: https://github.com/wwmm/easyeffects&#xA;Flathub package: https://flathub.org/en/apps/com.github.wwmm.easyeffects&#xA;License: GPL 3.0&#xA;&#xA;JamesDSP&#xA;Homepage: https://github.com/Audio4Linux/JDSP4Linux&#xA;Flathub package: https://flathub.org/en/apps/me.timschneeberger.jdsp4linux&#xA;License: GPL 3.0&#xA;&#xA;I use some cheap stereo headphones (Esperanza EH240) that connect both via Bluetooth and a 3.5mm audio cable to my laptop. The specs are not impressive by any stretch, but it was a good purchase for what it cost:&#xA;&#xA;Frequency range: 20 - 20000 Hz&#xA;Sensitivity: 105 dB&#xA;Impedance: 32 Ω&#xA;&#xA;With either of the above-listed applications, I can use some filters to give a bit more depth to the audio, making it a touch richer and less bland.&#xA;&#xA;For several months, Easy Effects has been my tool of choice, with only two filters enabled for the output: the equalizer for the higher frequencies, and bass loudness for the lower frequencies. There&#39;s also an alternative to bass loudness named bass enhancer, but the previous works best with my headphones, IMO.&#xA;&#xA;The application also has a preset functionality, and I use it to switch between them, depending on the music genre I&#39;m listening to.&#xA;&#xA;It needs to be noted that the preset switching and management needs to be done inside the app; you can&#39;t do it from the system tray icon. At least it would be nice to have the latest three used profiles; more, and the menu would have too much height, even with FullHD resolution.&#xA;&#xA;Here&#39;s my current config.&#xA;&#xA;a href=&#34;https://i.imgur.com/IItSPM6.jpeg&#34;&#34;Equalizer config - in pt-PT&#34;/a&#xA;smallEqualizer config - in pt-PT. Click on the image to view it in full size./small&#xA;&#xA;a href=&#34;https://i.imgur.com/rXLnU5K.jpeg&#34;&#34;Bass loudness config - in pt-PT&#34;/a&#xA;smallEqualizer config - in pt-PT. Click on the image to view it in full size./small&#xA;&#xA;Back when I used JamesDPS, the configs were somewhat similar. It&#39;s a different application, and the differences are more than a few, but it&#39;s easy to achieve a similar result.&#xA;&#xA;If you don&#39;t have experience with this, IMHO it&#39;s best to have a more conservative approach when playing around with filters, as it&#39;s easy for the audio to start clipping (think of it as distorting). Don&#39;t worry, though, because each filter has a reset button.&#xA;&#xA;sup[1]/sup There&#39;s an alternative for PulseAudio, by the same author, named Pulse Effects (https://flathub.org/en/apps/com.github.wwmm.pulseeffects).&#xA;&#xA;#Linux #Pipewire #EasyEffects #JamesDSP #Audio]]&gt;</description>
      <content:encoded><![CDATA[<p>This assumes you&#39;re using Pipewire for your audio demands. Also, YMMV, depending on your hardware and the codec and encoding parameters of your music files.

Currently, 99% the music I listen to is from Tidal, with the 16-bit and 44.1 kHz FLAC streaming option, and the configs at the bottom of this blog post are targeting this.</p>

<p>Without further ado, let&#39;s start with the tools ⚒️.</p>

<h3 id="easy-effects-small-sup-1-sup-small">Easy Effects <small><sup>[1]</sup></small></h3>
<ul><li><strong>Homepage:</strong> <a href="https://github.com/wwmm/easyeffects" rel="nofollow">https://github.com/wwmm/easyeffects</a></li>
<li><strong>Flathub package:</strong> <a href="https://flathub.org/en/apps/com.github.wwmm.easyeffects" rel="nofollow">https://flathub.org/en/apps/com.github.wwmm.easyeffects</a></li>
<li><strong>License:</strong> GPL 3.0</li></ul>

<h3 id="jamesdsp">JamesDSP</h3>
<ul><li><strong>Homepage:</strong> <a href="https://github.com/Audio4Linux/JDSP4Linux" rel="nofollow">https://github.com/Audio4Linux/JDSP4Linux</a></li>
<li><strong>Flathub package:</strong> <a href="https://flathub.org/en/apps/me.timschneeberger.jdsp4linux" rel="nofollow">https://flathub.org/en/apps/me.timschneeberger.jdsp4linux</a></li>
<li><strong>License:</strong> GPL 3.0</li></ul>

<p>I use some cheap stereo headphones <a href="https://www.galaxus.de/en/s1/product/esperanza-eh240-bluetooth-headphones-headband-black-anc-7-h-wireless-headphones-42892843" rel="nofollow">(Esperanza EH240)</a> that connect both via Bluetooth and a 3.5mm audio cable to my laptop. The specs are not impressive by any stretch, but it was a good purchase for what it cost:</p>
<ul><li>Frequency range: 20 – 20000 Hz</li>
<li>Sensitivity: 105 dB</li>
<li>Impedance: 32 Ω</li></ul>

<p>With either of the above-listed applications, I can use some filters to give a bit more depth to the audio, making it a touch richer and less bland.</p>

<p>For several months, Easy Effects has been my tool of choice, with only two filters enabled for the output: the <em>equalizer</em> for the higher frequencies, and <em>bass loudness</em> for the lower frequencies. There&#39;s also an alternative to <em>bass loudness</em> named <em>bass enhancer</em>, but the previous works best with my headphones, IMO.</p>

<p>The application also has a preset functionality, and I use it to switch between them, depending on the music genre I&#39;m listening to.</p>

<p>It needs to be noted that the preset switching and management needs to be done inside the app; you can&#39;t do it from the system tray icon. At least it would be nice to have the latest three used profiles; more, and the menu would have too much height, even with FullHD resolution.</p>

<p>Here&#39;s my current config.</p>

<p><a href="https://i.imgur.com/IItSPM6.jpeg" rel="nofollow"><img src="https://i.imgur.com/IItSPM6.jpeg" alt="&#34;Equalizer config - in pt-PT&#34;" title="Equalizer config - in pt-PT"></a>
<small>Equalizer config – in pt-PT. Click on the image to view it in full size.</small></p>

<p><a href="https://i.imgur.com/rXLnU5K.jpeg" rel="nofollow"><img src="https://i.imgur.com/rXLnU5K.jpeg" alt="&#34;Bass loudness config - in pt-PT&#34;" title="Bass loudness config - in pt-PT"></a>
<small>Equalizer config – in pt-PT. Click on the image to view it in full size.</small></p>

<p>Back when I used JamesDPS, the configs were somewhat similar. It&#39;s a different application, and the differences are more than a few, but it&#39;s easy to achieve a similar result.</p>

<p>If you don&#39;t have experience with this, IMHO it&#39;s best to have a more conservative approach when playing around with filters, as it&#39;s easy for the audio to start clipping (think of it as distorting). Don&#39;t worry, though, because each filter has a reset button.</p>

<p><sup>[1]</sup> There&#39;s an alternative for PulseAudio, by the same author, named Pulse Effects (<a href="https://flathub.org/en/apps/com.github.wwmm.pulseeffects" rel="nofollow">https://flathub.org/en/apps/com.github.wwmm.pulseeffects</a>).</p>

<p><a href="/brunomiguel/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/brunomiguel/tag:Pipewire" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Pipewire</span></a> <a href="/brunomiguel/tag:EasyEffects" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">EasyEffects</span></a> <a href="/brunomiguel/tag:JamesDSP" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">JamesDSP</span></a> <a href="/brunomiguel/tag:Audio" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Audio</span></a></p>
]]></content:encoded>
      <guid>https://infosec.press/brunomiguel/quick-and-cheap-way-to-improve-output-audio-quality-on-some-linux-distros</guid>
      <pubDate>Tue, 23 Dec 2025 01:13:30 +0000</pubDate>
    </item>
    <item>
      <title>📝 My Ubuntu experience ended, welcome OpenSUSE</title>
      <link>https://infosec.press/brunomiguel/my-ubuntu-experience-ended-welcome-opensuse</link>
      <description>&lt;![CDATA[In the second half of October, I replaced Ubuntu 24.04 with OpenSUSE Tumbleweed. This marked the end of my Ubuntu experience. Well, for the moment, at least, because you never know how tomorrow&#39;s going to be.&#xA;&#xA;This decision was not made lightly. After several months using Ubuntu 24.04, I was happy with the system. I was even using GNOME after using KDE Plasma for most of the last few years, because I liked Ubuntu&#39;s default experience on that desktop environment and found it better than the default one.&#xA;!--more--&#xA;What happened&#xA;&#xA;What I didn&#39;t like, though, was that it started to log me out of GNOME randomly.&#xA;&#xA;When it first happened, I thought it could be an issue with an extension, but I checked the system logs nonetheless. They were useful for confirming that this was an issue somewhere in GNOME, but not for pointing to an extension as the culprit.&#xA;&#xA;Then, it happened again. And again. Always at random times. Even on a clean account.&#xA;&#xA;Trying to mitigate it&#xA;&#xA;After a few days of searching the web for similar reports, I found a bug report for Ubuntu about an issue in, I believe, GNOME Shell. This issue had been fixed in more recent versions of the desktop environment than the one shipped in Ubuntu 24.04, but it appeared that there were no plans to backport it to the existing LTS. Luckily, the bug report included a mitigation I could apply to my system.&#xA;&#xA;I tried the mitigation (adding something in /etc/profile). For a few days, it felt like the issue was gone, and I could use my computer without getting on my nerves.&#xA;&#xA;Task failed successfully&#xA;&#xA;Then, it happened again. And again. Always at random times.&#xA;&#xA;This started to get me a bit angry. Then, it happened while I was working. I was using a web platform with autosave, so the work wasn&#39;t lost, but I lost my train of thought and had to start almost from scratch.&#xA;&#xA;This made me mad! I couldn&#39;t afford to have this happen again while working. If it happens when I&#39;m gaming or browsing the web, it&#39;s annoying, but I can live with it if it happens seldomly. However, during the few paid work chances I get, it can&#39;t happen.&#xA;&#xA;But it did happen one more time.&#xA;&#xA;### root@computer:~# whereis replacement&#xA;&#xA;I decided I had to find a replacement.&#xA;&#xA;Returning to Arch was one of my options. Installing Void, a distro I quite enjoyed a few years back, was another alternative. I also considered Debian, Fedora, Alpine, and a couple more.&#xA;&#xA;One of those &#34;couple more&#34; was OpenSUSE, specifically the Tumbleweed branch/edition or whatever the correct naming convention is. I had used OpenSUSE for a bit several years ago (somewhere between 15 to 20 years ago, if my memory isn&#39;t failing me again), and it offered a bleeding-edge approach like Arch. It is also a distribution developed and maintained in Europe, at least for the most part, which helped, given the current state of the US with nutjobs in power.&#xA;&#xA;All in on green&#xA;&#xA;So, on the day after my 42nd birthday, I backed up all the data I needed, and I replaced Ubuntu 24.04 with OpenSUSE Tumbleweed.&#xA;&#xA;I admit I did little reading about the tools the distribution offers, like the package manager and YaST. Or that a pattern you install and then uninstall with zypper will be installed again when you update your system. If it was removed, it has no business being installed again, and I shouldn&#39;t have to create a lock on that pattern to prevent that behavior. This makes no sense to me as a user.&#xA;&#xA;I did take a look at their docs, but they pale in comparison to the Arch Wiki. OpenSUSE could actually learn a few things from Arch in this regard to improve their documentation, in my opinion.&#xA;&#xA;A mostly smooth sail (so far)&#xA;&#xA;Of course, this hasn&#39;t been a perfect experience.&#xA;&#xA;The day after installing the distro, I installed profile-sync-daemon, a tool that copies your browser profile into RAM while you&#39;re using it and lets you set up a sync interval with the filesystem, so it doesn&#39;t batter the SSD or NVMe so much. I believe I also installed some updates after that, and then rebooted.&#xA;&#xA;The system booted fine, and I was able to log in to Plasma. Then, no matter what application I tried to launch, it would show an error and wouldn&#39;t open. It took me a bit to remember that this tool fills the user&#39;s tmpfs  if you have the default 20% for the RuntimeDirectorySize in systemd&#39;s logind.conf.&#xA;&#xA;Even with 12 GB of RAM and 12 GB of SWAP, this happens.&#xA;&#xA;I bumped the value to 30%, just to be super safe, rebooted, and voilà, I could open applications again.&#xA;&#xA;I think this was the only major issue.&#xA;&#xA;I also had an issue with a kernel update that wouldn&#39;t boot, but I had the previous kernel version still installed, so it didn&#39;t matter all that much.&#xA;&#xA;Additionally, some tools I use aren&#39;t available in the repos, but it&#39;s just a few, and that&#39;s easily fixable by compiling them. Given that most of these tools are written in Go, it&#39;s easier to deal with dependencies.&#xA;&#xA;Let&#39;s see if I&#39;ll revisit my decision of using OpenSUSE Tumbleweed in a few months.&#xA;&#xA;#Ubuntu #OpenSUSE #Linux #SystemD #GNOME #KDE ]]&gt;</description>
      <content:encoded><![CDATA[<p>In the second half of October, I replaced Ubuntu 24.04 with OpenSUSE Tumbleweed. This marked the end of my Ubuntu experience. Well, for the moment, at least, because you never know how tomorrow&#39;s going to be.</p>

<p>This decision was not made lightly. After several months using Ubuntu 24.04, I was happy with the system. I was even using GNOME after using KDE Plasma for most of the last few years, because I liked Ubuntu&#39;s default experience on that desktop environment and found it better than the default one.
</p>

<h3 id="what-happened">What happened</h3>

<p>What I didn&#39;t like, though, was that it started to log me out of GNOME randomly.</p>

<p>When it first happened, I thought it could be an issue with an extension, but I checked the system logs nonetheless. They were useful for confirming that this was an issue somewhere in GNOME, but not for pointing to an extension as the culprit.</p>

<p>Then, it happened again. And again. Always at random times. Even on a clean account.</p>

<h3 id="trying-to-mitigate-it">Trying to mitigate it</h3>

<p>After a few days of searching the web for similar reports, I found a bug report for Ubuntu about an issue in, I believe, GNOME Shell. This issue had been fixed in more recent versions of the desktop environment than the one shipped in Ubuntu 24.04, but it appeared that there were no plans to backport it to the existing LTS. Luckily, the bug report included a mitigation I could apply to my system.</p>

<p>I tried the mitigation (adding something in <code>/etc/profile</code>). For a few days, it felt like the issue was gone, and I could use my computer without getting on my nerves.</p>

<h3 id="task-failed-successfully">Task failed successfully</h3>

<p>Then, it happened again. And again. Always at random times.</p>

<p>This started to get me a bit angry. Then, it happened while I was working. I was using a web platform with autosave, so the work wasn&#39;t lost, but I lost my train of thought and had to start almost from scratch.</p>

<p>This made me mad! I couldn&#39;t afford to have this happen again while working. If it happens when I&#39;m gaming or browsing the web, it&#39;s annoying, but I can live with it if it happens seldomly. However, during the few paid work chances I get, it can&#39;t happen.</p>

<p>But it did happen one more time.</p>

<h3 id="root-computer-whereis-replacement">root@computer:~# whereis replacement</h3>

<p>I decided I had to find a replacement.</p>

<p>Returning to Arch was one of my options. Installing Void, a distro I quite enjoyed a few years back, was another alternative. I also considered Debian, Fedora, Alpine, and a couple more.</p>

<p>One of those <em>“couple more”</em> was OpenSUSE, specifically the Tumbleweed branch/edition or whatever the correct naming convention is. I had used OpenSUSE for a bit several years ago (somewhere between 15 to 20 years ago, if my memory isn&#39;t failing me again), and it offered a bleeding-edge approach like Arch. It is also a distribution developed and maintained in Europe, at least for the most part, which helped, given the current state of the US with nutjobs in power.</p>

<h3 id="all-in-on-green">All in on green</h3>

<p>So, on the day after my 42nd birthday, I backed up all the data I needed, and I replaced Ubuntu 24.04 with OpenSUSE Tumbleweed.</p>

<p>I admit I did little reading about the tools the distribution offers, like the package manager and YaST. Or that a pattern you install and then uninstall with <code>zypper</code> will be installed again when you update your system. If it was removed, it has no business being installed again, and I shouldn&#39;t have to create a lock on that pattern to prevent that behavior. This makes no sense to me as a user.</p>

<p>I did take a look at their docs, but they pale in comparison to the Arch Wiki. OpenSUSE could actually learn a few things from Arch in this regard to improve their documentation, in my opinion.</p>

<h3 id="a-mostly-smooth-sail-so-far">A mostly smooth sail (so far)</h3>

<p>Of course, this hasn&#39;t been a perfect experience.</p>

<p>The day after installing the distro, I installed <code>profile-sync-daemon</code>, a tool that copies your browser profile into RAM while you&#39;re using it and lets you set up a sync interval with the filesystem, so it doesn&#39;t batter the SSD or NVMe so much. I believe I also installed some updates after that, and then rebooted.</p>

<p>The system booted fine, and I was able to log in to Plasma. Then, no matter what application I tried to launch, it would show an error and wouldn&#39;t open. It took me a bit to remember that this tool fills the user&#39;s <code>tmpfs</code>  if you have the default 20% for the <code>RuntimeDirectorySize</code> in systemd&#39;s <code>logind.conf</code>.</p>

<p>Even with 12 GB of RAM and 12 GB of SWAP, this happens.</p>

<p>I bumped the value to 30%, just to be super safe, rebooted, and voilà, I could open applications again.</p>

<p>I think this was the only major issue.</p>

<p>I also had an issue with a kernel update that wouldn&#39;t boot, but I had the previous kernel version still installed, so it didn&#39;t matter all that much.</p>

<p>Additionally, some tools I use aren&#39;t available in the repos, but it&#39;s just a few, and that&#39;s easily fixable by compiling them. Given that most of these tools are written in Go, it&#39;s easier to deal with dependencies.</p>

<p>Let&#39;s see if I&#39;ll revisit my decision of using OpenSUSE Tumbleweed in a few months.</p>

<p><a href="/brunomiguel/tag:Ubuntu" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Ubuntu</span></a> <a href="/brunomiguel/tag:OpenSUSE" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">OpenSUSE</span></a> <a href="/brunomiguel/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/brunomiguel/tag:SystemD" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">SystemD</span></a> <a href="/brunomiguel/tag:GNOME" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">GNOME</span></a> <a href="/brunomiguel/tag:KDE" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">KDE</span></a></p>
]]></content:encoded>
      <guid>https://infosec.press/brunomiguel/my-ubuntu-experience-ended-welcome-opensuse</guid>
      <pubDate>Mon, 01 Dec 2025 04:22:46 +0000</pubDate>
    </item>
    <item>
      <title>📝 My Ubuntu experience after a few months</title>
      <link>https://infosec.press/brunomiguel/my-ubuntu-experience-after-a-few-months</link>
      <description>&lt;![CDATA[My desktop on Ubuntu. As you can see, it&#39;s mostly default&#xA;&#xA;I&#39;ve been using Ubuntu daily for a few months. I was a bit afraid of having some major issue and having to try another distro before thinking about returning to Arch, but the balance is positive so far.&#xA;&#xA;I admit there have been a few things that&#39;ve annoyed me. Then again, I&#39;ve had that on any OS I&#39;ve used, so... yeah, computers... At least they&#39;re not printers, right?! 👀&#xA;!--more--&#xA;✔️ The positives&#xA;&#xA;I find the default GNOME experience on Ubuntu to be good. Back in the day, I enjoyed the hell out of Unity, and having a similar experience is nice. Of course, we&#39;re talking about GNOME here; extensions are necessary, but I didn&#39;t install that many, and some were only to improve the interface&#39;s bling (I like pretty things 🤷).&#xA;&#xA;It&#39;s also nice to have a free tier for the Ubuntu Pro program. If, for whatever reason, I decide to stick with this version, I&#39;ll have 10 years of security updates (at the time of writing). The specifics are on the link above, so don&#39;t forget to check it out to know more about them.&#xA;&#xA;When it comes to regular home users, Pro&#39;s free tier can be a nice thing to have. This way, they can slowly prepare the migration to a newer LTS and still stay reasonably secure. Well, to be honest, also because they don&#39;t tend to like changes, and keeping a stable environment for some time reduces the stress of computing for them.&#xA;&#xA;This, of course, is also beneficial for self-hosters, for example. But it might not be for you, and that&#39;s fair, too. 🍻&#xA;&#xA;Snaps have also improved quite a lot. You may find the occasional exception, but they have become quite performant compared to just a few years ago. Even the Steam snap has improved; however, it can take a little bit more time to launch than the native package when you have a lot of games installed and/or they take up a lot of disk space.&#xA;&#xA;Another plus for the Steam snap is being able to change Mesa versions. There might be some games that require more recent versions than the included one, so this is a nice feature to have.&#xA;&#xA;❌ The negatives&#xA;&#xA;There&#39;s an issue with the Steam snap, where right-clicking on something to show a menu and then clicking on a menu entry just closes the menu and doesn&#39;t perform the action. This one can be annoying as hell sometimes! 💢&#xA;&#xA;I do miss having some utilities I use already packaged or from a trusted enough source on the AUR, but I compiled them from source, and I keep tabs on new updates occasionally.&#xA;&#xA;It&#39;s also a shame there is no official gamescope package, and you&#39;re left compiling it from source. I do think there are a few issues with that on the 24.04 LTS version, but I&#39;m just remembering this as I type, so I might be misremembering.&#xA;&#xA;I was also having the best KDE experience I&#39;ve had in ~20 years with Plasma 6.x on Arch, but it&#39;s not packaged for Ubuntu 24.04. One time, I tried using a repo from Kubuntu or something, but I ended up borking the package and dependency lists, and couldn&#39;t remove the upgraded packages. 💀 I ended up reinstalling, which was faster than spending a day debugging dependency issues and force-installing some packages manually.&#xA;&#xA;I had forgotten how PPAs can be a headache if you just YOLO it. 😅&#xA;&#xA;👋 Conclusion&#xA;&#xA;At least for now, I&#39;m sticking with the latest stable LTS. When I switched, my goal was to have a system that doesn&#39;t change much over time and, in doing so, doesn&#39;t bother me every day to install a ton of updates. I also wanted something more reliable. While the verdict is yet to be reached on the latter, it has been reached on the former — most days, I only have flatpak updates.&#xA;&#xA;I&#39;ll stick with Ubuntu LTS for a few more months, so I can safely say if it is what I&#39;m looking for or if I need to find another distribution. Although I think I&#39;ll probably stick to it until the next LTS — unless I have a major issue with it —and then reevaluate it.&#xA;&#xA;#Ubuntu #Linux #Arch #KDE #GNOME #Steam #Gaming #LinuxGaming #DesktopLinux]]&gt;</description>
      <content:encoded><![CDATA[<p><img src="https://cld.pt/dl/download/20d5c8e3-90de-45f5-825c-195eaaa376e0/ubuntu-desktop.webp" alt="My desktop on Ubuntu. As you can see, it&#39;s mostly default" title="My desktop on Ubuntu. As you can see, it&#39;s mostly default"></p>

<p>I&#39;ve been using Ubuntu daily for a <a href="https://infosec.press/brunomiguel/tips-for-gaming-on-ubuntu" rel="nofollow">few months</a>. I was a bit afraid of having some major issue and having to try another distro before thinking about returning to Arch, but the balance is positive so far.</p>

<p>I admit there have been a few things that&#39;ve annoyed me. Then again, I&#39;ve had that on any OS I&#39;ve used, so... yeah, computers... At least they&#39;re not printers, right?! 👀
</p>

<h3 id="the-positives">✔️ The positives</h3>

<p>I find the default GNOME experience on Ubuntu to be good. Back in the day, I enjoyed the hell out of Unity, and having a similar experience is nice. Of course, we&#39;re talking about GNOME here; extensions are necessary, but I didn&#39;t install that many, and some were only to improve the interface&#39;s bling (I like pretty things 🤷).</p>

<p>It&#39;s also nice to have a free tier for the <a href="https://ubuntu.com/pro" rel="nofollow">Ubuntu Pro</a> program. If, for whatever reason, I decide to stick with this version, I&#39;ll have 10 years of security updates (at the time of writing). The specifics are on the link above, so don&#39;t forget to check it out to know more about them.</p>

<p>When it comes to regular home users, Pro&#39;s free tier can be a nice thing to have. This way, they can slowly prepare the migration to a newer LTS and still stay reasonably secure. Well, to be honest, also because they don&#39;t tend to like changes, and keeping a stable environment for some time reduces the stress of computing for them.</p>

<p>This, of course, is also beneficial for self-hosters, for example. But it might not be for you, and that&#39;s fair, too. 🍻</p>

<p>Snaps have also improved quite a lot. You may find the occasional exception, but they have become quite performant compared to just a few years ago. Even the Steam snap has improved; however, it can take a little bit more time to launch than the native package when you have a lot of games installed and/or they take up a lot of disk space.</p>

<p>Another plus for the Steam snap is being able to change Mesa versions. There might be some games that require more recent versions than the included one, so this is a nice feature to have.</p>

<h3 id="the-negatives">❌ The negatives</h3>

<p>There&#39;s an issue with the Steam snap, where right-clicking on something to show a menu and then clicking on a menu entry just closes the menu and doesn&#39;t perform the action. This one can be annoying as hell sometimes! 💢</p>

<p>I do miss having some utilities I use already packaged or from a <em>trusted enough</em> source on the AUR, but I compiled them from source, and I keep tabs on new updates occasionally.</p>

<p>It&#39;s also a shame there is no official <code>gamescope</code> package, and you&#39;re left compiling it from source. I do think there are a few issues with that on the 24.04 LTS version, but I&#39;m just remembering this as I type, so I might be misremembering.</p>

<p>I was also having the best KDE experience I&#39;ve had in ~20 years with Plasma 6.x on Arch, but it&#39;s not packaged for Ubuntu 24.04. One time, I tried using a repo from Kubuntu or something, but I ended up borking the package and dependency lists, and couldn&#39;t remove the upgraded packages. 💀 I ended up reinstalling, which was faster than spending a day debugging dependency issues and force-installing some packages manually.</p>

<p>I had forgotten how PPAs can be a headache if you just YOLO it. 😅</p>

<h3 id="conclusion">👋 Conclusion</h3>

<p>At least for now, I&#39;m sticking with the latest stable LTS. When I switched, my goal was to have a system that doesn&#39;t change much over time and, in doing so, doesn&#39;t bother me every day to install a ton of updates. I also wanted something more reliable. While the verdict is yet to be reached on the latter, it has been reached on the former — most days, I only have flatpak updates.</p>

<p>I&#39;ll stick with Ubuntu LTS for a few more months, so I can safely say if it is what I&#39;m looking for or if I need to find another distribution. Although I think I&#39;ll probably stick to it until the next LTS — unless I have a major issue with it —and then reevaluate it.</p>

<p><a href="/brunomiguel/tag:Ubuntu" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Ubuntu</span></a> <a href="/brunomiguel/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/brunomiguel/tag:Arch" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Arch</span></a> <a href="/brunomiguel/tag:KDE" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">KDE</span></a> <a href="/brunomiguel/tag:GNOME" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">GNOME</span></a> <a href="/brunomiguel/tag:Steam" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Steam</span></a> <a href="/brunomiguel/tag:Gaming" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Gaming</span></a> <a href="/brunomiguel/tag:LinuxGaming" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">LinuxGaming</span></a> <a href="/brunomiguel/tag:DesktopLinux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">DesktopLinux</span></a></p>
]]></content:encoded>
      <guid>https://infosec.press/brunomiguel/my-ubuntu-experience-after-a-few-months</guid>
      <pubDate>Mon, 19 May 2025 08:34:42 +0000</pubDate>
    </item>
    <item>
      <title>📝 How to remove &#34;old&#34; versions from snap packages</title>
      <link>https://infosec.press/brunomiguel/how-to-remove-old-versions-from-snap-packages</link>
      <description>&lt;![CDATA[Be careful with this. Don&#39;t remove old versions before ensuring the new package version works as expected.&#xA;&#xA;How to list all the installed versions&#xA;LANG=C snap list --all | awk &#39;/disabled/{print $1, $3}&#39;&#xA;&#xA;How to remove all the old versions in a batch&#xA;LANG=C snap list --all | awk &#39;/disabled/{print $1, $3}&#39; |&#xA;    while read SnapName revision; do&#xA;        sudo snap remove &#34;$SnapName&#34; --revision=&#34;$revision&#34;&#xA;    done&#xA;&#xA;This can save you some disk space, but it can become a headache if you don&#39;t make sure the new snap package version is working well. Also, don&#39;t forget to read the fine manual.&#xA;&#xA;#Linux #Ubuntu #Snap #Tips]]&gt;</description>
      <content:encoded><![CDATA[<h3 id="be-careful-with-this-don-t-remove-old-versions-before-ensuring-the-new-package-version-works-as-expected">Be careful with this. Don&#39;t remove old versions before ensuring the new package version works as expected.</h3>

<p><strong>How to list all the installed versions</strong></p>

<pre><code class="language-sh">LANG=C snap list --all | awk &#39;/disabled/{print $1, $3}&#39;
</code></pre>

<p><strong>How to remove all the old versions in a batch</strong></p>

<pre><code class="language-sh">LANG=C snap list --all | awk &#39;/disabled/{print $1, $3}&#39; |
    while read SnapName revision; do
        sudo snap remove &#34;$SnapName&#34; --revision=&#34;$revision&#34;
    done
</code></pre>

<p>This can save you some disk space, but it can become a headache if you don&#39;t make sure the new snap package version is working well. Also, don&#39;t forget to <a href="https://snapcraft.io/docs/snap-howto" rel="nofollow">read the fine manual</a>.</p>

<p><a href="/brunomiguel/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/brunomiguel/tag:Ubuntu" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Ubuntu</span></a> <a href="/brunomiguel/tag:Snap" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Snap</span></a> <a href="/brunomiguel/tag:Tips" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Tips</span></a></p>
]]></content:encoded>
      <guid>https://infosec.press/brunomiguel/how-to-remove-old-versions-from-snap-packages</guid>
      <pubDate>Thu, 09 Jan 2025 16:56:49 +0000</pubDate>
    </item>
    <item>
      <title>📝 Tips for gaming on Ubuntu</title>
      <link>https://infosec.press/brunomiguel/tips-for-gaming-on-ubuntu</link>
      <description>&lt;![CDATA[A few tips for gaming on Ubuntu with the Steam snap, and my overall experience with the distro after a few days of usage&#xA;&#xA;A few days ago, I switched from Arch Linux to Ubuntu. I&#39;ve been thinking about starting to use a distro more focused on stability and less on having the latest everything. Ubuntu was already the operating system my wife and my father were using, mainly due to the Ubunto Pro free tier, so I decided to go with it, too, and make my life easier when giving them support.&#xA;&#xA;Surprisingly, the default Ubuntu experience improved a lot since I last used it. When was it? Ten years ago? More? I can&#39;t recall, but I know it was a long long time ago, in a galaxy far far away, and I remember using Unity. I miss Unity.&#xA;!--more--&#xA;I did install some extensions for GNOME, changed the typeface, used my own .fonts.conf, and a few other configurations, installed and built some utilities I had used on Arch for more than five years, and that was it.&#xA;&#xA;The only issue I&#39;ve had is using the Steam snap package and running games installed via Heroic Games Launcher&#39;s flatpak package, with shortcuts for them added to Steam. The confinement rules set for this snap don&#39;t let it use a lot of stuff outside of it, so I can&#39;t use the same setup I had on Arch.&#xA;&#xA;I could install Steam with the --classic flag, which disables the confinement. However, if I&#39;m using Snap for isolation, I might as well take advantage of it. I could also use the deb provided by Steam, but I want to stay close to the default as much as possible so I don&#39;t have to deal with as many potential issues.&#xA;&#xA;There&#39;s also the possibility of installing Steam via Flapak. I might do it eventually. But now, I want to use the Snap package and send some reports to the team. If you want to submit them, too, take a look at the Testing page at the repo&#39;s wiki, and read the instructions on how to submit carefully.&#xA;&#xA;After thinking about this for a day, I remembered there&#39;s this application called Cartridges, that serves as a main hub for your gaming clients. Steam and Heroic are both supported, but for it to see the Snap package, you need to change the Steam path to /home/USER/snap/steam/common/.steam/steam.  (don&#39;t forget to change USER to your username)&#xA;&#xA;While this is not ideal, because I have to have another package installed, it fixes it for me. My main game hub is now Cartridges.&#xA;&#xA;For custom Proton forks, like Proton-GE, ProtonUp-QT supports the Steam snap package out-of-the-box.&#xA;&#xA;You can also use different Mesa environments with the package. The repo&#39;s wiki has all the instructions. Shoutout to Diogo for mentioning this to me and for giving me a few tips that helped make the transition to this distribution easier.&#xA;&#xA;#Linux #Ubuntu #GamingOnLinux ]]&gt;</description>
      <content:encoded><![CDATA[<h4 id="a-few-tips-for-gaming-on-ubuntu-with-the-steam-snap-and-my-overall-experience-with-the-distro-after-a-few-days-of-usage"><em>A few tips for gaming on Ubuntu with the Steam snap, and my overall experience with the distro after a few days of usage</em></h4>

<p>A few days ago, I switched from Arch Linux to Ubuntu. I&#39;ve been thinking about starting to use a distro more focused on <em>stability</em> and less on having the latest everything. Ubuntu was already the operating system my wife and my father were using, mainly due to the Ubunto Pro free tier, so I decided to go with it, too, and make my life easier when giving them support.</p>

<p>Surprisingly, the default Ubuntu experience improved a lot since I last used it. When was it? Ten years ago? More? I can&#39;t recall, but I know it was a long long time ago, in a galaxy far far away, and I remember using Unity. I miss Unity.

I did install some extensions for GNOME, changed the typeface, used my own <code>.fonts.conf</code>, and a few other configurations, installed and built some utilities I had used on Arch for more than five years, and that was it.</p>

<p>The only <em>issue</em> I&#39;ve had is using the Steam snap package and running games installed via Heroic Games Launcher&#39;s flatpak package, with shortcuts for them added to Steam. The confinement rules set for this snap don&#39;t let it use a lot of stuff outside of it, so I can&#39;t use the same setup I had on Arch.</p>

<p>I could install Steam with the <code>--classic</code> flag, which disables the confinement. However, if I&#39;m using Snap for isolation, I might as well take advantage of it. I could also use the deb provided by Steam, but I want to stay close to the default as much as possible so I don&#39;t have to deal with as many potential issues.</p>

<p>There&#39;s also the possibility of installing Steam via Flapak. I might do it eventually. But now, I want to use the Snap package and send some reports to the team. If you want to submit them, too, take a look at the <a href="https://github.com/canonical/steam-snap/wiki/Testing" rel="nofollow">Testing page</a> at the repo&#39;s wiki, and <a href="https://github.com/canonical/steam-snap/discussions/60" rel="nofollow">read the instructions</a> on how to submit carefully.</p>

<p>After thinking about this for a day, I remembered there&#39;s this application called <a href="https://github.com/kra-mo/cartridges" rel="nofollow">Cartridges</a>, that serves as a main hub for your gaming clients. Steam and Heroic are both supported, but for it to see the Snap package, you need to change the Steam path to <code>/home/USER/snap/steam/common/.steam/steam</code>.  <em>(don&#39;t forget to change USER to your username)</em></p>

<p>While this is not ideal, because I have to have another package installed, it fixes it for me. My main game hub is now Cartridges.</p>

<p>For custom Proton forks, like Proton-GE, ProtonUp-QT supports the Steam snap package out-of-the-box.</p>

<p>You can also use different Mesa environments with the package. The repo&#39;s wiki has <a href="https://github.com/canonical/steam-snap/wiki/FAQ#how-do-i-use-a-different-mesagraphics-version" rel="nofollow">all the instructions</a>. Shoutout to Diogo for mentioning this to me and for giving me a few tips that helped make the transition to this distribution easier.</p>

<p><a href="/brunomiguel/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/brunomiguel/tag:Ubuntu" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Ubuntu</span></a> <a href="/brunomiguel/tag:GamingOnLinux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">GamingOnLinux</span></a></p>
]]></content:encoded>
      <guid>https://infosec.press/brunomiguel/tips-for-gaming-on-ubuntu</guid>
      <pubDate>Sun, 22 Dec 2024 17:16:44 +0000</pubDate>
    </item>
    <item>
      <title>🔗 &#34;9 Best Free and Open Source Terminal-Based Internet Radio Apps&#34;</title>
      <link>https://infosec.press/brunomiguel/9-best-free-and-open-source-terminal-based-internet-radio-apps</link>
      <description>&lt;![CDATA[If you listen to online radio and prefer a client for the terminal, check this article on LinuxLinks.&#xA;&#xA;#Linux #CLI #OnlineRadio ]]&gt;</description>
      <content:encoded><![CDATA[<p>If you listen to online radio and prefer a client for the terminal, <strong><a href="https://www.linuxlinks.com/best-free-open-source-terminal-based-internet-radio-apps/" rel="nofollow">check this article on LinuxLinks</a>.</strong></p>

<p><a href="/brunomiguel/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/brunomiguel/tag:CLI" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">CLI</span></a> <a href="/brunomiguel/tag:OnlineRadio" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">OnlineRadio</span></a></p>
]]></content:encoded>
      <guid>https://infosec.press/brunomiguel/9-best-free-and-open-source-terminal-based-internet-radio-apps</guid>
      <pubDate>Tue, 07 May 2024 07:38:46 +0000</pubDate>
    </item>
    <item>
      <title>💻 Goodbye, Neofetch, and thanks for all the fish</title>
      <link>https://infosec.press/brunomiguel/goodbye-neofetch-and-thanks-for-all-the-fish</link>
      <description>&lt;![CDATA[Fastfetch custom configuration&#xA;&#xA;Neofetch is no more. The git repository for the venerable tool to show off the users&#39; window manager configurations on /r/unixporn was archived and will no longer be maintained. Granted, it hadn&#39;t received a commit for around 3 years, so this is not unexpected.&#xA;!--more--&#xA;Thankfully, many tools of this kind abound in the FOSS world. One is Fastfetch, which is very similar to Neofetch but supposedly faster. Moments ago, I installed Fastfech and wasted a little bit of time configuring it. Why? Because.&#xA;&#xA;The main difference between the two, from a user point of view, is that JSONC is used for Fastfetch&#39;s configuration. You can see all the options for the built-in modules on the schema present at the tool&#39;s repository or the documentation. You can also use my configuration below as a starting point.&#xA;&#xA;{&#xA;    &#34;$schema&#34;: &#34;https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/jsonschema.json&#34;,&#xA;    &#34;logo&#34;: {&#xA;        &#34;type&#34;: &#34;file&#34;,&#xA;        &#34;source&#34;: &#34;$HOME/.config/fastfetch/logo.txt&#34;&#xA;    },&#xA;    &#34;display&#34;: {&#xA;        &#34;separator&#34;: &#34;  -  &#34;&#xA;    },&#xA;    &#34;modules&#34;: [&#xA;        {&#xA;            &#34;type&#34;: &#34;custom&#34;,&#xA;            &#34;format&#34;: &#34;┌────────────────────────────────────────────────────────────┐&#34;&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;os&#34;,&#xA;            &#34;key&#34;: &#34;│  OS&#34;&#xA;        },&#xA;        {&#xA;                &#34;type&#34;: &#34;kernel&#34;,&#xA;                &#34;key&#34;: &#34;│  Kernel&#34;&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;packages&#34;,&#xA;            &#34;key&#34;: &#34;│  Packages&#34;,&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;wm&#34;,&#xA;            &#34;key&#34;: &#34;│  WM&#34;,&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;terminal&#34;,&#xA;            &#34;key&#34;: &#34;│  Terminal&#34;,&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;shell&#34;,&#xA;            &#34;key&#34;: &#34;│  Shell&#34;&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;display&#34;,&#xA;            &#34;key&#34;: &#34;│  Display&#34;&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;cpu&#34;,&#xA;            &#34;key&#34;: &#34;│  CPU&#34;,&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;gpu&#34;,&#xA;            &#34;key&#34;: &#34;│  GPU&#34;,&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;memory&#34;,&#xA;            &#34;key&#34;: &#34;│  Memory&#34;,&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;swap&#34;,&#xA;            &#34;key&#34;: &#34;│  Swap&#34;&#xA;        },&#xA;        {&#xA;            &#34;type&#34;: &#34;custom&#34;,&#xA;            &#34;format&#34;: &#34;└────────────────────────────────────────────────────────────┘&#34;&#xA;        },&#xA;        &#34;break&#34;,&#xA;        {&#xA;            &#34;type&#34;: &#34;colors&#34;&#xA;        }&#xA;    ]&#xA;}&#xA;&#xA;If you want something different, there are several options, such as Nitch, Pfetch, Catnip, and Meowfetch. I&#39;m the maintainer for the meowfetch-git package on Arch Linux&#39;s AUR, and I recommend it if you want to see a kitty every time you display your system info on the terminal.&#xA;&#xA;smallvia It&#39;s FOSS/small&#xA;&#xA;#Neofetch #Fastfetch #UnixPorn #Linux #FOSS ]]&gt;</description>
      <content:encoded><![CDATA[<p><img src="https://cld.pt/dl/download/26fcefc2-8b73-40e9-8126-5d4d7c90b81f/584db0621e3091b5.png" alt="Fastfetch custom configuration" title="Fastfetch custom configuration"></p>

<p><a href="https://news.itsfoss.com/neofetch-rip/" rel="nofollow">Neofetch</a> is no more. The git repository for the venerable tool to show off the users&#39; window manager configurations on /r/unixporn was archived and will no longer be maintained. Granted, it hadn&#39;t received a commit for around 3 years, so this is not unexpected.

Thankfully, many tools of this kind abound in the FOSS world. One is <a href="https://github.com/fastfetch-cli/fastfetch" rel="nofollow">Fastfetch</a>, which is very similar to Neofetch but supposedly faster. Moments ago, I installed Fastfech and wasted a little bit of time configuring it. Why? Because.</p>

<p>The main difference between the two, from a user point of view, is that JSONC is used for Fastfetch&#39;s configuration. You can see all the options for the built-in modules on the schema present at the tool&#39;s <a href="https://github.com/fastfetch-cli/fastfetch/blob/dev/doc/json_schema.json" rel="nofollow">repository</a> or the <a href="https://github.com/fastfetch-cli/fastfetch/wiki/Json-Schema" rel="nofollow">documentation</a>. You can also use my configuration below as a starting point.</p>

<pre><code class="language-json">{
    &#34;$schema&#34;: &#34;https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json&#34;,
    &#34;logo&#34;: {
        &#34;type&#34;: &#34;file&#34;,
        &#34;source&#34;: &#34;$HOME/.config/fastfetch/logo.txt&#34;
    },
    &#34;display&#34;: {
        &#34;separator&#34;: &#34;  -&gt; &#34;
    },
    &#34;modules&#34;: [
        {
            &#34;type&#34;: &#34;custom&#34;,
            &#34;format&#34;: &#34;┌────────────────────────────────────────────────────────────┐&#34;
        },
        {
            &#34;type&#34;: &#34;os&#34;,
            &#34;key&#34;: &#34;│  OS&#34;
        },
        {
                &#34;type&#34;: &#34;kernel&#34;,
                &#34;key&#34;: &#34;│  Kernel&#34;
        },
        {
            &#34;type&#34;: &#34;packages&#34;,
            &#34;key&#34;: &#34;│  Packages&#34;,
        },
        {
            &#34;type&#34;: &#34;wm&#34;,
            &#34;key&#34;: &#34;│  WM&#34;,
        },
        {
            &#34;type&#34;: &#34;terminal&#34;,
            &#34;key&#34;: &#34;│  Terminal&#34;,
        },
        {
            &#34;type&#34;: &#34;shell&#34;,
            &#34;key&#34;: &#34;│  Shell&#34;
        },
        {
            &#34;type&#34;: &#34;display&#34;,
            &#34;key&#34;: &#34;│  Display&#34;
        },
        {
            &#34;type&#34;: &#34;cpu&#34;,
            &#34;key&#34;: &#34;│  CPU&#34;,
        },
        {
            &#34;type&#34;: &#34;gpu&#34;,
            &#34;key&#34;: &#34;│  GPU&#34;,
        },
        {
            &#34;type&#34;: &#34;memory&#34;,
            &#34;key&#34;: &#34;│  Memory&#34;,
        },
        {
            &#34;type&#34;: &#34;swap&#34;,
            &#34;key&#34;: &#34;│  Swap&#34;
        },
        {
            &#34;type&#34;: &#34;custom&#34;,
            &#34;format&#34;: &#34;└────────────────────────────────────────────────────────────┘&#34;
        },
        &#34;break&#34;,
        {
            &#34;type&#34;: &#34;colors&#34;
        }
    ]
}

</code></pre>

<p>If you want something different, there are several options, such as Nitch, Pfetch, Catnip, and Meowfetch. I&#39;m the maintainer for the <a href="https://aur.archlinux.org/packages/meowfetch-git" rel="nofollow">meowfetch-git package</a> on Arch Linux&#39;s AUR, and I recommend it if you want to see a kitty every time you display your system info on the terminal.</p>

<p><small>via <a href="https://news.itsfoss.com/neofetch-rip/" rel="nofollow">It&#39;s FOSS</a></small></p>

<p><a href="/brunomiguel/tag:Neofetch" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Neofetch</span></a> <a href="/brunomiguel/tag:Fastfetch" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Fastfetch</span></a> <a href="/brunomiguel/tag:UnixPorn" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">UnixPorn</span></a> <a href="/brunomiguel/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/brunomiguel/tag:FOSS" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">FOSS</span></a></p>
]]></content:encoded>
      <guid>https://infosec.press/brunomiguel/goodbye-neofetch-and-thanks-for-all-the-fish</guid>
      <pubDate>Wed, 01 May 2024 20:53:57 +0000</pubDate>
    </item>
    <item>
      <title>🎮 Grand Utopia</title>
      <link>https://infosec.press/brunomiguel/grand-utopia</link>
      <description>&lt;![CDATA[Grand Utopia map overview&#xA;centersmallImage from the Grand Utopia website. All rights reserved to the project/small/center&#xA;&#xA;I uninstalled Euro Truck Simulator 2 (ETS2) a few weeks ago. I needed the space to install another game and try it out. That game was cool but not as good as ETS2, so I replaced it with the truck driving simulator. However, after watching a streamer use it, I added the Grand Utopia mod.&#xA;&#xA;Grand Utopia is a map mod of a fictional island, partially inspired by the game&#39;s French map. The best thing about it is it uses a 1:1 scale, unlike the official game maps, which means a trip takes around the same time as it would in real life for its distance. The scenery is also well made but uses more graphic elements, so expect it to utilize more resources.&#xA;&#xA;I&#39;ve been playing with this mod for over a week and enjoy it very much. The new places to unlock, the beautiful sceneries, and the 1:1 scale add to a pleasant gaming experience. I cannot recommend it enough.&#xA;&#xA;If you want to try Grand Utopia, there&#39;s one thing you need to do: create a new profile. It won&#39;t work with your current profiles and will even crash the game if you try to force it on an existing one.&#xA;&#xA;#Linux #LinuxGaming #ETS2 #EuroTruckSimulator2 #Gaming]]&gt;</description>
      <content:encoded><![CDATA[<p><img src="https://cld.pt/dl/download/073d0819-efb9-40ef-9c37-9b5b1432e132/ets2-20220415-134723-00.png" alt="Grand Utopia map overview" title="Grand Utopia map overview">
<small>Image from the <a href="https://www.grandutopia.fr/en/pages/maps/official-map-addons/more-about-grand-utopia.html" rel="nofollow">Grand Utopia</a> website. All rights reserved to the project</small></p>

<p>I uninstalled Euro Truck Simulator 2 (ETS2) a few weeks ago. I needed the space to install another game and try it out. That game was cool but not as good as ETS2, so I replaced it with the truck driving simulator. However, after watching a streamer use it, I added the Grand Utopia mod.</p>

<p>Grand Utopia is a map mod of a fictional island, partially inspired by the game&#39;s French map. The best thing about it is it uses a 1:1 scale, unlike the official game maps, which means a trip takes around the same time as it would in real life for its distance. The scenery is also well made but uses more graphic elements, so expect it to utilize more resources.</p>

<p>I&#39;ve been playing with this mod for over a week and enjoy it very much. The new places to unlock, the beautiful sceneries, and the 1:1 scale add to a pleasant gaming experience. I cannot recommend it enough.</p>

<p>If you want to try Grand Utopia, there&#39;s one thing you need to do: create a new profile. It won&#39;t work with your current profiles and will even crash the game if you try to force it on an existing one.</p>

<p><a href="/brunomiguel/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/brunomiguel/tag:LinuxGaming" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">LinuxGaming</span></a> <a href="/brunomiguel/tag:ETS2" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">ETS2</span></a> <a href="/brunomiguel/tag:EuroTruckSimulator2" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">EuroTruckSimulator2</span></a> <a href="/brunomiguel/tag:Gaming" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Gaming</span></a></p>
]]></content:encoded>
      <guid>https://infosec.press/brunomiguel/grand-utopia</guid>
      <pubDate>Sun, 28 Apr 2024 22:43:42 +0000</pubDate>
    </item>
    <item>
      <title>💻 Toggle screen blanking and screensaver on X11 from the terminal</title>
      <link>https://infosec.press/brunomiguel/toggle-screen-blanking-and-screensaver-on-x11-from-the-terminal</link>
      <description>&lt;![CDATA[I&#39;ve been having an issue on i3wm that&#39;s been bugging me: the screen blanking doesn&#39;t get disabled with software like caffeine or stimulator. Both used to work but suddenly stopped, and I have no idea why.&#xA;&#xA;Fortunately, there&#39;s xset to manage the screen blanking and screensaver from the terminal.&#xA;&#xA;I wrote a function for my shell (zsh) to make it more interactive and easier to use. On a window manager, I can attribute keybindings to specific options to toggle the screen blanking and the screensaver or query their statuses, then get a notification about the change or the query.&#xA;!--more--&#xA;The function is:&#xA;&#xA;function XScreenManage {&#xA;&#x9;&#x9;if ! command -v notify-send &amp;  /dev/null; then&#xA;&#x9;&#x9;&#x9;echo -e &#34;Warning: notify-send could not be found. Please install it using\&#xA;your distribution native package manager. On Arch Linux, you can install it\&#xA;with \&#34;sudo pacman -Sy libnotify\&#34;&#34;&#xA;&#x9;&#x9;&#x9;return 1 2  /dev/null&#xA;&#x9;&#x9;fi&#xA;&#xA;&#x9;&#x9;local blanking() {&#xA;&#x9;&#x9;&#x9;&#x9;blankingstatus=$(xset s q | grep -i blanking | cut -d &#34; &#34; -f3-6)&#xA;&#x9;&#x9;&#x9;&#x9;blankingoff=&#34;prefer blanking:  no&#34;&#xA;&#x9;&#x9;&#x9;&#x9;blankingon=&#34;prefer blanking:  yes&#34;&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;if [[ $blankingstatus = $blankingoff ]]; then&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;echo -e &#34;\n\e[0;93mEnabling screen blanking...&#34;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;xset s blank&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;xset s q | grep -i blanking | cut -d &#34; &#34; -f3-6&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;notify-send &#34;Screen blanking enabled&#34;&#xA;&#x9;&#x9;&#x9;&#x9;else&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;echo -e &#34;\n\e[0;93mDisabling screen blanking...&#34;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;xset s noblank&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;xset s q | grep -i blanking | cut -d &#34; &#34; -f3-6&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;notify-send &#34;Screen blanking disabled&#34;&#xA;&#x9;&#x9;&#x9;&#x9;fi&#xA;&#x9;&#x9;}&#xA;&#xA;&#x9;&#x9;local screensaver() {&#xA;&#x9;&#x9;&#x9;&#x9;screensaverstatus=$(xset s q | grep -i timeout | cut -d &#34; &#34; -f3-5)&#xA;&#x9;&#x9;&#x9;&#x9;screensaveroff=&#34;timeout:  0&#34;&#xA;&#x9;&#x9;&#x9;&#x9;screensaveron=&#34;timeout:  600&#34;&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;if [[ $screensaverstatus = $screensaveroff ]]; then&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;echo -e &#34;\n\e[0;93mEnabling screensaver...&#34;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;xset s on&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;xset s q | grep -i timeout | cut -d &#34; &#34; -f3-5&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;notify-send &#34;Screensaver enabled&#34;&#xA;&#x9;&#x9;&#x9;&#x9;else&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;echo -e &#34;\n\e[0;93mDisabling screensaver...&#34;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;xset s off&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;xset s q | grep -i timeout | cut -d &#34; &#34; -f3-5&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;notify-send &#34;Screensaver disabled&#34;&#xA;&#x9;&#x9;&#x9;&#x9;fi&#xA;&#x9;&#x9;}&#xA;&#xA;&#x9;&#x9;local status() {&#xA;&#x9;&#x9;&#x9;&#x9;notify-send &#34;$(xset s q | grep -i blanking | cut -d &#34; &#34; -f2-6)&#34;&#xA;&#x9;&#x9;&#x9;&#x9;notify-send &#34;$(xset s q | grep -i timeout | cut -d &#34; &#34; -f3-5)&#34;&#xA;&#x9;&#x9;&#x9;&#x9;xset s q | grep -i blanking | cut -d &#34; &#34; -f2-6&#xA;&#x9;&#x9;&#x9;&#x9;xset s q | grep -i timeout | cut -d &#34; &#34; -f3-5&#xA;&#x9;&#x9;}&#xA;&#xA;&#x9;&#x9;case &#34;$1&#34; in&#xA;&#x9;&#x9;&#x9;&#x9;-b)&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;blanking;;&#xA;&#x9;&#x9;&#x9;&#x9;-s)&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;screensaver;;&#xA;&#x9;&#x9;&#x9;&#x9;-q)&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;status;;&#xA;&#x9;&#x9;&#x9;&#x9;-h | )&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;echo -e &#34;-b\ttoggle screen blanking\n-s\ttoggle screensaver\n-q\t\&#xA;query screen blanking and screensaver status\n-h\tdisplay help&#34;&#xA;&#x9;&#x9;esac&#xA;}&#xA;&#xA;I only tested them with zsh, as a function in my .zshrc, but it should work with bash and dash. It probably doesn&#39;t work in shells like fish, though. Also, you need notify-send, but the script throws an error and stops if it doesn&#39;t detect it in your $PATH*.&#xA;&#xA;This function is licensed under the CC0 1.0 license.&#xA;&#xA;#Linux #X11 #Xset #WindowManager #i3wm]]&gt;</description>
      <content:encoded><![CDATA[<p>I&#39;ve been having an issue on <em>i3wm</em> that&#39;s been bugging me: the screen blanking doesn&#39;t get disabled with software like <a href="https://launchpad.net/caffeine" rel="nofollow"><em>caffeine</em></a> or <a href="https://flathub.org/apps/io.github.sigmasd.stimulator" rel="nofollow"><em>stimulator</em></a>. Both used to work but suddenly stopped, and I have no idea why.</p>

<p>Fortunately, there&#39;s <em>xset</em> to manage the screen blanking and screensaver from the terminal.</p>

<p>I wrote a function for my shell (<em>zsh</em>) to make it more interactive and easier to use. On a window manager, I can attribute keybindings to specific options to toggle the screen blanking and the screensaver or query their statuses, then get a notification about the change or the query.

The function is:</p>

<pre><code class="language-sh">function XScreenManage {
		if ! command -v notify-send &amp;&gt; /dev/null; then
			echo -e &#34;Warning: notify-send could not be found. Please install it using\
your distribution native package manager. On Arch Linux, you can install it\
with \&#34;sudo pacman -Sy libnotify\&#34;&#34;
			return 1 2&gt;/dev/null
		fi


		local blanking() {
				blanking_status=$(xset s q | grep -i blanking | cut -d &#34; &#34; -f3-6)
				blanking_off=&#34;prefer blanking:  no&#34;
				blanking_on=&#34;prefer blanking:  yes&#34;

				if [[ $blanking_status = $blanking_off ]]; then
					echo -e &#34;\n\e[0;93mEnabling screen blanking...&#34;
					xset s blank
					xset s q | grep -i blanking | cut -d &#34; &#34; -f3-6
					notify-send &#34;Screen blanking enabled&#34;
				else
					echo -e &#34;\n\e[0;93mDisabling screen blanking...&#34;
					xset s noblank
					xset s q | grep -i blanking | cut -d &#34; &#34; -f3-6
					notify-send &#34;Screen blanking disabled&#34;
				fi
		}

		local screensaver() {
				screensaver_status=$(xset s q | grep -i timeout | cut -d &#34; &#34; -f3-5)
				screensaver_off=&#34;timeout:  0&#34;
				screensaver_on=&#34;timeout:  600&#34;

				if [[ $screensaver_status = $screensaver_off ]]; then
					echo -e &#34;\n\e[0;93mEnabling screensaver...&#34;
					xset s on
					xset s q | grep -i timeout | cut -d &#34; &#34; -f3-5
					notify-send &#34;Screensaver enabled&#34;
				else
					echo -e &#34;\n\e[0;93mDisabling screensaver...&#34;
					xset s off
					xset s q | grep -i timeout | cut -d &#34; &#34; -f3-5
					notify-send &#34;Screensaver disabled&#34;
				fi
		}

		local status() {
				notify-send &#34;$(xset s q | grep -i blanking | cut -d &#34; &#34; -f2-6)&#34;
				notify-send &#34;$(xset s q | grep -i timeout | cut -d &#34; &#34; -f3-5)&#34;
				xset s q | grep -i blanking | cut -d &#34; &#34; -f2-6
				xset s q | grep -i timeout | cut -d &#34; &#34; -f3-5
		}

		case &#34;$1&#34; in
				-b)
						blanking;;
				-s)
						screensaver;;
				-q)
						status;;
				-h | *)
						echo -e &#34;-b\ttoggle screen blanking\n-s\ttoggle screensaver\n-q\t\
query screen blanking and screensaver status\n-h\tdisplay help&#34;
		esac
}
</code></pre>

<p>I only tested them with <em>zsh</em>, as a function in my <em>.zshrc</em>, but it should work with <em>bash</em> and <em>dash</em>. It probably doesn&#39;t work in shells like <em>fish</em>, though. Also, you need <em>notify-send</em>, but the script throws an error and stops if it doesn&#39;t detect it in your <em>$PATH</em>.</p>

<p>This function is licensed under the <a href="http://creativecommons.org/publicdomain/zero/1.0" rel="nofollow">CC0 1.0 license</a>.</p>

<p><a href="/brunomiguel/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/brunomiguel/tag:X11" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">X11</span></a> <a href="/brunomiguel/tag:Xset" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Xset</span></a> <a href="/brunomiguel/tag:WindowManager" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">WindowManager</span></a> <a href="/brunomiguel/tag:i3wm" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">i3wm</span></a></p>
]]></content:encoded>
      <guid>https://infosec.press/brunomiguel/toggle-screen-blanking-and-screensaver-on-x11-from-the-terminal</guid>
      <pubDate>Mon, 18 Mar 2024 09:27:36 +0000</pubDate>
    </item>
    <item>
      <title>💻 Plasma 6 minimal session</title>
      <link>https://infosec.press/brunomiguel/plasma-6-minimal-session</link>
      <description>&lt;![CDATA[Plasma 6 screenshot&#xA;centersmallImage from the KDE website. All rights reserved to the project/small/center&#xA;&#xA;Plasma 6.0.0 was released recently and two minor releases, 6.0.1 and 6.0.2 are already out, too. If you&#39;re on Arch Linux and you want to try this desktop environment but prefer to have a minimal set of packages, I have a metapackage you can use as is or to build your own. You can get it at Codeberg or Github.&#xA;!--more--&#xA;Both repositories have the PKGBUILD for building the package and the up-to-date binary package. Of course, you shouldn&#39;t blindly trust the binary package and are advised to build it yourself from the PKGBUILD. I only leave it there so I can quickly install it if I decide to reinstall Arch, and I don&#39;t want to spend a minute or so downloading the dependencies and building it.&#xA;&#xA;PS: I have similar metapackages for GNOME and XFCE.&#xA;&#xA;#Linux #KDE #Plasma #ArchLinux #Tips]]&gt;</description>
      <content:encoded><![CDATA[<p><img src="https://cld.pt/dl/download/12e32331-8416-42f0-988f-9cb1b1109b22/desktop.png" alt="Plasma 6 screenshot" title="Plasma 6 screenshot">
<small>Image from the KDE website. All rights reserved to the project</small></p>

<p>Plasma 6.0.0 was <a href="https://kde.org/announcements/megarelease/6/" rel="nofollow">released</a> recently and two minor releases, <a href="https://kde.org/announcements/plasma/6/6.0.1/" rel="nofollow">6.0.1</a> and <a href="https://kde.org/announcements/plasma/6/6.0.2/" rel="nofollow">6.0.2</a> are already out, too. If you&#39;re on Arch Linux and you want to try this desktop environment but prefer to have a <em>minimal</em> set of packages, I have a metapackage you can use as is or to build your own. You can get it at <a href="https://codeberg.org/brunomiguel/minimal-plasma/" rel="nofollow">Codeberg</a> or <a href="https://github.com/brunomiguel/minimal-plasma/" rel="nofollow">Github</a>.

Both repositories have the PKGBUILD for building the package and the up-to-date binary package. Of course, you shouldn&#39;t blindly trust the binary package and are advised to build it yourself from the PKGBUILD. I only leave it there so I can quickly install it if I decide to reinstall Arch, and I don&#39;t want to spend a minute or so downloading the dependencies and building it.</p>

<p>PS: I have similar metapackages for <a href="https://codeberg.org/brunomiguel/minimal-gnome" rel="nofollow">GNOME</a> and <a href="https://codeberg.org/brunomiguel/minimal-xfce" rel="nofollow">XFCE</a>.</p>

<p><a href="/brunomiguel/tag:Linux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Linux</span></a> <a href="/brunomiguel/tag:KDE" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">KDE</span></a> <a href="/brunomiguel/tag:Plasma" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Plasma</span></a> <a href="/brunomiguel/tag:ArchLinux" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">ArchLinux</span></a> <a href="/brunomiguel/tag:Tips" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Tips</span></a></p>
]]></content:encoded>
      <guid>https://infosec.press/brunomiguel/plasma-6-minimal-session</guid>
      <pubDate>Wed, 13 Mar 2024 01:37:08 +0000</pubDate>
    </item>
  </channel>
</rss>