Вопрос или проблема
Я хочу иметь два значка Firefox на панели задач. Один из них с пользовательской иконкой. Я попробовал использовать параллельную установку через Snap, но не смог изменить иконку. Я смог изменить иконку .desktop, но не иконку приложения при его запуске.
.
Ответ или решение
Чтобы изменить иконку Firefox при использовании параллельной установки через Snap, необходимо разобраться в специфике Snap пакетов и их управления иконками. Snap – это пакетный менеджер, который создаёт изолированные контейнеры для приложений, что добавляет особенностей при ручной настройке иконок и других параметров.
Теория
Snap пакеты имеют свои особенности: они изолированы от основной системы благодаря так называемым контейнерам и монтируются в отдельные виртуальные файловые системы. В отличие от традиционных DEB или RPM пакетов, Snap включает в себя все зависимости, что и делает его самодостаточным. Однако это также усложняет процесс кастомизации внешнего вида приложения, например, изменение иконки.
Когда вы устанавливаете Firefox через Snap с использованием параллельных установок, система может позволить запускать несколько экземпляров одного приложения одновременно. Параллельная установка в Snap означает, что вы можете иметь несколько версий одного и того же приложения без конфликтов. При этом каждая версия должна иметь свой уникальный идентификатор, который указывается при установке.
Пример
Предположим, вы хотите установить две версии Firefox через Snap, и вам необходимо изменить иконку для одной из них. Ваша задача — настроить иконку так, чтобы она изменялась не только в главном меню приложения или панели задач, но также и при запуске приложения.
Шаги для изменения иконки Firefox при параллельной установке через Snap:
-
Установите Firefox с использованием snap параллельной установки:
sudo snap install firefox sudo snap install firefox_ другойидентефикатор -y
Когда вы устанавливаете второй экземпляр, используйте идентификатор для отличия:
firefox_другойидентефикатор
. -
Измените .desktop файл:
Найдите .desktop файлы, которые обычно располагаются в/var/lib/snapd/desktop/applications/
. Ваша задача – найти файл, связанный с вашим вторым экземпляром Firefox, например:firefox_другойидентефикатор.desktop
. -
Откройте .desktop файл с помощью текстового редактора с правами администратора:
sudo nano /var/lib/snapd/desktop/applications/firefox_другойидентефикатор.desktop
Обратите внимание на запись, связанную с иконкой:
Icon=firefox
. Здесь может понадобиться указать полный путь к новой иконке, например,Icon=/home/user/icons/custom-firefox-icon.png
. -
Измените иконку самого приложения:
Несмотря на изменения в .desktop файле, Snap может изолировать указанные изменения. В таком случае, вам может понадобиться непосредственно воздействовать на файлы внутри snap-контейнера.Snap пакеты монтируются в
/snap
. Вы можете создать заменяющую иконку и заменить её напрямую:sudo cp /путь/к/вашей/новой/иконке.png /snap/firefox_другойидентефикатор/текущая/папка/с/иконкой/
Помните, что данное действие может быть сброшено при обновлении snap пакета.
Применение
Если данные изменения не применяются автоматически, проверьте другие компоненты, которые могут влиять на показ иконок. Например, особое внимание стоит обратить на кеширование иконок, которое может сохранять старые версии.
-
Очистка кеша иконок:
sudo update-icon-caches /usr/share/icons/*
-
Возможно, применение команд оболочки для применения изменений:
gnome-shell --replace
Учтите, что snap пакеты ориентированы на безопасность и целостность, поэтому любые внесённые изменения могут быть аннулированы при следующем обновлении пакета Snap. Для устойчивого изменения может понадобиться создание своего snap-пакета с кастомизацией.
Наконец, несмотря на возможные обходные пути, параллельная установка средой Snap не рассчитана на подобные модификации таких аспектов, как иконки. Если изменения критичны, рассмотрите использование традиционных методов установки или изоляции, чтобы иметь больший контроль над установками приложений.