diff --git a/settings/stylix.nix b/settings/stylix.nix index fb28ae9..8bd0a50 100644 --- a/settings/stylix.nix +++ b/settings/stylix.nix @@ -104,6 +104,47 @@ Type=Scalable Context=Places + [16x16/places] + Size=16 + Type=Fixed + Context=Places + + [22x22/places] + Size=22 + Type=Fixed + Context=Places + + [32x32/places] + Size=32 + Type=Fixed + Context=Places + + [48x48/places] + Size=48 + Type=Fixed + Context=Places + + [64x64/places] + Size=64 + MinSize=32 + MaxSize=128 + Type=Scalable + Context=Places + + [96x96/places] + Size=96 + MinSize=64 + MaxSize=256 + Type=Scalable + Context=Places + + [128x128/places] + Size=128 + MinSize=64 + MaxSize=512 + Type=Scalable + Context=Places + [16x16/mimetypes] Size=16 Type=Fixed @@ -159,6 +200,26 @@ done fi + # Papirus has proper distinct folder icons for Downloads, Pictures, + # Music, etc — copy and recolour them with the wallpaper accent so + # we don't end up with a single generic folder everywhere. + for size in 16x16 22x22 32x32 48x48 64x64 96x96 128x128; do + if [ -d "$PAPIRUS/$size/places" ]; then + $DRY_RUN_CMD rm -rf "$ICON_DIR/$size/places" + $DRY_RUN_CMD mkdir -p "$ICON_DIR/$size/places" + for svg in "$PAPIRUS/$size/places"/*.svg; do + [ -f "$svg" ] || continue + name=$(basename "$svg") + $DRY_RUN_CMD sed \ + -e "s/#5294e2/$PRIMARY/gi" \ + -e "s/#4877b1/$PRIMARY/gi" \ + -e "s/#729fcf/$PRIMARY/gi" \ + -e "s/#689ad6/$PRIMARY/gi" \ + "$svg" > "$ICON_DIR/$size/places/$name" + done + fi + done + for size in 16x16 22x22 32x32 48x48 64x64 96x96 128x128; do if [ -d "$PAPIRUS/$size/mimetypes" ]; then $DRY_RUN_CMD rm -rf "$ICON_DIR/$size/mimetypes"