Have searched for quite a while for the answer to this question but the only solution that has worked has been to change icons on a file to file basis, which is not very efficient...

Currently my Mac is using some generic images for icons, regardless of what the default application for them is. enter image description here As you can see in this image, even though all three of those files are set to open with Sublime Text by default, they retain painfully ambiguous icons.

What I would like is some way to simply set a default image for a file extension, regardless of default application. Say that I want to set the Sublime Text icon for .py extensions and the TextEdit icon for .txt and .tsv extensions. The result should look like this.enter image description here

So far, I've tried setting the icon through the default application, which is the only solution I could find so far aside from changing the icon on a file by file basis, with no luck. I attempted this by changing the CFBundleTypeIconFile for the python entry in the Sublime Text Info.plist file from PYTHON to Sublime Text. Upon reboot, the icon had not changed and sublime could no longer launch due to verification issues I think. Changed that back and tried simply replacing the PYTHON.icns file in the Sublime Text Resources folder with a copy of the Sublime Text.icns. Rebooted and no change had taken place.

2 Answers 2


I believe that we can change this kind of icon with an app. In previous macOS releases, there were many apps (e.g, CanyBar) for these kinds of things. You can change any file type as per your liking with an app called LiteIcon which is free.


  • Thank you for your recommendation! However, after downloading LiteIcon and looking it over, it doesn't seem like this app allows anything other than changing application icons. I looked for other apps that change icons by file extension and couldn't find any.
    – Tahoe155
    May 10, 2018 at 16:22
  1. "Show Package Contents" on the app.
  2. Replace the icon there
  3. Clean the icon cache.(You can use Liteicon.app to clean the icon cache.And you should disable SIP before you open Liteicon.app)
  4. Login again.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .