Assigning icons system-wide based on filename without extension I'd like Finder to display a particular icon for files based purely on its filename, not its extension. For instance, for a web project I have a Makefile sitting amidst PHP files, which all display the Atom logo:



The file already opens with Atom when double-clicked, even though TextEdit is technically my system's default text editor (which I never use, because Atom rules).

Is it possible to automatically assign an icon to makefiles system-wide, without manually copy+pasting an icon into it through the properties pane? Preferably without installing any third-party software, as this is really a cosmetic thing that's not worth having system bloat over.

I'm hoping there's some defaults-related thing I could tweak, or an entry in a plist file somewhere.
Setting Atom icon via command line for Makefile
There is no direct way to set icons based on filename only, but one can set them via command line and then apply to all makefiles on the Mac.
Here are the steps to set Atom's icon to a specific Makefile via command line (assuming you Developer Tools are installed).

Get the Atom icon file from /Applications/Atom.app/Contents/Resources/file.icns
Convert the image to icon
sips -i file.icns
Extract the icon to its own resource file 
/Library/Developer/CommandLineTools/usr/bin/DeRez -only icns file.icns &gt; tmpicns.rsrc
Append this resource to the file you want to icon-ize
/Library/Developer/CommandLineTools/usr/bin/Rez -append tmpicns.rsrc -o Makefile
Use the resource to set the icon
/Library/Developer/CommandLineTools/usr/bin/SetFile -a C Makefile
Restart your Mac

you can run mdfind -name makefile to get all the makefiles in your system and write a script to do the above on them.