tdv/cmake/Win32CleanupAdwaita.sh
Přemysl Eric Janouch ac6ac4f845
Win32CleanupAdwaita.sh: make note of a corner case
I've actually tried to replicate that behaviour earlier,
and it kept around way too many icons.
2021-11-01 02:40:41 +01:00

21 lines
672 B
Bash

#!/bin/sh -e
# Removes unused icons from the Adwaita theme, it could be even more aggressive,
# since it keeps around lots of sizes and all the GTK+ stock icons
export LC_ALL=C
find share/icons/Adwaita -type f | awk 'BEGIN {
while (("grep -aho \"[a-z][a-z-]*\" *.dll *.exe" | getline) > 0)
good[$0] = 1
} /[.](png|svg|cur|ani)$/ {
# Cut out the basename without extensions
match($0, /[^\/]+$/)
base = substr($0, RSTART)
sub(/[.].+$/, "", base)
# Try matching while cutting off suffixes
# Disregarding the not-much-used GTK_ICON_LOOKUP_GENERIC_FALLBACK
while (!(keep = good[base]) &&
sub(/-(ltr|rtl|symbolic)$/, "", base)) {}
if (!keep)
print
}' | xargs rm