(* | |
Speed up Mail.app by vacuuming the Envelope Index | |
Code from: http://www.hawkwings.net/2007/03/03/scripts-to-automate-the-mailapp-envelope-speed-trick/ | |
Originally by "pmbuko" with modifications by Romulo | |
Updated by Brett Terpstra 2012 | |
Updated by Mathias Törnblom 2015 to support V3 in El Capitan and still keep backwards compability | |
Updated by @lbutlr for V5 and Container folder in High Sierra and use du | |
*) | |
tell application "Mail" to quit | |
set os_version to do shell script "sw_vers -productVersion" | |
set mail_version to "V2" | |
considering numeric strings | |
if "10.10" ≤ os_version then set mail_version to "~/Library/Mail/V3/Maildata/Envelope\\ Index" | |
if "10.12" < os_version then set mail_version to "~/Library/Mail/V4/Maildata/Envelope\\ Index" | |
if "10.13" ≤ os_version then set mail_version to "~/Library/Containers/com.apple.mail/Data/Library/Mail/V5/Maildata/Envelope\\ Index" | |
end considering | |
set sizeBefore to do shell script "du -h " & mail_version & "| awk {'print $1'}" | |
do shell script "/usr/bin/sqlite3 " & mail_version & " vacuum" | |
set sizeAfter to do shell script "du -h " & mail_version & "| awk {'print $1'}" | |
display dialog ("Mail index before: " & sizeBefore & return & "Mail index after: " & sizeAfter & return & return & "Enjoy the new speed!") | |
tell application "Mail" to activate |
This comment has been minimized.
This comment has been minimized.
It seems the script does not work on Mac OS 10.14 Mojave, but I don't understand why. but running the script gives the error : However, the path seems correct. Setting |
This comment has been minimized.
This comment has been minimized.
I'm seeing the same issue on Mojave. I haven't found a solution yet. |
This comment has been minimized.
This comment has been minimized.
This happens because of security measures. Open System Preferences -> Security & Privacy -> Privacy tab and grant "Full Disk Access" to Terminal.app or the automator, where ever you run the applescript. Dont forget to revoke permissions after you finished reorganizing the index. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
The method of @Lapsus work for me on Mojave macOS version |
This comment has been minimized.
This script is not compatible with oldest version (before 10.10). To allow this, you need to change the line
set mail_version to "V2"
byset mail_version to "~/Library/Mail/V2/Maildata/Envelope\\ Index"