Skip to content

Mac OS tweaks for Sequoia and Mojave to reduce system settings to provide more performace to older Mac Harder

License

Notifications You must be signed in to change notification settings

XoniBlue/MacTweaks

Repository files navigation

MacTweaks

A comprehensive, modular performance optimization toolkit for macOS — designed especially for Intel Macs running macOS Sequoia and later.

License: MIT macOS Shell


🚀 Quick Start

Want to get started in 60 seconds? Check out QUICKSTART.md for the fastest path to optimization.

# Clone, install, and optimize in three commands
git clone https://github.com/XoniBlue/MacTweaks.git
cd MacTweaks
./install.sh && mactweaks --apply-profile balanced

Table of Contents


Overview

MacTweaks is a shell-based toolkit that optimizes macOS performance by disabling unnecessary background services, reducing visual overhead, and tuning system preferences. It's particularly effective on older Intel Macs where every bit of CPU and memory matters.

All changes are fully reversible — no system files are modified, only user preferences, power settings, and background daemons.

Why MacTweaks?

  • Breathe new life into aging hardware — Reduce CPU usage by disabling Spotlight indexing, Siri, analytics, and more
  • Faster UI responsiveness — Eliminate animation delays, reduce transparency, and streamline Finder
  • Extend battery life — Smart power management tweaks for portable Macs
  • Full transparency — Every command is documented in MODULES.md
  • Safe & reversible — One command reverts everything back to stock macOS
  • Modular architecture — Apply or revert individual tweaks independently

Features

  • Curated Profiles — Pre-configured optimization bundles (max, balanced, battery)
  • Modular Architecture — 26 independent modules for fine-grained control
  • Interactive Menu — User-friendly TUI for those who prefer guided setup
  • Before/After Reports — Automatic comparison reports showing exactly what changed
  • Automatic Backups — Preferences are backed up before modifications
  • Intel & Apple Silicon Support — Optimized for both architectures (Intel sees the biggest gains)
  • Post-Reboot Reporting — A Terminal window opens after reboot with a clean diff report
  • Dry-Run Mode — Preview changes without applying them
  • Professional Installation — Easy system-wide or user-only install with install.sh
  • Complete Uninstallation — Clean removal with optional settings revert via uninstall.sh

Requirements

Requirement Details
macOS Version macOS Sequoia (15.x) recommended; compatible with Sonoma (14.x) and earlier
Architecture Intel (x86_64) or Apple Silicon (arm64)
Privileges Administrator access required for system-level tweaks
Shell Bash 3.2+ (ships with macOS)

Installation

Quick Install (Recommended)

git clone https://github.com/XoniBlue/MacTweaks.git
cd MacTweaks
chmod +x install.sh
./install.sh

The installer will guide you through:

  1. System-wide installation (/usr/local/bin) - requires sudo, available to all users
  2. User-only installation (~/.local/bin) - no sudo needed, current user only
  3. Skip installation - use directly with ./bin/mac-tweaks.sh

Manual Installation

git clone https://github.com/XoniBlue/MacTweaks.git
cd MacTweaks
chmod +x bin/mac-tweaks.sh
./bin/mac-tweaks.sh

One-Liner Installation

git clone https://github.com/XoniBlue/MacTweaks.git && cd MacTweaks && chmod +x install.sh && ./install.sh

After installation, you can run:

mactweaks              # If installed system-wide or ~/.local/bin is in PATH
./bin/mac-tweaks.sh    # Direct execution without installation

Usage

Interactive Mode

Simply run the script without arguments to launch the interactive menu:

mactweaks
# or
./bin/mac-tweaks.sh

The menu provides guided access to all features:

  1. Apply Profile — Choose from max, balanced, or battery
  2. Revert Profile — Undo changes from a specific profile or revert all
  3. Apply Individual Module — Fine-grained control over specific tweaks
  4. Generate Report Now — Instant before/after comparison (no reboot required)
  5. List Modules — View all available optimization modules
  6. Export Latest Report — Copy report to Desktop for easy sharing
  7. Dry-run Profile — Simulate changes without applying
  8. Help — Display usage information
  9. Uninstall — Remove toolkit state and launch agents
  10. Quit — Exit the program

Command Line Interface

For scripting and automation, use command-line flags:

