A Bash script that keeps my Linux Mint 22 setup updated, tidy, and healthy - and writes a friendly, plain‑English report every time it runs. It’s practical, transparent, and a little fun.
- Peace of mind: I wanted updates that explain themselves.
- Trustworthy automation: Each chapter checks first, narrates actions, and errs on the side of safety.
- Time-saver: One command, a full system pass, and a clean summary at the end.
- Predictability: I can dry‑run to preview actions and impact.
- Safety: The most recent Timeshift snapshot is annotated as the last one before maintenance begins.
- Clarity: A single TXT report tells me what changed and how much space moved.
- Space savings: Reclaims significant disk space, like the 27GB freed in one run, keeping my system lean and efficient.
- Build automation that I personally need.
- Safety nets (snapshots, checks, gates) build confidence.
- Small tools, big leverage: clear UX makes infra feel effortless.
- Safety-first flow where every chapter checks state and handles errors gracefully.
- Timeshift annotation: marks the latest snapshot as the pre‑maintenance checkpoint.
- Dry‑run mode to preview changes and space impact before committing.
- Space tracking per step and overall, with a final summary.
- Create a Safety Checkpoint (Timeshift)
- Updating Command‑Line Tools (Homebrew)
- Updating Your Core System Software (APT)
- Checking for Package Issues
- Updating Desktop Applications (Flatpak)
- Updating Snap Applications
- Updating Python Tools
- Checking Standalone Applications (AppImage)
- Checking Device Firmware Updates
- Cleaning Up System Log Files
- Removing Old System Kernels
- Checking Hard Drive Health
- Updating Desktop Extensions (GNOME)
- Cleaning Up Docker Containers
- Refreshing File Search Database
- Deep Cleaning Temporary Files (BleachBit)
- Optimizing SSD Performance (fstrim)
- Checking Overall System Health
- Checking Graphics Card (NVIDIA)
- Verifying Automatic Security Updates
- Final Summary
Every chapter runs with safety in mind and logs clearly to the TXT report.
# Full maintenance run
bash minty_maintanance.sh
# Dry‑run (no changes) — preview what would happen and current state
bash minty_maintanance.sh dry-runShort context, action, result — with space impact where relevant:
------------------------------------------------------------------------
Chapter 10: Cleaning Up System Log Files
------------------------------------------------------------------------
📚 Your system keeps detailed logs of everything it does. Over time,
these can take up quite a bit of space.
🔧 Now I'm going to: clean up old system logs (keep 2 weeks)
Current log storage: 470.6M
✅ Done! Everything completed successfully.
Log storage after cleanup: 362.4M
------------------------------------------------------------
Chapter 21 — Maintenance Complete!
------------------------------------------------------------
🎉 All done! Here's what happened today:
Task | Status | Notes
------------------------------ | -------------------- | ------------------------------
Safety Checkpoint | ⚠️ Needs Attention | No data
Homebrew Tools | ✅ Success | Not installed (optional)
System Updates | ⚠️ Needs Attention | Updated successfully
Package Cleanup | ✅ Success | Cleaned 22 orphans
Flatpak Apps | ✅ Success | 9 apps updated
Snap Apps | ✅ Success | Updated & cleaned old versions
Python Tools | ✅ Success | Pipx apps checked
AppImage Check | ✅ Success | Found 6 AppImages, 8 /opt apps
Firmware Updates | ⚠️ Needs Attention | Updates installed - restart needed
Log Cleanup | ✅ Success | Cleaned to 362.4M
Kernel Cleanup | ⚠️ Needs Attention | Cleaned old kernels
Disk Health | ✅ Success | All drives healthy
GNOME Extensions | ⚠️ Needs Attention | 8 extensions updated
Docker Cleanup | ✅ Success | No data
Search Database | ⚠️ Needs Attention | Installed and initialized
Deep Clean | ✅ Success | Deep cleaned
SSD Optimization | ⚠️ Needs Attention | SSDs optimized
System Health | ⚠️ Needs Attention | Some service issues
Graphics Card | ✅ Success | GPU healthy, driver 550.163.01
Auto Updates | ⚠️ Needs Attention | Not installed
📊 Space Summary:
🎉 Freed up approximately 27648MB!
Available space: 529G
Script encountered an error but continuing to summary...
📋 Overall Assessment:
⚠️ Several items need your attention.
Review the orange items above for details.
💾 This report has been saved