Files
linux_system_tuning/CHANGELOG.md
mindesbunister 8e5e370e09 Add automatic application configuration for tmpfs caches
- Auto-detect and configure Firefox cache location in prefs.js
- Auto-create optimized .desktop launchers for Chrome/Chromium/Brave
- Auto-configure NPM and Pip cache directories
- Auto-link KDE/Plasma thumbnail cache to tmpfs
- Add configure_applications_for_tmpfs() function with smart detection
- Backup original configs before modification
- Set proper ownership and permissions for all cache directories
- Replace manual setup instructions with automatic configuration
- Show progress of configured applications with count
- Update next steps to reflect automatic setup

Benefits:
- Zero post-setup manual configuration needed
- Immediate performance improvement on app restart
- Safer with automatic backups and proper permissions
- Better user experience with clear progress reporting
2025-10-06 09:25:01 +02:00

3.8 KiB

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