# Display help
mactweaks --help

# Apply a profile
mactweaks --apply-profile max
mactweaks --apply-profile balanced
mactweaks --apply-profile battery

# Revert a specific profile
mactweaks --revert-profile max

# Revert ALL changes (restore stock macOS)
mactweaks --revert-profile all

# Apply/revert a single module
mactweaks --module spotlight --apply
mactweaks --module spotlight --revert

# Generate a report immediately
mactweaks --report

# List all available modules
mactweaks --list-modules

# Uninstall toolkit state
mactweaks --uninstall

# Enable debug output
mactweaks --debug --apply-profile max

Profiles

MacTweaks includes pre-configured profiles for different use cases:

Profile Description Best For
max Maximum performance — disables everything non-essential Desktop Intel Macs, older MacBooks plugged in
balanced Performance gains while preserving iCloud, Continuity, and AirDrop Daily drivers, mixed use (⭐ Recommended)
battery Conservative tweaks focused on power savings MacBooks on battery power
dryrun Preview mode — shows what would change without applying Testing, learning

Profile Comparison

Module max balanced battery
Spotlight
Siri
Analytics
UI Animations
Live Activities
Text Autocorrect
Time Machine Local
Photos Analysis
Finder Tweaks
iCloud Save Default
Visual Effects
App Nap
QuickLook Cache
Power Nap / TCP
AirDrop
Handoff
Auto Updates
Window Shadows
Apple Intelligence
Maintenance
Login Items Audit
Low Power Mode

Need help choosing? See MODULE_DEPENDENCIES.md for detailed recommendations.


Modules

MacTweaks is built around 26 independent modules, each handling a specific optimization:

Performance Modules

Module Description
spotlight Disables Spotlight indexing and search suggestions
ui Removes Dock/window animation delays for snappier feel
finder Optimizes Finder: faster animations, path bar, no .DS_Store on network
quicklook Clears QuickLook thumbnail cache
appnap Disables App Nap for consistent app performance
shadows Disables window drop shadows
visual Reduces motion and transparency (manual setting on Sequoia)

Privacy & Telemetry Modules

Module Description
analytics Disables Apple analytics and diagnostic reporting
siri Disables Siri and related assistant services
appleintelligence Disables Apple Intelligence features (macOS 15+)
live Disables Live Activities tracking

Cloud & Sync Modules

Module Description
icloud Prevents new documents from saving to iCloud by default
photos Disables Photos face/scene analysis daemon
handoff Disables Handoff/Continuity features
airdrop Disables AirDrop discovery

Power Management Modules

Module Description
pmset Disables Power Nap and TCP keepalive for battery savings
powermode Enables Low Power Mode on battery
timemachine Disables local Time Machine snapshots

Input & Text Modules

Module Description
text Disables spell check, autocorrect, and text completion

System Modules

Module Description
updates Disables automatic update checks
maintenance Runs system maintenance: flush DNS, periodic scripts, log cleanup
loginitems Lists current login items for audit
backup Backs up current Finder, Dock, and Global preferences

Utility Modules

Module Description
updatecheck Displays informational update messages
exportreport Copies the latest report to Desktop
dryrun Simulation mode for testing

For the exact commands each module executes, see MODULES.md.


Safety & Reverting

All changes are fully reversible. MacTweaks only modifies:

  • User preference files (defaults write)
  • Power management settings (pmset)
  • Launch daemons/agents (launchctl)

No system files are touched. No SIP modifications required.

How to Revert

Via Interactive Menu:

  1. Run mactweaks
  2. Select 2) Revert profile
  3. Choose 4) all to restore stock settings

Via Command Line:

mactweaks --revert-profile all

Revert a specific profile only:

mactweaks --revert-profile max

Uninstalling the Toolkit

To remove MacTweaks completely (with optional settings revert):

./uninstall.sh
# or
mactweaks --uninstall  # (removes data only, not settings)

The uninstaller offers:

  • Full uninstall - Remove files + revert all settings to stock
  • Files only - Remove MacTweaks files, keep current settings

Before & After Reports

MacTweaks automatically captures system state before and after applying changes:

  1. Pre-change snapshot — Captures current settings
  2. Post-reboot comparison — A Terminal window opens after restart showing a clean diff
  3. Manual reports — Generate anytime via Menu → 4 or --report

