[category: Linux]

My Daily Driver: Fedora KDE Plasma as a Computer Engineering Graduate

10 min read · Linux

As a Computer Engineering graduate, I don't see an operating system as just a tool — I see it as a learning environment. Over the past few years, I experimented with Ubuntu, Arch Linux, Debian, RHEL, and Pop!_OS. Each distribution taught me something different about Linux internals, package management, and system architecture.

After all that experimentation, I finally settled on Fedora Linux (KDE Spin) as my daily driver.

On this page

This article explains:

  • Why I chose Fedora KDE
  • How I configured it
  • Why I use Docker for containerization
  • How this setup supports my development and DevOps learning

🐧 What is Fedora?

Fedora Linux is a community-driven Linux distribution sponsored by Red Hat. It serves as the upstream for Red Hat Enterprise Linux. Many technologies used in enterprise environments are first tested and refined in Fedora. For someone aiming toward system engineering or DevOps roles, that alignment matters.

💎 Why KDE Plasma?

I chose the KDE Spin because of KDE Plasma's customizability, advanced window rules, and lightweight performance. As a developer, I constantly run multiple terminal sessions, inspect logs, and monitor services. KDE allows precise control without additional extensions.

🛠 My Development Environment

Programming Stack

  • Python (automation & scripting)
  • Git (version control)
  • Zed (primary IDE)
  • Docker (containerization)

Daily Linux Tools

  • htop – process monitoring
  • tmux – persistent sessions
  • dnf – package management
  • systemctl – service control

📦 Why I Use Docker

While Fedora has great support for alternatives, I stick to Docker for my containerization needs. It remains the industry standard, and using Docker ensures complete compatibility with the workflows, CI/CD pipelines, and Compose setups I use across all my development projects.

🧠 What Fedora Taught Me About Linux Internals

Running Fedora as a daily driver broke the illusion of the GUI. When a display manager fails or an audio server acts up, you can't just reboot and hope it fixes itself. You have to drop into a TTY and fix it.

Through troubleshooting and optimization, I gained a deep, practical understanding of systemd (creating custom service files, managing daemon lifecycles, and analyzing boot times via systemd-analyze blame). I learned how the Linux kernel interfaces with hardware via sysfs and procfs, how to manage GRUB boot parameters, and the intricacies of the Linux networking stack and firewall rules (firewalld).

More importantly, it forced me to master the terminal. Navigating file hierarchies, managing POSIX permissions, using grep/awk/sed for log analysis, and writing Bash scripts to automate my backup and dotfile synchronization became second nature.

🚀 Career Impact

Switching to Fedora KDE was the inflection point where I stopped being just a "consumer" of computing and started being an engineer.

When I stepped into my internship at BARC and later began exploring cloud infrastructure, there was zero learning curve for the environment. The servers were running Linux, the containers were running Linux, and my laptop was running Linux. Knowing how to SSH into a headless server, diagnose a failing service, or write a quick shell script to parse a gigabyte of logs are skills I use every single day.

It transformed Linux from a desktop environment into a professional engineering platform, giving me the foundational DevOps knowledge required to confidently deploy and manage full-stack applications in production.

It's not just my operating system. It's my engineering lab.