Skip to content

Refactor symbolic icons: add 22px/24px, replace with symlinks#3991

Merged
SmartFinn merged 40 commits intomasterfrom
symlink-symbolic
Apr 18, 2025
Merged

Refactor symbolic icons: add 22px/24px, replace with symlinks#3991
SmartFinn merged 40 commits intomasterfrom
symlink-symbolic

Conversation

@varlesh
Copy link
Copy Markdown
Contributor

@varlesh varlesh commented Mar 20, 2025

This pull request refactors the symbolic icons to improve consistency and support for additional sizes.

Changes include:

  • Added missing 22px and 24px variants for symbolic icons.
  • Replaced duplicated icon files with symbolic links to reduce redundancy and improve maintainability.

Duplicate icons in the "symbolic" folders have been swap to symlinks in the folders of monochrome icons. A significant part affected the "actions" and "status" directories.
All icons of all sizes have been combined and a single template has been created for which new icons and symlinks have been added in 3 sizes - 16/22/24. Since when switching to "-symbolic" from one 16px size to three sizes, the directories vary and adding new symlinks and icons becomes very difficult. A skeleton has also been prepared to adapt the size of the 22/24 icons - this is a very old problem.

These categories do not have a symlink to monochrome folders, because we have limited sizes of monochrome icons for them, and therefore these are duplicate (partially) icons:

  • apps
  • categories
  • devices
  • emblems
  • emotes
  • mimetypes
  • places

If you plan to add a new icon to symbolic direcoties, especially in the actions/status category, then it is essential to add a symlink to monochrome icons, if there is no similar and necessary icon, then add it to the symbolic folder, but always in 3 sizes (this also applies to symlinks). Otherwise, we will lose unification and another developer will not be able to use your icon for symlinks. There are also three sizes needed for scaling...

@SmartFinn
Copy link
Copy Markdown
Member

No need to go deeper to understand something wrong with this PR. This d160199 commit creates about 400 new icons.

Where are all of these icons using?

For example, why is this actions/cs-desklets.svg icon monochrome? I know cs-desklets-symbolic.svg should be monochrome because it uses in Cinnamon desktop menu. cs-desklets is an app icon, why you create a new one and put it to actions?

actions/dino-double-tick.svg, xapp-prefs-toolbar.svg are even used somewhere? I think no? Why did you add them?

@SmartFinn
Copy link
Copy Markdown
Member

I understand when you replace with a symlink the same icon, but why do you replace all symbolic icons with symlinks by duplicate them in monochrome...

Symlinks aren't free, I told you before. Each symlink takes from 4 KB to 16 KB of the disk space.
Adding the new icon without reason, it's insane.

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

@SmartFinn Большой объём. Ну будут дубликаты. Ну ты реально будешь ковырять тысячи файлов и прям уникальный значок искать? Это тяжело. Я старался как можно меньше уменьшать количество файлов, как мог.

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

Да, cs-desklets монохромная! Я уже объяснил принцип разработки

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

При чем здесь сколько весит значок и симлинк? К чему мне эти байты бляха? Тут проблема просто значок добавить. Потому что в кедах к примеру, изначально был монохромный значок, потом сменился на микс монохром + симболик... И конфликты симлинк\файл. Я уже объяснял

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

в actions/status - куча значков, там можно много на симлинки повесить. За то теперь всё стандартизированно и унифицировано хоть как-то

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

И будущая разработка и порт 22\24 значков монохрома. Ты меняешь их в actions и автоматом по симлинку ты меняешь всё в symbolic - это и есть уменьшение дубликата...
Да там можно неделями сидеть и разбирать дубликаты, менять на симлинки и т.д... Я просто упростил разработку

@SmartFinn
Copy link
Copy Markdown
Member

@varlesh Да, cs-desklets монохромная! Я уже объяснил принцип разработки

No, I didn't hear the reason why app icon became an action icon.

@varlesh Я старался как можно меньше уменьшать количество файлов, как мог.

You increased the count of files to 410 just in one commit. 90% of them are the trash that aren't used anywhere.

@varlesh И конфликты симлинк\файл

What the conflicts exactly. Why I didn't faced with them in last 8 years?

@SmartFinn
Copy link
Copy Markdown
Member

@varlesh Я просто упростил разработку

In your head - maybe. I see hundreds of icons that should be removed.

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

Вот смотри другой пример, ты добавил значок "new-action-symbolic" просто в папку "symbolic", потом я или кто-то другой добавляет значок "new-action" и ты предлагаешь симлинк в симболик что ли?

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

Я добавил все значки из symbolic , что бы потом его сделать симлинком!

@SmartFinn
Copy link
Copy Markdown
Member

@varlesh Я добавил все значки из symbolic , что бы потом его сделать симлинком!

No, you're adding hundreds of icons that are conflicts with icons of other context, or even using nowhere.

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

А по другому разве можно сделать?
Ты мне ответил на мой вопрос. Ты добавляешь симболик-значок, я добавляю значок такой-же но без -symbolic суффикса.
Или я добавляю симлинк в симболик, а он уже лежит значком в 16px

@SmartFinn
Copy link
Copy Markdown
Member

Oh, it will be a long trip. Let's review this PR file by file.

camera-switch.svg
category-search.svg
chat-message-new.svg
cs-desklets.svg

What are the icons? Where are they using? Why did you add them?

@SmartFinn
Copy link
Copy Markdown
Member

А по другому разве можно сделать?

Replace an icon with a symlink that really match each other.

