# Persistent RAMDisk Works on macOS Big Sur. [Reference](https://apple.stackexchange.com/a/345818) ## Persistence There is a non-deprecated way to do it: - Open the *Script Editor* app. - Paste ```AppleScript do shell script "~/.login" on quit do shell script "~/.logout" continue quit end quit ``` - `File > Save`, Select `Application` and `Stay open after run handler` and *Save* - `System Preferences > Users & Groups > Login Items tab > + button` - Add the application and mark it as *Hidden* To hide it from the Dock: - Right-click the application and select *Show package contents* - Open `Info.plist` and add ```XML NSUIElement 1 ``` ## Create RAMDisk scripts ```shell $ touch ~/.login $ touch ~/.logout $ chmod +x ~/.login $ chmod +x ~/.logout ``` Open `~/.login` and paste, this creates a 1GB RAMDisk ```shell #!/usr/bin/env bash diskutil erasevolume HFS+ "RAMDisk" `hdiutil attach -nomount ram://2097152` && rsync -rauL --ignore-errors ~/.RAMDisk/ /Volumes/RAMDisk ``` Open `~/.logout` and paste ```shell #!/usr/bin/env bash rsync -rauL --delete --ignore-errors /Volumes/RAMDisk/ ~/.RAMDisk ``` - Mount the RAMDisk `$ ~/.login` - The RAMDisk should appear in *Finder*. ## Example use: PHPStorm caches on RAMDisk 1. Create a folder called *PHPStorm* on the RAMDisk. 2. Start `PHPStorm > Help > Edit custom properties...` and paste ```INI idea.system.path=/Volumes/RAMDisk/PHPStorm ```