blob: e422c3e91d6940f096e4b19fad20e28e9f279a1b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
#!/bin/sh
CORE_TYPES=/System/Library/CoreServices/CoreTypes.bundle
IO_STORAGE_FAMILY=/System/Library/Extensions/IOStorageFamily.kext
IO_SCSI_ARCHITECTURE_MODEL_FAMILY=/System/Library/Extensions/IOSCSIArchitectureModelFamily.kext
IO_CD_STORAGE_FAMILY=/System/Library/Extensions/IOCDStorageFamily.kext
IO_DVD_STORAGE_FAMILY=/System/Library/Extensions/IODVDStorageFamily.kext
IO_BD_STORAGE_FAMILY=/System/Library/Extensions/IOBDStorageFamily.kext
REPLACEMENT="$(cd "$(dirname "$0")" && pwd)/Icons"
# Authenticate
sudo -v
# Backup system files
NOW=$(date +%Y-%m-%dT%H:%M:%S%z)
sudo tar czf "${CORE_TYPES}.backup-${NOW}.tar.gz" "$CORE_TYPES"
sudo tar czf "${IO_STORAGE_FAMILY}.backup-${NOW}.tar.gz" "$IO_STORAGE_FAMILY"
sudo tar czf "${IO_SCSI_ARCHITECTURE_MODEL_FAMILY}.backup-${NOW}.tar.gz" "$IO_SCSI_ARCHITECTURE_MODEL_FAMILY"
sudo tar czf "${IO_CD_STORAGE_FAMILY}.backup-${NOW}.tar.gz" "$IO_CD_STORAGE_FAMILY"
sudo tar czf "${IO_DVD_STORAGE_FAMILY}.backup-${NOW}.tar.gz" "$IO_DVD_STORAGE_FAMILY"
sudo tar czf "${IO_BD_STORAGE_FAMILY}.backup-${NOW}.tar.gz" "$IO_BD_STORAGE_FAMILY"
# TODO: /System/Library/CoreServices/Dock.app/Contents/Resources/
# Set icons
read -r -d '' icons <<'EOF'
ApplicationsFolderIcon.icns
BD-R.icns
BD-RE.icns
BD.icns
BurnableFolderIcon.icns
BurningIcon.icns
CD-R.icns
CD-RW.icns
CD.icns
ConnectToIcon.icns
DVD+R.icns
DVD+RW.icns
DVD-R.icns
DVD-RAM.icns
DVD-RW.icns
DVD.icns
DesktopFolderIcon.icns
DeveloperFolderIcon.icns
DocumentsFolderIcon.icns
DownloadsFolder.icns
DropFolderBadgeIcon.icns
EjectMediaIcon.icns
External.icns
FinderIcon.icns
FireWireHD.icns
FullTrashIcon.icns
GenericAirDiskIcon.icns
GenericApplicationIcon.icns
GenericFileServerIcon.icns
GenericFolderIcon.icns
GenericNetworkIcon.icns
GroupFolder.icns
HomeFolderIcon.icns
Internal.icns
LibraryFolderIcon.icns
MovieFolderIcon.icns
MusicFolderIcon.icns
OpenFolderIcon.icns
PicturesFolderIcon.icns
PrivateFolderBadgeIcon.icns
PublicFolderIcon.icns
Removable.icns
SitesFolderIcon.icns
SmartFolderIcon.icns
SystemFolderIcon.icns
TimeMachine.icns
ToolbarDeleteIcon.icns
ToolbarInfo.icns
TrashIcon.icns
USBHD.icns
UsersFolderIcon.icns
UtilitiesFolder.icns
iDiskGenericIcon.icns
EOF
for icon in $icons; do
for location in "${CORE_TYPES}/Contents/Resources" \
"${IO_STORAGE_FAMILY}/Contents/Resources" \
"${IO_SCSI_ARCHITECTURE_MODEL_FAMILY}/Contents/Resources" \
"${IO_CD_STORAGE_FAMILY}/Contents/Resources" \
"${IO_DVD_STORAGE_FAMILY}/Contents/Resources" \
"${IO_BD_STORAGE_FAMILY}/Contents/Resources"; do
if [ -f "${location}/${icon}" ]; then
sudo cp -f "${REPLACEMENT}/${icon}" "${location}/${icon}"
fi
done
done
# Clear icon cache
sudo find /private/var/folders/ -name 'com.apple.dock.iconcache' -delete
sudo find /private/var/folders/ -name 'com.apple.iconservices' -delete
sudo mv /Library/Caches/com.apple.iconservices.store $HOME/.Trash/
|