Skip to content

Conversation

@gdt
Copy link
Collaborator

@gdt gdt commented Nov 5, 2025

This PR is a massive, heavy-handed cleanup of the icons directory. It weighs technical debt more heavily than the risk of deleting something, especially because what is removed remains in git history.

gdt added 6 commits November 5, 2025 08:40
unison-icon.ai is in Adobe Illustrator format.  inkscape (today) read
it and wrote svg, so check that in and remove the ai.
This file is not referenced in the sources, and thus appears to have
no purpose.
This is from pre-git-history.  It's bitmap, not svg.  It isn't aligned
with the icons we are currently intending to use.  Given how icon
culture has evolved over the last 25 years, it seems very unlikely we
would use it.
This is bitmap and low resolution.  It's similar to the svg icons, but
monochrome.  I'm assuming it's from an earlier time and that we will
not use it.  If we did want something like this, I think we'd want to
modify the whole-word svg file to be monochrome.
This is similar to U.svg, but only one color -- so it doesn't match
any source file in the repository.  It's not referenced, even though
there's a similar file in a win32rc directory.
This requires lablgtk2, and there's no apparent way to use lablgtk3.
Today, the standard approach would be to use inkscape.
@gdt
Copy link
Collaborator Author

gdt commented Nov 5, 2025

CI passed. If there are no objections, I'll merge after 12 November at 18Z.

@tleedjarv
Copy link
Contributor

tleedjarv commented Nov 5, 2025

Do not remove U.ico, it is used by src/win32rc/unison.rc (for Windows builds).
Edit: On second thought, this was wrong. src/win32rc/U.ico is a copy of icons/U.ico so I believe icons/U.ico can be removed.

I would guess it is safe to remove *.bmp *.gif *.jpg (and I believe *.xpm, too).
I would also guess it's safe to remove unison-icon.svg (or U-old.svg).

@gdt
Copy link
Collaborator Author

gdt commented Nov 5, 2025

Probably we should:

  • add to icons/README about this
  • define how to generate U.ico from U.svg
  • have src/win32rc reference ../../icons instead of having a copy

@mkrupcale
Copy link

Looks reasonable to me. As I said at [1], the Icon Theme Spec [2] only requires the png (or xpm for backward compatibility reasons) files with optional SVG support, which the remaining U.${size}x${size}x16m.png and U.svg provide, respectively.

  1. add desktop file and install it with unison-gui #1128 (comment)
  2. https://specifications.freedesktop.org/icon-theme/latest/

@gdt
Copy link
Collaborator Author

gdt commented Nov 6, 2025

Thanks. I added that link to the README and raised the issue of renaming U to unison and unison to unison-word. Perhaps that step should happen in this branch.

@tleedjarv
Copy link
Contributor

The .ico file is apparently a container of some sorts.. Try:

icotool -l U.ico
icotool -x U.ico
ls U_*.png

@gdt gdt force-pushed the icon-cleanup branch 3 times, most recently from 107964f to 2416d68 Compare November 6, 2025 17:35
@gdt
Copy link
Collaborator Author

gdt commented Nov 6, 2025

Thanks; that was a great hint. Updated with information about the ico file.

gdt added 5 commits November 17, 2025 18:24
These are not referenced in the sources.
These aren't referenced in the sources.
This file is not referenced in the sources.  This appears to be a gif
version of unison.svg, but confusingly Unison instead of unison.
My best guess is that U.svg was a recreation in svg of the old icon,
with some styling changes.  Functionally, unison-icon.svg is similar,
but with a slightly different shape and shading.  Renaming encodes
that guess in the repository.
This file intends to capture all knowlege about the purpose and use of
icon files.
@gdt gdt merged commit e4f8439 into bcpierce00:master Nov 17, 2025
4 checks passed
@gdt gdt deleted the icon-cleanup branch November 17, 2025 23:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants