<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Linux on Omid Farhang</title><link>https://omid.dev/tags/linux/</link><description>Recent content in Linux on Omid Farhang</description><image><title>Omid Farhang</title><url>https://omid.dev/images/bio-photo-150x150.jpg</url><link>https://omid.dev/images/bio-photo-150x150.jpg</link></image><generator>Hugo -- 0.163.3</generator><language>en-US</language><copyright>2026 Omid Farhang | All rights reserved.</copyright><lastBuildDate>Mon, 03 Aug 2026 14:22:00 +0330</lastBuildDate><atom:link href="https://omid.dev/tags/linux/index.xml" rel="self" type="application/rss+xml"/><item><title>A Maintainable Command-Line Workspace on Linux</title><link>https://omid.dev/2026/08/03/a-maintainable-command-line-workspace-on-linux/</link><pubDate>Mon, 03 Aug 2026 14:22:00 +0330</pubDate><guid>https://omid.dev/2026/08/03/a-maintainable-command-line-workspace-on-linux/</guid><description>Build a reproducible Linux command-line workspace with portable dotfiles, terminal, shell, multiplexer, SSH, and editor layers that remain maintainable across machines.</description></item><item><title>Local AI on Manjaro: Ollama, Aider, and Cline Without Another Subscription</title><link>https://omid.dev/2026/06/30/local-ai-with-ollama-aider-and-cline-on-manjaro/</link><pubDate>Tue, 30 Jun 2026 01:14:50 +0330</pubDate><guid>https://omid.dev/2026/06/30/local-ai-with-ollama-aider-and-cline-on-manjaro/</guid><description>A follow-up to the split Cursor workflow: install Ollama on Manjaro with CUDA, pull coding models, wire up Aider and Cline for scoped local work — with honest limits on tool reliability, privacy, and when to fall back to cloud models.</description></item><item><title>How to Stretch Cursor Pro Further: A Split AI Workflow</title><link>https://omid.dev/2026/06/29/how-to-stretch-cursor-pro-with-a-split-ai-workflow/</link><pubDate>Mon, 29 Jun 2026 10:00:00 +0330</pubDate><guid>https://omid.dev/2026/06/29/how-to-stretch-cursor-pro-with-a-split-ai-workflow/</guid><description>Cursor Pro is best when it edits code, not when it thinks out loud. A practical split workflow — Perplexity for current research, ChatGPT for planning, Claude for review, Ollama for cheap tasks, and Cursor for multi-file execution — plus what actually counts against your quota.</description></item><item><title>How I Learned My Linux Machine Has Been Compressing Memory for Years Without Me Knowing</title><link>https://omid.dev/2026/06/16/how-i-learned-my-linux-machine-has-been-compressing-memory-for-years/</link><pubDate>Tue, 16 Jun 2026 02:00:00 +0330</pubDate><guid>https://omid.dev/2026/06/16/how-i-learned-my-linux-machine-has-been-compressing-memory-for-years/</guid><description>After 15 years on Linux, I discovered zswap had been compressing inactive memory on my Manjaro laptop all along. A practical guide to checking zswap, zram, and memory compression on Linux, macOS, and Windows — plus a timeline of how we got here.</description></item><item><title>Building a Tiny Linux App to Explain Desktop Stutter</title><link>https://omid.dev/2026/06/04/building-a-tiny-linux-app-to-explain-desktop-stutter/</link><pubDate>Thu, 04 Jun 2026 01:38:00 +0330</pubDate><guid>https://omid.dev/2026/06/04/building-a-tiny-linux-app-to-explain-desktop-stutter/</guid><description>A hands-on Rust/Linux app walkthrough: build a small TUI that reads /proc and /sys, parses Pressure Stall Information, and turns kernel signals into an explanation for desktop stutter.</description></item><item><title>Ubuntu, Manjaro, and the Linux Desktop I Thought I'd Left Behind</title><link>https://omid.dev/2026/06/03/ubuntu-manjaro-and-the-linux-desktop-im-rethinking/</link><pubDate>Wed, 03 Jun 2026 01:10:00 +0330</pubDate><guid>https://omid.dev/2026/06/03/ubuntu-manjaro-and-the-linux-desktop-im-rethinking/</guid><description>After years on Manjaro KDE, I&amp;#39;m testing Kubuntu 26.04 again. A long-time Linux user&amp;#39;s honest look at what changed on Ubuntu, what Manjaro still does well, and why hybrid NVIDIA laptops make the decision harder than a distro chart.</description></item><item><title>How to Install Cursor IDE on Manjaro Linux</title><link>https://omid.dev/2026/05/29/how-to-install-cursor-ide-in-manjaro/</link><pubDate>Fri, 29 May 2026 16:45:00 +0330</pubDate><guid>https://omid.dev/2026/05/29/how-to-install-cursor-ide-in-manjaro/</guid><description>A practical AppImage-based Cursor IDE installation guide for Manjaro Linux, including launcher setup, desktop integration, icon extraction, and a small install/update/uninstall script.</description></item><item><title>Advanced Networking in Linux: VLANs, Bonding, and Bridging</title><link>https://omid.dev/2024/06/21/advanced-networking-in-linux-vlans-bonding-and-bridging/</link><pubDate>Fri, 21 Jun 2024 21:30:37 +0330</pubDate><guid>https://omid.dev/2024/06/21/advanced-networking-in-linux-vlans-bonding-and-bridging/</guid><description>A practical guide to Linux VLANs, bonding, and bridging: how to layer interfaces, avoid common mistakes, and build a resilient server or virtualization-host network.</description></item><item><title>Advanced Shell Scripting Techniques: Automating Complex Tasks with Bash</title><link>https://omid.dev/2024/06/19/advanced-shell-scripting-techniques-automating-complex-tasks-with-bash/</link><pubDate>Wed, 19 Jun 2024 01:34:32 +0330</pubDate><guid>https://omid.dev/2024/06/19/advanced-shell-scripting-techniques-automating-complex-tasks-with-bash/</guid><description>Advanced bash scripting examples for Linux admins: script optimization, error handling, parallel processing, and copy-paste automation patterns for complex tasks.</description></item><item><title>Mastering Concurrency in Rust: Tokio Structured Concurrency and Async Patterns</title><link>https://omid.dev/2024/06/15/mastering-concurrency-in-rust/</link><pubDate>Sat, 15 Jun 2024 18:12:21 +0330</pubDate><guid>https://omid.dev/2024/06/15/mastering-concurrency-in-rust/</guid><description>Learn Rust structured concurrency with Tokio: async/await patterns, task scopes, JoinSet, and advanced concurrency techniques for high-performance Rust applications.</description></item><item><title>Linux Malware targets WordPress and common Plugins</title><link>https://omid.dev/2023/01/16/linux-malware-targets-wordPress-and-common-plugins/</link><pubDate>Sun, 15 Jan 2023 23:55:43 +0330</pubDate><guid>https://omid.dev/2023/01/16/linux-malware-targets-wordPress-and-common-plugins/</guid><description>&lt;p&gt;Doctor Web has discovered a malicious Linux program that hacks websites based on a WordPress CMS. It exploits 30 vulnerabilities in a number of plugins and themes for this platform. If sites use outdated versions of such add-ons, lacking crucial fixes, the targeted webpages are injected with malicious JavaScripts. As a result, when users click on any area of an attacked page, they are redirected to other sites.&lt;/p&gt;
&lt;h2 id="what-they-can-do"&gt;What they can do?&lt;/h2&gt;
&lt;p&gt;Upon their command, it is able to perform the following actions:&lt;/p&gt;</description></item><item><title>How to Upgrade Ubuntu</title><link>https://omid.dev/2022/12/30/how-to-upgrade-ubuntu/</link><pubDate>Fri, 30 Dec 2022 23:55:43 +0330</pubDate><guid>https://omid.dev/2022/12/30/how-to-upgrade-ubuntu/</guid><description>&lt;h2 id="update-release-name-in-sources"&gt;Update Release Name in Sources&lt;/h2&gt;
&lt;p&gt;To start upgrading you need to change the /etc/apt/sources.list file and replace the name of your previous release with new one. So, for example if you are 20.04, replace every instance of focal with kinetic. If you currently have 22.04, replace jammy with kinetic.&lt;/p&gt;
&lt;p&gt;This process can be automated by using the following sed command:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo sed -i &lt;span class="s1"&gt;&amp;#39;s/jammy/kinetic/g&amp;#39;&lt;/span&gt; /etc/apt/sources.list
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Then, look in &lt;code&gt;/etc/apt/sources.list.d/&lt;/code&gt;. Change any files in there the same way.&lt;/p&gt;</description></item><item><title>How to Upgrade Ubuntu Kernel</title><link>https://omid.dev/2022/12/30/how-to-upgrade-ubuntu-kernel/</link><pubDate>Fri, 30 Dec 2022 23:55:43 +0330</pubDate><guid>https://omid.dev/2022/12/30/how-to-upgrade-ubuntu-kernel/</guid><description>&lt;p&gt;Ubuntu by default uses LTS Kernels:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Canonical provides long-term support (LTS) kernels for Ubuntu LTS releases. Canonical also provides interim operating system releases with updated kernels every 6 months.&lt;/p&gt;
&lt;p&gt;For customers and business partners that don’t have specialised bleeding-edge workloads or latest hardware needs, the latest LTS release ”-generic” kernel is the best option for them such as the 4.15 default kernel in Ubuntu 18.04 LTS. Customers who need the latest hardware support capability can install the latest HWE kernel such as the ones contained in interim releases, keeping in mind the shorter support lifespan associated with these kernels (9 months). HWE kernel customers are recommended to upgrade to a newer LTS release that supports their hardware and/or software needs as soon as it is available. Another option for customers is to use point releases. For example, there is an 18.04.4 point release as of February 2020, which includes an updated 5.3.x kernel but is also considered LTS, exactly like the original GA 4.15 kernel in 18.04.&lt;/p&gt;</description></item><item><title>Cross-platform botnet targets SSH-enabled devices</title><link>https://omid.dev/2022/12/16/cross-platform-botnet-targets-ssh-enabled-devices/</link><pubDate>Mon, 12 Dec 2022 23:37:43 +0330</pubDate><guid>https://omid.dev/2022/12/16/cross-platform-botnet-targets-ssh-enabled-devices/</guid><description>&lt;p&gt;Microsoft researchers found a cross-platform botnet that originates from malicious software downloads on Windows devices &amp;amp; succeeds in propagating to a variety of Linux-based devices by enumerating default credentials on internet-exposed SSH-enabled devices.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Microsoft researchers observed that the initial infection points related to the botnet were devices infected through the installation of malicious cracking tools that purport to acquire illegal Windows licenses. The cracking tools contain additional code that downloads and launches a fake version of svchost.exe through a PowerShell command. In some cases, the downloaded file is named svchosts.exe.&lt;/p&gt;</description></item><item><title>How To Use Cloudflare WARP On Linux</title><link>https://omid.dev/2022/11/27/how-to-use-cloudflare-warp-on-linux/</link><pubDate>Sun, 27 Nov 2022 01:33:51 +0330</pubDate><guid>https://omid.dev/2022/11/27/how-to-use-cloudflare-warp-on-linux/</guid><description>Install and configure Cloudflare WARP on Ubuntu and Manjaro Linux: Zero Trust client setup, systemd service, and connecting through Cloudflare&amp;#39;s network.</description></item><item><title>Install and Configure Oh My Zsh and use it in VSCode or Cursor</title><link>https://omid.dev/2019/06/05/install-and-configure-oh-my-zsh-and-use-it-in-vscode-in-linux/</link><pubDate>Wed, 05 Jun 2019 00:45:20 +0000</pubDate><guid>https://omid.dev/2019/06/05/install-and-configure-oh-my-zsh-and-use-it-in-vscode-in-linux/</guid><description>Install Oh My Zsh on Ubuntu, Manjaro, or Arch Linux, then use Zsh as the integrated terminal in VS Code or Cursor IDE with Powerlevel10k, Nerd Fonts, and useful plugins.</description></item><item><title>Set a Permanent Custom Resolution on Ubuntu and KDE with xrandr and Xsetup</title><link>https://omid.dev/2018/05/24/set-permanent-custom-resolution-for-ubuntu-and-kde/</link><pubDate>Thu, 24 May 2018 22:50:53 +0000</pubDate><guid>https://omid.dev/2018/05/24/set-permanent-custom-resolution-for-ubuntu-and-kde/</guid><description>How to add an undetected monitor mode with cvt and xrandr, then make it persist across reboot and the SDDM login screen on Kubuntu/KDE via Xsetup — with notes for modern Plasma and Wayland.</description></item><item><title>Google Chrome in Ubuntu keeps detecting network change</title><link>https://omid.dev/2017/07/06/google-chrome-ubuntu-keeps-detecting-network-change/</link><pubDate>Thu, 06 Jul 2017 19:14:41 +0000</pubDate><guid>https://omid.dev/2017/07/06/google-chrome-ubuntu-keeps-detecting-network-change/</guid><description>&lt;p&gt;Recently I had problem with my Ubuntu, Whenever I tried to open a website my Chromium told me that a Network Change has been detected and after 1-2 reload that sites would load and sometimes failed to load fully.&lt;/p&gt;
&lt;p&gt;After looking up for that problem, I found out many other people had same problem and it has something to do with &lt;a href="https://askubuntu.com/questions/905866/new-ubuntu-17-04-problem-your-connection-was-interrupted"&gt;“avahi-daemon”&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="solution"&gt;Solution&lt;/h2&gt;
&lt;p&gt;According to the links I found in Ubuntu forums, this problem comes from IPv6 in Ubuntu and disabling that service will fix it, I tried it and it worked:&lt;/p&gt;</description></item><item><title>Security vulnerability in NVIDIA's proprietary Linux drivers fixed</title><link>https://omid.dev/2012/04/12/security-vulnerability-in-nvidias-proprietary-linux-drivers-fixed/</link><pubDate>Thu, 12 Apr 2012 19:01:00 +0000</pubDate><guid>https://omid.dev/2012/04/12/security-vulnerability-in-nvidias-proprietary-linux-drivers-fixed/</guid><description>&lt;p&gt;&lt;img loading="lazy" src="http://lh6.ggpht.com/-gtXFjG4z3M8/T4cfj6WzceI/AAAAAAAAFeg/4uqTaeWiYlQ/s1600-h/NVIDIA_logo200%25255B3%25255D.png" alt="NVIDIA_logo200" /&gt;
&lt;/p&gt;
&lt;p&gt;The H-Online: A new version of NVIDIA&amp;rsquo;s &lt;a href="http://www.nvidia.com/object/unix.html"&gt;proprietary UNIX graphics drivers&lt;/a&gt; for Linux, Solaris and FreeBSD fixes a &lt;a href="http://nvidia.custhelp.com/app/answers/detail/a_id/3109"&gt;security vulnerability&lt;/a&gt; (&lt;a href="http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-0946"&gt;CVE-2012-0946&lt;/a&gt;) that allowed attackers to read and write arbitrary system memory in order to, for example, obtain root privileges. To take advantage of the vulnerability, an attacker must have access permission for some device files – which, for systems with these drivers, is typically the case for users who can launch a graphical interface as 3D acceleration and some other features cannot be used otherwise.&lt;/p&gt;</description></item><item><title>Pinguy OS 11.04 Pre-Alpha Released</title><link>https://omid.dev/2011/03/15/pinguy-os-11-04-pre-alpha-released/</link><pubDate>Tue, 15 Mar 2011 10:26:00 +0000</pubDate><guid>https://omid.dev/2011/03/15/pinguy-os-11-04-pre-alpha-released/</guid><description>&lt;p&gt;Pinguy OS an out-of-the-box working operating system for everyone, not just geeks.This OS is for people that have never used Linux before or for people that just want an out-of-the-box working OS without doing all the tweaks and enhancements that everyone seems to do when installing a fresh copy of Ubuntu or other Linux based Distro&amp;rsquo;s.&lt;/p&gt;
&lt;p&gt;Read Full Story here: &lt;a href="http://www.ubuntugeek.com/pinguy-os-11-04-pre-alpha.html"&gt;http://www.ubuntugeek.com/pinguy-os-11-04-pre-alpha.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img loading="lazy" src="https://omid.dev/images/2011/03/pinguy.jpg" alt="Pinguy OS" /&gt;
&lt;/p&gt;</description></item></channel></rss>