Some time Linux Mint was my go-to desktop Linux: stable, predictable, beginner-friendly.
But after moving more of my daily workflow into development, infrastructure work, and local hosting (nginx, PHP, WordPress, OpenVPN, etc.), I felt the limits of the Ubuntu LTS ecosystem — especially outdated packages and the constant need for PPAs.
Eventually, after some experimentation, I migrated my laptop and desktop to CachyOS — a modern, optimized Arch-based distribution focused on performance, security, and sane defaults.
This post explains why I switched, how the migration went, what challenges I hit, and why I’m not planning to go back.
🧩 Goals & Motivation
- Move from an LTS-style environment to a rolling release without sacrificing stability.
- Get fresh packages — PHP 8.4, nginx 1.28, MariaDB 11, Node 24 — without PPAs or Snap.
- Improve performance on both systems:
- Laptop: ASUS X507UF
- Desktop: 12th Gen Intel i5-12400F + RTX 3060
- Simplify dev environment setup: nginx, php-fpm, WordPress CLI, Composer, local domains.
- Use BTRFS snapshots with Snapper + Limine bootloader for easy rollback.
⚙️ System Stack (What I Use Now)
Base System
- CachyOS (Arch-based, optimized kernels)
- Kernel: Cachy Kernel (with performance scheduler options)
Package Management
pacman— core packagesparu— AUR helper for everything non-standard
Desktop Environment
Used on both laptop and desktop:
- KDE Plasma 6
(XFCE caused a reproducible black-screen-after-resume issue on the laptop)
Shell
- Fish shell, clean, no plugins
(native autocompletion is excellent already)
Filesystems & Boot
- BTRFS with Snapper automatic snapshots
- Limine bootloader (fast, clean, modern)
Development Stack
- nginx 1.28
- PHP 8.4
- MariaDB 11.x
- Composer
- WP-CLI
- Node.js (via fnm)
- Local virtual hosts under
*.localvia nginx + mkcert
Memory Management
- zram only — no swapfile, no swap partition
(system feels faster and avoids SSD wear)
Security
- UFW (home profile)

🧱 Migration Process
1) Preparing Data
- Backed up my Mint home directory (documents, projects, configs).
- Exported nginx configs, VPN
.ovpnfiles, and web projects.
2) BIOS / UEFI Setup
Contrary to traditional recommendations:
- Fast Boot enabled — works fine on both machines
- Secure Boot → Disabled
- CSM → Disabled
- SATA mode: AHCI (desktops/laptops default anyway)
- VT-x / Virtualization → Enabled (for VMs, Docker later)
3) Disk Layout
Since I no longer use hibernation or swap:
/on NVMe SSD (100–120 GB)/homeon larger SSD/HDD- zram handles memory compression perfectly
4) Installing CachyOS
- Selected KDE Plasma
- Chose BTRFS + Snapper automatic snapshots
- Limine bootloader installed by default
- System booted immediately and extremely fast
5) Post-install Setup
- Recreated all local nginx hosts with wildcard mkcert
- Installed PHP 8.4, Composer, WP-CLI, Nginx, MariaDB
- Set up local OpenVPN configs under
/etc/openvpn/client/
🧠 Challenges & Solutions
❗ Suspend / Resume on XFCE (Laptop)
XFCE caused a black screen after resume — every time.
KDE Plasma: problem completely gone.
❗ Old Packages in Mint
PHP 8.4, nginx 1.28, Node 22, Composer 2.7 — all available instantly in CachyOS/Arch.
No PPAs, no Snap, no Frankenstein repos.
❗ Swap / Hibernate
Switched to zram only — and never looked back.
Hibernate disabled. Sleep is instant and reliable.
🧭 Why CachyOS Feels Better Than Mint
🔥 Fresh packages without breaking the system
Arch’s rolling release is surprisingly stable if you know what you’re doing.
⚡ Much faster boot and desktop experience
Limine + optimized kernel = near-instant boot.
🧹 Cleaner package ecosystem
No Snap, no PPAs, no backports.
🛠 Better developer experience
Everything is either in:
- official repos
- cachyos repos
- AUR
🎨 KDE Plasma 6 shines
- Beautiful UI
- Low RAM footprint
- No resume issues
- Highly customizable
🧩 Developer Perspective
| Feature | Linux Mint | CachyOS |
|---|---|---|
| nginx 1.28 | unavailable / requires custom repo | available instantly |
| PHP 8.4 | not in LTS repos | packaged or AUR |
| Composer | older version | latest |
| Node.js | old LTS | newest in repos |
| OpenVPN | works | works with more sane defaults |
| BTRFS Snapshots | Timeshift only | Snapper + Limine menu |
| Performance | good | excellent |
🪄 What I Liked
- Instant access to the latest development tools
- KDE Plasma working perfectly on both laptop and desktop
- Cleaner, faster system overall
- No dependency hell, no PPAs
- Snapper snapshots with a boot menu → a real lifesaver
- zram-only setup is incredibly smooth
- After coming from Cinnamon, discovering how polished KDE has become was a great surprise — and I plan to write more about how much it has evolved over the last decade
🧱 What I Didn’t Like
- Requires more involvement (it is Arch under the hood)
- KDE Plasma has more settings than a Cinnamon (but worth it)
- Occasional package rebuilds (AUR) take a minute
🚀 Final Thoughts
This switch wasn’t really about “changing distros” — it was about finding something that better fits the way I work today.
Mint remains a fantastic choice, especially for beginners and for anyone who values stability above everything else.
But moving to an Arch-based system with a modern setup and fresh packages gave me a noticeable boost in development workflow, performance, and overall control.
KDE Plasma, Snapper, zram, and the rolling-release model all came together in a way that feels quick, clean, and surprisingly stable.
For anyone who enjoys tuning their environment and having access to the latest tooling without the hassle of PPAs or Snap, this kind of setup can be a really refreshing experience.
Leave a Reply