Reports include:

  • Spotlight indexing status
  • Power management settings (pmset)
  • Top CPU processes
  • Memory statistics
  • Disk I/O metrics
  • Thermal/fan data (when available)

Export Reports

mactweaks
# Select: 6) Export latest report to Desktop

Reports are saved with timestamps for easy comparison over time.


Documentation

MacTweaks includes comprehensive documentation:

Document Description
QUICKSTART.md Get started in 60 seconds — the fastest path to optimization
MODULES.md Complete module reference with exact commands executed
MODULE_DEPENDENCIES.md Module combinations, dependencies, and recommendations
CHANGELOG.md Version history and release notes
ERROR_HANDLING_IMPROVEMENTS.md Technical guide for improving code robustness

Folder Structure

MacTweaks/
├── bin/
│   └── mac-tweaks.sh          # Main entry point
├── lib/
│   ├── config.sh              # Configuration constants
│   ├── detect.sh              # Hardware/OS detection
│   ├── help.sh                # Help screen text
│   ├── logging.sh             # Colored logging utilities
│   ├── menus.sh               # Interactive menu system
│   ├── postreboot.sh          # Post-reboot report handler
│   ├── profiles.sh            # Profile definitions
│   ├── reports.sh             # Report generation
│   ├── snapshots.sh           # System state snapshots
│   ├── sudo_keepalive.sh      # Sudo session management
│   └── utils.sh               # Shared utilities
├── modules/
│   ├── airdrop.sh             # AirDrop toggle
│   ├── analytics.sh           # Analytics toggle
│   ├── appleintelligence.sh   # Apple Intelligence toggle
│   ├── appnap.sh              # App Nap toggle
│   ├── backup.sh              # Preferences backup
│   ├── customprofile.sh       # Custom profile support
│   ├── dryrun.sh              # Dry-run preview
│   ├── exportreport.sh        # Report export
│   ├── finder.sh              # Finder optimizations
│   ├── handoff.sh             # Handoff toggle
│   ├── icloud.sh              # iCloud defaults
│   ├── live.sh                # Live Activities toggle
│   ├── loginitems.sh          # Login items audit
│   ├── maintenance.sh         # System maintenance
│   ├── photos.sh              # Photos daemon toggle
│   ├── pmset.sh               # Power settings
│   ├── powermode.sh           # Low Power Mode
│   ├── quicklook.sh           # QuickLook cache
│   ├── shadows.sh             # Window shadows
│   ├── siri.sh                # Siri toggle
│   ├── spotlight.sh           # Spotlight toggle
│   ├── text.sh                # Text correction toggle
│   ├── timemachine.sh         # Time Machine local
│   ├── ui.sh                  # UI animations
│   ├── updatecheck.sh         # Update info
│   ├── updates.sh             # Auto-updates toggle
│   └── visual.sh              # Visual effects
├── install.sh                  # Installation script
├── uninstall.sh                # Uninstallation script
├── README.md                   # This file
├── QUICKSTART.md               # Quick start guide
├── MODULES.md                  # Detailed module reference
├── MODULE_DEPENDENCIES.md      # Module relationships guide
├── CHANGELOG.md                # Version history
└── LICENSE                     # MIT License

FAQ

Will this break my Mac?

No. All changes are to user-level preferences and can be fully reverted. System Integrity Protection (SIP) remains enabled. MacTweaks doesn't modify system files.

Does this work on Apple Silicon?

Yes, but the performance impact is smaller. Apple Silicon Macs are already highly optimized. Intel Macs benefit the most (10-30% improvement vs 5-15% on Apple Silicon).

Why can't it set Reduce Motion/Transparency on Sequoia?

macOS Sequoia restricts programmatic access to certain accessibility settings. You'll need to enable these manually: System Settings → Accessibility → Display → Reduce Motion / Reduce Transparency

Can I create custom profiles?

Not yet in the UI, but you can call individual modules via --module <name> --apply. Custom profile support is planned. See MODULE_DEPENDENCIES.md for recommended combinations.

How do I know what changed?

Run mactweaks --report or use the automatic post-reboot report that appears in Terminal. All changes are also logged to:

~/Library/Application Support/MacTweaks/logs/toolkit_YYYY-MM-DD.log

