# Changelog ## [2025-10-06] - Automatic Application Configuration ### Added - **Automatic browser cache configuration**: Script now automatically detects and configures browsers - Firefox: Automatically updates prefs.js with tmpfs cache location - Chrome/Chromium: Creates optimized .desktop launchers with --disk-cache-dir flag - Brave: Creates optimized .desktop launcher with tmpfs cache - Automatic backup of original configurations before modifications - **Automatic development tools configuration**: - NPM: Automatically configures cache directory via npm config - Pip: Creates pip.conf with tmpfs cache location - Proper user/group ownership for all configured directories - **Automatic desktop environment integration**: - KDE/Plasma: Automatically links thumbnail cache to tmpfs - Proper symlink management with backup of existing directories - **Smart detection**: Only configures applications that are actually installed - **Progress reporting**: Shows which applications were successfully configured - **User guidance**: Clear instructions for restarting configured applications ### Changed - Replaced manual configuration instructions with automatic setup - Improved user experience by eliminating post-setup manual steps - Updated "Next Steps" to reflect automatic configuration ### Benefits - **Zero manual configuration** needed after running the optimizer - **Immediate performance boost** upon restarting configured applications - **Safer implementation** with automatic backups and proper permissions - **User-friendly** progress reporting during configuration ## [2025-09-23] - Overlay Filesystem Removal ### Removed - **Overlay filesystem functionality**: Removed unused overlay filesystem features - Removed `OVERLAY_ENABLED` and `OVERLAY_PROTECT_CONFIGS` from configuration - Removed `overlayfs` sections from all profile JSON files - Removed overlay references from documentation and scripts - Added overlay detection and removal functionality for existing mounts ### Added - **Overlay cleanup functionality**: Added ability to detect and remove overlay mounts - `remove_overlays()` function to safely unmount overlay filesystems - Automatic cleanup of overlay work/upper directories - Removal of overlay entries from /etc/fstab - User prompt when overlay mounts are detected ### Rationale - Overlay filesystems are complex and rarely needed on desktop systems - Most users benefit more from tmpfs cache optimization than overlay complexity - Simplified codebase by removing unused/incomplete functionality ## [2025-09-23] - tmpfs Setup Fix ### Fixed - **one-button-optimizer.sh**: Fixed critical issue where tmpfs setup was not working - Added missing `setup_tmpfs()` function that was referenced but not implemented - Enhanced tmpfs analysis to actually scan system for cache directories - Added intelligent profile recommendation based on RAM size and existing cache data - Fixed tmpfs persistence by generating proper fstab entries - Updated systemd service to restore tmpfs mounts after reboot ### Enhanced - **tmpfs Analysis**: Now scans for actual cacheable data: - Browser caches (Chrome, Firefox, Chromium) - Package caches (/var/cache/apt) - Temporary files - Shows actual cache sizes and provides intelligent recommendations ### Technical Details - **Issue**: When users selected "yes" for tmpfs setup, nothing happened because the `setup_tmpfs` function was missing - **Root Cause**: The function was called in main() but never defined - **Solution**: Implemented complete tmpfs setup with intelligent sizing and persistence ### Testing - Added test script (`test-tmpfs-fix.sh`) to verify functionality - Confirmed syntax validation passes - Verified tmpfs analysis logic works correctly ## Previous versions - Initial implementation with zram, kernel tuning, and basic tmpfs detection