Как я могу заставить все приложения GTK + в Windows подбирать темы из одной и той же папки?

543
Mussnoon

У меня установлено несколько приложений GTK + (pidgin, GIMP, KeepNote и др.), А также темы GTK2, установленные отдельно в одном месте. Однако выбор / выбор темы из селектора тем GTK + не заставляет все приложения использовать эту тему, пока я не скопирую и не вставлю все темы (или, по крайней мере, ту, которую я выбрал) вручную в папку «темы» для каждого приложения (даже иногда это не работает - например, для KeepNote). Это становится довольно утомительным и также является пустой тратой пространства.

Разве нет способа заставить все приложения GTK + использовать одну и ту же папку для тем? Если да, то как?

1

1 ответ на вопрос

0
Fabel

Чтобы это работало без сбоев, одна и та же (общесистемная) установка GTK + должна использоваться всеми приложениями. В настоящее время рекомендуемая процедура для Windows заключается в частной установке всех сторонних библиотек для каждого приложения, что фактически делает каждое приложение отдельным (что приводит к возникновению таких проблем). Это связано с тем, что Windows не предоставляет другого решения для сторонних приложений, которое было бы надежным и удобным для пользователя. На первый взгляд, есть два хороших решения проблемы: либо Windows предоставляет приложениям способ указать, какие версии сторонних библиотек им нужны, и они автоматически устанавливаются и обновляются (как, например, в Linux), либо Windows поставляется со своим официальным сборка GTK +, с которой сторонние приложения должны быть совместимы (как, например, в Irix). Это ситуация.

С другой стороны, если вы можете принять не дружественное для пользователя решение: я слышал, что более новые версии Windows поддерживают символические ссылки, чтобы вы могли таким образом объединить все соответствующие файлы. Но вам может понадобиться быть внимательным к различным версиям GTK +. Или вы можете вручную установить и поддерживать GTK + в своем собственном каталоге и удалять его из всех каталогов приложений. Но для этого требуется некоторое понимание работы с Windows DLL.

Похожие вопросы