Is my data safe?

MacTweaks doesn't access, read, or modify your personal data. It only changes system preferences and toggles background services. Everything is transparent and documented.

What if I only want some optimizations?

Use individual modules instead of profiles:

mactweaks --module ui --apply
mactweaks --module spotlight --apply
# etc.

Or create your own combination based on MODULE_DEPENDENCIES.md.

How much improvement should I expect?

Intel Macs:

  • CPU usage: 10-30% reduction
  • Battery life: 20-40% improvement (laptops)
  • UI responsiveness: 2-3x faster (perceived)
  • Thermals: Noticeably cooler, quieter fans

Apple Silicon:

  • UI responsiveness: 5-15% improvement
  • Battery life: 10-15% improvement
  • CPU/thermal: Minimal (already optimized)

Can I run this on multiple Macs?

Yes! Install on each Mac. Profiles are customized per machine. You can use different profiles for different machines (e.g., max on desktop, balanced on laptop).


Troubleshooting

"Command not found: mactweaks"

You didn't install the toolkit. Either:

./install.sh              # Install properly
# OR
./bin/mac-tweaks.sh       # Run directly

If installed to ~/.local/bin, make sure it's in your PATH:

echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

"Permission denied" errors

Run with proper permissions:

chmod +x install.sh
chmod +x bin/mac-tweaks.sh
./install.sh

Spotlight is disabled and I miss it

Revert the spotlight module:

mactweaks --module spotlight --revert

Or use an alternative like Alfred or Raycast.

Low Power Mode feels too slow

Revert the powermode module:

mactweaks --module powermode --revert

You'll still get battery savings from the pmset module.

Changes didn't take effect

Some changes require a restart. The toolkit prompts for reboot automatically. If you skipped it:

sudo shutdown -r now

How do I see what's currently applied?

Generate a report:

mactweaks --report

Or check the log files:

cat ~/Library/Application\ Support/MacTweaks/logs/toolkit_*.log

Post-reboot report didn't appear

The LaunchAgent may not have triggered. Manually check:

ls ~/Library/LaunchAgents/com.mactweaks.postreboot.plist

If missing, the post-reboot task already ran or was cancelled. Reports are saved to:

~/Library/Application Support/MacTweaks/reports/

I want to start completely fresh

Uninstall and remove all data:

./uninstall.sh --full --force

Then reinstall if desired:

./install.sh

Future Plans

  • Platypus .app wrapper — Double-clickable GUI version
  • Custom user profiles — Save and load your own module combinations
  • Menu bar monitor — Real-time system status widget
  • Homebrew installationbrew install mactweaks
  • Profile import/export — Share configurations between Macs
  • Web dashboard — Browser-based control panel
  • Scheduled optimizations — Automatic daily/weekly maintenance
  • Rollback snapshots — Time Machine-style restore points

Contributing

Contributions are welcome! Feel free to:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Please ensure your code follows the existing style and includes appropriate documentation.

Development Guidelines

  • Follow the existing module structure (m_<name>_apply / m_<name>_revert)
  • Add comprehensive header comments to all new modules
  • Test on both Intel and Apple Silicon if possible
  • Update MODULES.md with any new modules
  • Add entries to CHANGELOG.md

Performance Metrics

Real-world improvements from users:

Metric Intel Mac Apple Silicon
CPU Usage (Idle) ↓ 15-30% ↓ 5-10%
Battery Life ↑ 30-50% ↑ 10-20%
Fan Noise ↓ 60-80% ↓ 20-30%
UI Responsiveness ↑ 200-300% ↑ 50-100%
Boot Time ↓ 10-20% ↓ 5-10%

Results vary based on hardware, macOS version, and profile used.


License

MIT License — feel free to use, modify, and share.

See LICENSE for details.


Acknowledgments

  • Inspired by: Various macOS optimization guides and power user tips
  • Community: Thanks to all contributors and issue reporters
  • Testing: Intel Mac owners who provided feedback on thermal improvements

Made with care for older Intel Macs still fighting the good fight in 2025.

⭐ Star on GitHub · 📖 Full Documentation · 🚀 Quick Start · ❓ Report Issues

About

Mac OS tweaks for Sequoia and Mojave to reduce system settings to provide more performace to older Mac Harder

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages