OS X Yosemiteでデフォルトのフォルダアイコンの色を変更してシステムに反映させる方法

MacのOSをYosemiteにアップデートすると、フォルダアイコンの色が結構ドギツい感じになります。なんか目に悪そうです。ということで、デフォルトのフォルダアイコンの色を変えてシステムに反映させる方法を書きました。ルート権限でターミナル操作する必要があるので、その辺よくわかってない人は手を出さない方がベターです。くれぐれも自己責任でお願いします

For Non-Japanese

Here is a brief summary of how to change the color of default folder icons in OS X Yosemite, written in English.

システムで使われるデフォルトアイコンの場所

Mac OS Xで使われるアイコンは

/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/

に入っています。この中でフォルダの新規作成で作られるデフォルトのフォルダアイコンは

/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/GenericFolderIcon.icns

です。他にもシステムで使われるアプリケーションフォルダやホームフォルダ等々のアイコンすべてがさっきのフォルダに入っています。

デフォルトのフォルダアイコンを編集

まずは元ファイルのバックアップをとります。ターミナルを起動して以下を入力してください;

$ cd /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/
$ sudo cp GenericFolderIcon.icns GenericFolderIcon.org.icns

当然ですがパスワードを聞かれるので入力してください。あとこれも当然ですが”$”は入力する必要がありません。この辺がわからない人はこれ以上進まないほうが賢明です。続いてファイルを編集するために、ファイルを一旦ホームフォルダに移動して所有者をrootからユーザに変更します。所有者がrootのままだと編集・保存するために複製する必要があるのでchownは必ず実行してください

$ sudo mv GenericFolderIcon.icns ~/
$ cd ~/
$ sudo chown [ユーザ名] GenericFolderIcon.icns

[ユーザ名]の部分には自分のユーザ名を入れてください。ユーザ名はターミナルから

$ whoami

で調べることができます。

移動させたGenericFolderIcon.icnsをFinderで選択してファイルを開くとプレビューが起動します。起動したらoption+⌘+Cでカラー調整パネルを表示させてください(下の画像のようにメニューの「ツール」→「カラーを調整…」を選んでもパネルを表示させることができます)。

あとは好きなように変更してください。色温度とか色合いも変えれます。ここでは彩度(Saturation)だけを少し下げています。Yosemiteデフォルトの色よりも抑えられているのがわかると思います。icnsファイルにはフォルダの表示サイズに応じて異なるサイズの画像が10種類含まれているので、すべて変更してください。

変更が終わったら⌘+Sでファイルを保存してください。最後にファイルを元の場所に移動して権限を元に戻し、拡張属性を削除します。ターミナルから以下を入力してください;

$ cd /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/
$ sudo mv ~/GenericFolderIcon.icns ./
$ sudo chown root GenericFolderIcon.icns
$ sudo chgrp wheel GenericFolderIcon.icns
$ sudo xattr -d com.apple.quarantine GenericFolderIcon.icns

ファイルの所有グループはプレビューで開いて保存した時点でwheelからstaffに変更されます。またその時に”com.apple.quarantine”という拡張属性が追加されます。ここでは先ほど変更したファイルの所有者に加えてそれらも元に戻しています。

拡張属性について

拡張属性というのはls -lしたときに権限の後ろについている”@”です。これがついてると拡張属性をもっていることになります。ファイルがどのような拡張属性をもっているかはxattrで確認できます。さっきの例だとxattr -d ...を実行する前に

xattr GenericFolderIcon.icns

を実行すると

com.apple.quarantine

と表示されると思います。xattr -dではこの拡張属性をdオプションで削除しています。もしxattrでcom.apple.quarantine以外の属性が表示された場合はそれも削除してください。これでls -lをしたときの”@”が表示されなくなります。 

アイコンのキャッシュのクリア

再起動する前にシステムに保存されているアイコンのキャッシュをクリアします;

sudo find /private/var/folders/ -name com.apple.dock.iconcache -exec rm {} \;
sudo find /private/var/folders/ -name com.apple.iconservices -exec rm -rf {} \;

キャッシュをクリアしたらMacを再起動してください。これで下の画像のようにデフォルトのフォルダアイコンが変更されます。

フォルダアイコンのデザインをMavericksのものに戻したい

フォルダアイコンのデザインをMavericksのデザインに戻したいという人は、MavericksのインストールされているMacで

/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/

に移動して必要なicnsファイルを全部コピーしてきて、Yosemiteの同じフォルダに入れるといけると思います(試してないので誰か人柱になってください)。該当するフォルダのicnsファイルは

ApplicationsFolderIcon.icns
BurnableFolderIcon.icns
DesktopFolderIcon.icns
DeveloperFolderIcon.icns
DocumentsFolderIcon.icns
DownloadsFolder.icns
GenericFolderIcon.icns
GenericSharepoint.icns
GroupFolder.icns
LibraryFolderIcon.icns
MovieFolderIcon.icns
MusicFolderIcon.icns
OpenFolderIcon.icns
PicturesFolderIcon.icns
PublicFolderIcon.icns
ServerApplicationsFolderIcon.icns
SitesFolderIcon.icns
SystemFolderIcon.icns
UsersFolderIcon.icns
UtilitiesFolder.icns

あたりです。

追記(10月22日10時57分)

Mavericksのicnsファイルが手元にある方は、Ryo@りんご大好きさんの「OS X 10.10 Yosemite の 眩しいフォルダーアイコンを替えてみた。」で紹介されているLiteIcon(Yosemite対応)というアプリを使うと、Mavericksのアイコンに簡単に戻せるそうです。操作方法もRyoさんの記事に書かれているので是非ご覧ください。

参考ページ