Как я могу обновить файл .desktop для Firefox, чтобы он правильно запускался?

Вопрос или проблема

Резюме

На днях я удалил snap-версию Firefox и заменил её на .deb-версию программы. Запускатель приложений находит запись о Firefox, но при нажатии она не открывается.

Сведения о системе

  • ОС: Ubuntu 22.04.5 LTS, 64-разрядная версия
  • Версия Firefox: Debian пакет, версия 131.0 (64-разрядная версия)

Шаги для воспроизведения

  1. Удалите snap-версию Firefox с помощью sudo snap remove firefox
  2. Установите Firefox .deb в соответствии с этими инструкциями
  3. Нажмите клавишу Super/Windows, чтобы открыть запускатель приложений
  4. Введите “firefox”
  5. Нажмите на “Firefox Web Browser”, который отображается.

Ожидаемое поведение

Firefox запускается.

Фактическое поведение

Firefox не запускается.

Дополнительные сведения

which firefox говорит, что программа находится по адресу /usr/bin/firefox. Содержимое /usr/share/applications/firefox.desktop длинное, но содержит следующие значения Exec (для различных записей):

Exec=firefox %u
...
Exec=firefox --new-window %u
...
Exec=firefox --private-window %u
...
Exec=firefox --ProfileManager

Если я использую приложение alacarte для редактирования записи меню для Firefox Web Browser, поле “Команда” содержит env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/firefox_firefox.desktop /snap/bin/firefox %u. Тем не менее, когда я пытаюсь изменить содержимое этого поля на firefox %u, хотя кнопка “ОК” не отключена, нажатие на неё ничего не дает — диалог остается открытым, изменения не сохранены. Похоже, есть несоответствие между файлом /usr/share/applications/firefox.desktop и тем, на что ссылается alacarte, и я не могу понять, как изменить то, что в alacarte.

Пожалуйста, помогите мне понять, как внести изменения, которые отразятся в моем запускателе приложений, чтобы я мог запустить .deb-версию Firefox, установленную по адресу /usr/bin/firefox.

Решение

Существовали два связанных файла firefox.desktop (точнее, один firefox.desktop и один firefox_firefox.desktop) в ~/.local/share/applications/, которые имели приоритет перед файлами в /usr/share/applications.

Я удалил эти два файла в ~/.local/share/applications/, и теперь запускатель работает как ожидалось.

Ответ или решение

Для обновления вашего .desktop файла Firefox, чтобы он корректно запускал приложение после замены версии на .deb, выполните следующие шаги:

1. Удалите старые .desktop файлы

Как вы заметили, проблема может быть связана с тем, что существует несколько файлов firefox.desktop, находящихся в каталоге ~/.local/share/applications/, которые могут перекрывать системные файлы. Вам нужно удалить эти файлы:

  1. Откройте терминал.

  2. Введите следующую команду для перехода в нужный каталог:

    cd ~/.local/share/applications/
  3. Проверьте наличие файлов, связанных с Firefox, используя:

    ls | grep firefox
  4. Удалите файлы firefox.desktop и firefox_firefox.desktop, если они существуют:

    rm firefox.desktop
    rm firefox_firefox.desktop

2. Проверьте системный .desktop файл

После удаления пользовательских файлов вы можете убедиться, что файл /usr/share/applications/firefox.desktop настроен правильно:

  1. Откройте файл для редактирования:

    sudo nano /usr/share/applications/firefox.desktop
  2. Убедитесь, что строка Exec в файле выглядит следующим образом:

    Exec=firefox %u

3. Обновите кэш приложений

После внесения изменений может потребоваться обновить кэш приложений. Используйте следующую команду:

update-desktop-database ~/.local/share/applications/

4. Запустите Firefox

Теперь вы можете проверить, работает ли Firefox из меню приложений:

  1. Нажмите клавишу Super (Windows) для открытия меню приложений.
  2. Введите "Firefox" и выберите соответствующий ярлык.

Заключение

Следуя этим шагам, вы должны устранить проблему с запуском Firefox, обеспечив, что приложение корректно ссылается на установленный .deb пакет. Если у вас возникнут дополнительные проблемы, пожалуйста, сообщите об этом, и мы сможем помочь вам дальше.

Оцените материал
Добавить комментарий

Капча загружается...