Ты добавляешь симболик-значок, я добавляю значок такой-же но без -symbolic суффикса.
Или я добавляю симлинк в симболик, а он уже лежит значком в 16px

And what a problem here? It's two different icons that are using in two or more different programs.

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

Это значки для -symbolic, я их СПЕЦИАЛЬНО перевёл в симлинк, что бы в actions вообще не было значков. ТАМ ТОЛЬКО СИМЛИНКИ! Это сделано для правила, что бы потом не возникало вопросов, почему я могу этот значок добавить, а этот нет. Иначе у нас будут конфликты файлов, стилей

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

And what a problem here? It's two different icons that are using in two or more different programs.

Нет, не два разных значка. Один и тот же стиль - твоё решение!

@SmartFinn
Copy link
Copy Markdown
Member

Is this enough reason to add fake icons?

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

Да, это резон. Потому что ты либо ДУБЛИРУЕШЬ значки, либо делаешь симлинк. И дело тут не в байтах, а разработке. Этот cs-desklets потом так же можно будет использовать как симлинк в другой проге и т.д.
ТЫ предлагаешь ДУБЛИРОВАНИЕ и усложнение разработки. Я повторяю, когда тебе надо добавить значок или симлинк в симболик, то приходится по миллион раз проверять а лежит ли он там в 16px, а симлинк ли он там, а куда он ведёт и т.д.....
И про портирование 22\24, со временем кеды перейдут на симболик и он токо и будет разрастаться...
Ты будешь дважы портировать одни и те же значки или будешь сидеть разгребать что дам и как.

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

Ты же прекрасно видишь, что объём большой. Может хватит уже до каждого значка докапываться...
Чё ненравится проблема поменять что ли... За то теперь это удобно добавлять и работать с этим

@SmartFinn
Copy link
Copy Markdown
Member

SmartFinn commented Mar 20, 2025

@varlesh ТЫ предлагаешь ДУБЛИРОВАНИЕ и усложнение разработки.

Said someone who created hundrend of duplicates...

За то теперь это удобно добавлять и работать с этим

What are you talking about. It's bullshit. Now if I want to add nautilus-search-filters-symbolic icon, I have to add nautilus-search-filters icon that is just a trash, then add a symlink nautilus-search-filters-symbolic to nautilus-search-filters.

This is THE DUPLICAION, isn't it?

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

@SmartFinn Во-первых, я так сделал потому что объем большой!!! Ты можешь сделать симлинк на уже существующий файл в actions. В чём проблема-то. Ты сравни количество actions в мнохроме и в symbolic, он больше в разы просто.

@morganist
Copy link
Copy Markdown
Member

@varlesh why are you trying to do this without discussing anything first? Serhii has basically just done the directory restructuring and you now try to do something different with all this?

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

@SmartFinn Бляха, тут два только выхода - это дублирование или симлинк

@morganist
Copy link
Copy Markdown
Member

@varlesh also, please tell me the difference between monochrome and symbolic icons (your idea). As I see it, in out case the only difference is the -symbolic suffix and nothing else, so why do you feel the need to do this pull request then? Maybe there are some differences that I've missed?

@morganist
Copy link
Copy Markdown
Member

@varlesh you want to go through all the effort of making sure we have all monochrome icon with standard names first and only then add symlinks to the same monochrome icons (but they now have -symbolic suffix). It's not great! Many icons will not be used. If KDE, as you say, names all their monochrome icons with a -symbolic suffix now, the icon without this suffix is just wasted space.

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

@morganist Currently, the "symbolic" actions/status folders have a mix of icons and symbolic links. Adding new icons and links becomes a problem because, for example, the file you are trying to add is in 16px, but not in 22px or 24px. Or this file can be a symlink to another file, etc. Adding new icons becomes a problem because firstly, we duplicate the monochrome icon and the "symbolic" icon.
I transferred all actions/status to symlinks to avoid problems.

@SmartFinn
Copy link
Copy Markdown
Member

As I see it, in out case the only difference is the -symbolic suffix and nothing else, so why do you feel the need to do this pull request then?

It's a good point. Symbolic icons are much limited than monochrome icons. We can face with a situation when a part of icon aren't recoloring because -symbolic icons have their own rules. It's good to know the difference when you add a symbolic icon.

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Mar 20, 2025

The second point is to duplicate the file in symbolic folders! This file is already exist in actions\status without the -symbolic suffix.

@varlesh
Copy link
Copy Markdown
Contributor Author

varlesh commented Apr 5, 2025

@SmartFinn Ну что сливать или добавлять чё будем?

SmartFinn and others added 10 commits April 17, 2025 18:37
Co-authored-by: Alexey Varfolomeev <varlesh@gmail.com>
Co-authored-by: Alexey Varfolomeev <varlesh@gmail.com>
Co-authored-by: Alexey Varfolomeev <varlesh@gmail.com>
This commit removes icons that have their copies in other contexts.
To decide what remove and keep I used breeze, Adwaita, and elementary
icon themes as references.

Some symlinks were moved to categories, because:
fonts-symbolic is a categories icon in GDM Settings app
org.gnome.Settings-accessibility-symbolic and
org.gnome.Settings-region-symbolic are icons for categories in GNOME
Settings
@SmartFinn SmartFinn changed the title Duplicate icons swap to symlinks on symbolic folders Refactor symbolic icons: add 22px/24px, replace with symlinks Apr 18, 2025
@SmartFinn SmartFinn merged commit 73576cc into master Apr 18, 2025
1 check passed
@SmartFinn SmartFinn deleted the symlink-symbolic branch April 24, 2025 06:27
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