Вопрос или проблема
После изучения нескольких уже отвеченных вопросов на AskUbuntu и Unix’s stackexchange, опция Firefox “Открыть папку, содержащую файл” (когда файл загружается) по-прежнему открывает папку в Thunar File Manager, хотя мой файловый менеджер по умолчанию – Nautilus. (Тем не менее, Nautilus открывается, когда предлагается сохранить файл, например, что означает, по моему мнению, что Firefox как-то знает о существовании Nautilus.) Я использую XFCE (Ubuntu 22), поэтому не могу удалить Thunar без возникновения проблем с ядром (уже пробовал это).
Nautilus (под именем Files) установлен как файловый менеджер по умолчанию. В графическом интерфейсе моего приложения “Приложения по умолчанию” inode/directory и inode/mount-point установлены на Files.
Я пытался изменить каждый файл mimeapps.list
, defaults.list
и mimeinfo.cache
, которые только возможно, в каждом из них была следующая строка:
inode/directory=org.gnome.Nautilus.desktop
(Некоторые из них также содержат [Default Applications]
на строке выше)
За исключением одного mimeinfo.cache
, в котором “Catfish” и “Thunar” указаны после Nautilus. Но удаление упоминания о Thunar с sudo ничего не изменило.
Я также обновил /usr/share/dbus-1/services/org.freedesktop.FileManager1.service
в соответствии с предложениями, это ничего не изменило.
Я вышел и вошел в свою пользовательскую сессию, также перезагрузил компьютер, ничего не изменилось.
Что я упустил?
Пожалуйста, не отмечайте как дубликат, так как ни один из ответов на нижеприведенные вопросы не решил мою проблему:
- Change file manager used by Firefox on Lubuntu
- “Open containing folder” in Firefox does not use my default file manager
- How to force Firefox to open downloads with new default file manager (Nemo)?
- Make nemo the default file browser
- https://unix.stackexchange.com/questions/336982/how-to-avoid-a-program-taking-over-the-file-manager-when-opening-a-folder-in-tha/336984#336984
- https://unix.stackexchange.com/questions/333254/set-standard-file-browser-for-open-containing-folder
- Stop folders opening with different application than the file manager
Предполагая, что это связано с моим случаем:
Посмотрите в /usr/share/dbus-1/services/
и найдите:
org.xfce.FileManager.service
org.xfce.Thunar.FileManager1.service
Поскольку я использовал Dolphin на Kubuntu, у меня также было org.kde.dolphin.FileManager1.service
. Я скопировал строку SystemdService=plasma-dolphin.service
из файла “dolphin” в два других, заменив соответствующие строки “thunar” там.
В вашем случае вы должны использовать переменные, соответствующие вашему случаю, связанные с “nautilus”.
Они могут выглядеть следующим образом:
org.xfce.FileManager.service
:
[D-BUS Service]
Name=org.xfce.FileManager
Exec=/usr/bin/Thunar --gapplication-service
SystemdService=nautilus.service
org.xfce.Thunar.FileManager1.service
:
[D-BUS Service]
Name=org.freedesktop.FileManager1
Exec=/usr/bin/Thunar --gapplication-service
SystemdService=nautilus.service
Я не уверен насчет org.gnome.Nautilus.service
: но, возможно, что-то вроде:
[D-BUS Service]
Name=org.freedesktop.FileManager1
Exec=/usr/bin/nautilus --daemon
SystemdService=nautilus.service
Другие решения из моих источников (смотрите ссылку), которые я не тестировал, но которые подтверждены как рабочие:
-
выполнение
killall Thunar
при входе в систему -
выполнение
systemctl --user mask thunar
Я думаю, что эти решения нельзя использовать на рабочем столе, как Xfce (где Thunar управляет рабочим столом), без дополнительных настроек, которые бы полностью заменили функции Thunar.
Ответ или решение
Вопрос о том, почему Firefox открывает Thunar вместо Nautilus при выборе "Open containing folder", касается конфигурации файловых менеджеров в системе Linux на основе Ubuntu с рабочей средой XFCE. Давайте разберемся в сути проблемы, предложим возможные пути решения и дадим рекомендации.
Теория
Каждое приложение в Linux может использовать D-Bus для взаимодействия с другими приложениями и службами. В таких операционных системах, как Ubuntu, D-Bus позволяют приложениям, вроде Firefox, открывать файловые менеджеры по умолчанию, определенные системными настройками. Однако проблема может возникать из-за того, что XFCE, как правило, интегрируется с Thunar в качестве стандартного файлового менеджера, несмотря на настройки пользователя, предпочитающего Nautilus.
Пример
Вы установили Nautilus и задали его как файловый менеджер по умолчанию. Но при использовании Firefox и команды "Open containing folder" открывается Thunar. Это указывает на то, что в вашей системе существует конфликт между установленными службами D-Bus и вашими предпочтениями, заданными в системных настройках или mimeapps.list
.
Применение
Теперь, когда мы понимаем, что проблема связана с путаницей в конфигурациях D-Bus и системных предпочтениях, рассмотрим пошагово возможные решения:
-
Проверка и корректировка настроек D-Bus:
Зайдите в каталог
/usr/share/dbus-1/services/
и найдите файлы, связанные с файловыми менеджерами. Обратите внимание на:org.xfce.FileManager.service
org.xfce.Thunar.FileManager1.service
Откройте их и замените строки
SystemdService=thunar.service
наSystemdService=nautilus.service
. Это скажет системе использовать Nautilus через D-Bus вместо Thunar при обращении к файловому менеджеру. -
Корректировка mimeapps.list и defaults.list:
Убедитесь, что во всех конфигурационных файлах
mimeapps.list
,defaults.list
иmimeinfo.cache
указаны нужные параметры:inode/directory=org.gnome.Nautilus.desktop
В некоторых случаях бывает полезно полностью удалить упоминание о Thunar или других файловых менеджерах, чтобы избежать конфликта.
-
Перезапуск служб и системы:
После внесения изменений выполните следующие команды для обновления среды:
killall Thunar
systemctl --user restart dbus
После этого перезапустите вашу сессию пользователя или перезагрузите компьютер для применения всех изменений.
-
Обходные решения:
Если предыдущие шаги не помогли, можно временно заблокировать запуск Thunar:
systemctl --user mask thunar
Однако, это может вызвать проблемы с обработкой рабочего стола в XFCE, если не найдена альтернатива для выполнения этих функций.
Заключение
Проблема, с которой вы столкнулись, связана с особенностями интеграции различных desktop-менеджеров и служб в Linux. Поддержание актуальности всех конфигураций и понимание механизма работы D-Bus являются ключом к успешной настройке рабочего окружения под свои нужды.
Попытки исправить проблемное поведение путем манипулирования с системными службами должны выполняться с осторожностью. Если вы продолжаете сталкиваться с проблемами, может быть полезно обратиться к документации Ubuntu и XFCE или получить консультацию в профессиональных IT-форумах для уточнения и корректировки индивидуальных конфигураций.