Автор Тема: Нарушение файловых ассоциаций  (Прочитано 32294 раз)

Оффлайн montigomo

  • Давно тут
  • **
  • Сообщений: 359
  • Montigomo
    • Email
Други, нужен совет.
Недавно установил себе "Рабочая станция 8.2", теперь выявляю огрехи.
Значит, в системе установлены два браузера - Pale Moon и Firefox.
По умолчанию пользуюсь Pale Moon, так как он быстрее работает и имеет привычный для меня вид.
НО!
При каждой перезагрузке ноутбука слетают настройки браузера по умолчанию и ссылки из почты не открываются.
Опытным путём установил, что для восстановления настроек браузера по умолчанию необходимо в Центре Управления МАТЕ активировать опцию "Предпочтительные приложения" и установить там браузером по умолчанию Pale Moon. Потому что там автоматически устанавливается браузером Mozilla Thunderbird (см. фото).
Это явно какая-то лажа на уровне самой операционной системы.
Подскажите, как избавиться от такой неприятности?
Алексей ЕФАНОВ, г. СПб.; ноутбук Lenovo Т420;
BaseAlt Workstation 10.1 МАТЕ (x86_64)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #1 : 09.11.2018 03:36:14 »
Это явно какая-то лажа на уровне самой операционной системы.

Лажа? Ну не скажите :-)
Линукс лучше чем другие. Разработчикам Линукс-программ нужно повесить медаль на грудь. 500x500 из доски сотки.
Спорим вы не угадаете, в чём Линукс иногда будет по-умолчанию открывать html и текстовые ascii файлы с расширением txt в Линукс-системе?, - в Интернет Эксплорер и Ноутпад. Осталось ждать, что по щелчку на exe-файле, с сайта microsoft.com будет скачиваться Windows 10 и устанавливаться вместо Линукс в автоматическом режиме.

Подскажите, как избавиться от такой неприятности?

Теперь по сути вопроса:
Я не в курсе как оно устроено в MATE, но попробуйте поискать, что и где прописано для WebBrowser, как браузера по-умолчанию и правильно ли это настроено.
Например в Xfce это выглядит так:
$ grep -r WebBrowser= ~
/home/user/.config/xfce4/helpers.rc:WebBrowser=newmoon
$ grep -r WebBrowser= ~/.config/
/home/user/.config/xfce4/helpers.rc:WebBrowser=newmoon

Если конфигурация лежит именно в .config, то вторая команда поиска отработает быстрее.
Возможные вариации зависят от разработчика DE и разделитель м.б. не знак равенства.

Также в Xfce например не стоит забывать, что существует понятие custom-WebBrowser и вручную это настраивать прямым редактиование конфиг-файлов крайне не рекомендуестся, т.к. не понимая, вы можете легко сломать запуск WebBrowser:
$ grep -r WebBrowser ~/.local | tail -n 1
/home/user/.local/share/xfce4/helpers/custom-WebBrowser.desktop:X-XFCE-Category=WebBrowser
$ ls -1 /home/user/.local/share/xfce4/helpers/
custom-WebBrowser.desktop
$ cat $HOME/.local/share/xfce4/helpers/custom-WebBrowser.desktop
[Desktop Entry]
NoDisplay=true
Version=1.0
Encoding=UTF-8
Type=X-XFCE-Helper
X-XFCE-Category=WebBrowser
X-XFCE-CommandsWithParameter=/usr/bin/elinks "%s"
Icon=elinks
Name=elinks
X-XFCE-Commands=/usr/bin/elinks


Как-то так это должно быть устроено и в mate.
Если уточнить всё это, из пользователей mate будет некому, вам придётся самому поискать этот конфигурационный файл устанавливающий запуск исполняемого файла выбранного браузера по WebBrowser.


При каждой перезагрузке ноутбука слетают настройки браузера по умолчанию и ссылки из почты не открываются.

Предполагается что вы используете thunderbird.
Для этого случая вам придётся прочитать любой из двух текстов на английском:
https://www.lifewire.com/change-the-default-browser-in-thunderbird-2532751
http://kb.mozillazine.org/Changing_the_web_browser_invoked_by_Thunderbird

Начинать лучше с первой, - там описывается пошагово. А этих шагов много.

Можете почитать и тут на русском:
https://devbug.info/thunderbird-change-default-browser/
Меняем браузер по умолчанию в Thunderbird
thunderbird: назначить браузер по умолчанию
« Последнее редактирование: 09.11.2018 03:41:08 от Speccyfighter »

Оффлайн montigomo

  • Давно тут
  • **
  • Сообщений: 359
  • Montigomo
    • Email
Re: Нарушение файловых ассоциаций
« Ответ #2 : 10.11.2018 15:51:51 »
Speccyfighter, ты, вроде бы, взрослый человек, именуешь себя "Мастер", а несёшь какую-то пургу, как малолеток!
Причём тут "винда"?!
Я описываю конкретную проблему, проявившуюся в новом релизе операционной системы и прошу дать совет по её преодолению.
Причём я утверждаю, что это конкретная СИСТЕМНАЯ ошибка! Потому что с этим я сталкивался ещё в первом релизе Workstation 8.0.
А вот в предыдущих выпусках такой лажи не было! Я использовал Alt Linux Centaurus 6.0 и 7.0.
Причём для чистоты эксперимента это всё работало на одном и том же ноутбуке - Lenovo ThinkPad R61i.
А ты мне пишешь "Я не в курсе как оно устроено в MATE".
Тогда, может, лучше даст совет человек знающий?
Алексей ЕФАНОВ, г. СПб.; ноутбук Lenovo Т420;
BaseAlt Workstation 10.1 МАТЕ (x86_64)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #3 : 10.11.2018 17:52:31 »
Ты что, тупой?
Тебе показали как искать. Или в винде только по кнопкам клацать научили а про DOS-терминал забыли?

Я вообще mate первый раз в глаза вижу:
В mate предпочитаемые приложения меняются в mimeapps
$ mate-about --version
MATE Desktop Environment 1.12.1
$ grep -r fox /home/altlinux/.config/mimeapps.list
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=firefox.desktop
x-scheme-handler/about=firefox.desktop
$ grep -r moon /home/altlinux/.config/mimeapps.list
x-scheme-handler/http=newmoon.desktop
x-scheme-handler/https=newmoon.desktop
x-scheme-handler/about=newmoon.desktop
$ grep -r moon ~/.{config,local}/
/home/altlinux/.config/mimeapps.list:x-scheme-handler/http=newmoon.desktop
/home/altlinux/.config/mimeapps.list:x-scheme-handler/https=newmoon.desktop
/home/altlinux/.config/mimeapps.list:x-scheme-handler/about=newmoon.desktop
$ find /usr/ /etc/ /home/altlinux/ -name "*desktop*" 2>/dev/null | grep 'moon\|fox'
/usr/share/applications/newmoon.desktop
/usr/share/applications/firefox.desktop

И после перезагрузки это должно сохраняться:
(см. этот хренов скриншот)
$ grep -r moon ~/.{config,local}/
/home/altlinux/.config/mimeapps.list:x-scheme-handler/http=newmoon.desktop
/home/altlinux/.config/mimeapps.list:x-scheme-handler/https=newmoon.desktop
/home/altlinux/.config/mimeapps.list:x-scheme-handler/about=newmoon.desktop
$ grep x-scheme-handler /home/altlinux/.config/mimeapps.list
x-scheme-handler/http=newmoon.desktop
x-scheme-handler/https=newmoon.desktop
x-scheme-handler/about=newmoon.desktop
x-scheme-handler/mailto=thunderbird.desktop

И смотри наличие конфига, права на файлы и каталоги.

Причём для чистоты эксперимента это всё работало на одном и том же ноутбуке - Lenovo ThinkPad R61i.

При чём тут ноутбук?!

Speccyfighter, ты, вроде бы, взрослый человек, именуешь себя "Мастер", а несёшь какую-то пургу, как малолеток!

Можешь его себе забрать.

Я уже начинаю жалеть что ответил и подумываю, а стоит ли вам Линукс-пользователям помогать?.. Лучше забить на вас, - спокойней будет. А что у вас там будет на компьютере с Линукс, да хрен с вами.
« Последнее редактирование: 10.11.2018 18:11:24 от Speccyfighter »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #4 : 10.11.2018 18:59:48 »
Если изменить конфиг mimeapps руками, а не через GUI-вый аплет, то можно и разные браузеры запускать щелчком по линку в thunderbird в зависимости от протокола в ссылке:
$ grep x-scheme-handler /home/altlinux/.config/mimeapps.list
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=newmoon.desktop
x-scheme-handler/about=newmoon.desktop
x-scheme-handler/mailto=thunderbird.desktop

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #5 : 10.11.2018 19:20:24 »
Сам же mimeapps, выглядит целиком так:

Default Applications - умолчание
Added Associations - альтернативный выбор
$ sed "" /home/altlinux/.config/mimeapps.list
[Default Applications]
x-scheme-handler/http=newmoon.desktop
x-scheme-handler/https=newmoon.desktop
x-scheme-handler/about=newmoon.desktop
x-scheme-handler/mailto=thunderbird.desktop
application/x-extension-eml=thunderbird.desktop
message/rfc822=thunderbird.desktop
inode/directory=caja-folder-handler.desktop
text/plain=pluma.desktop
audio/mpeg=gnome-mplayer.desktop
audio/x-mpegurl=gnome-mplayer.desktop
audio/x-scpls=gnome-mplayer.desktop
audio/x-vorbis+ogg=gnome-mplayer.desktop
audio/x-wav=gnome-mplayer.desktop
video/mp4=gnome-mplayer.desktop
video/mpeg=gnome-mplayer.desktop
video/mp2t=gnome-mplayer.desktop
video/msvideo=gnome-mplayer.desktop
video/quicktime=gnome-mplayer.desktop
video/webm=gnome-mplayer.desktop
video/x-avi=gnome-mplayer.desktop
video/x-flv=gnome-mplayer.desktop
video/x-matroska=gnome-mplayer.desktop
video/x-mpeg=gnome-mplayer.desktop
video/x-ogm+ogg=gnome-mplayer.desktop
image/bmp=eom.desktop
image/gif=eom.desktop
image/jpeg=eom.desktop
image/png=eom.desktop
image/tiff=eom.desktop
application/pdf=atril.desktop

[Added Associations]
x-scheme-handler/http=firefox.desktop;
x-scheme-handler/https=firefox.desktop;
x-scheme-handler/about=firefox.desktop;

Права на каталог и файл ( не использовать su без минуса!, - Read This Fac*ing Manual )
$ ls -l /home/altlinux/.config/mimeapps.list
-rw-r--r-- 1 altlinux altlinux 1185 ноя 10 22:02 /home/altlinux/.config/mimeapps.list
$ ls -la /home/altlinux/ | grep .config
drwx------ 10 altlinux altlinux  4096 ноя 10 22:02 .config
$ ls -l --numeric-uid-gid /home/altlinux/.config/mimeapps.list
-rw-r--r-- 1 500 500 1185 ноя 10 22:02 /home/altlinux/.config/mimeapps.list
$ ls -la --numeric-uid-gid /home/altlinux/ | grep .config
drwx------ 10 500 500  4096 ноя 10 22:02 .config

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #6 : 10.11.2018 19:38:44 »
Если desktop файл отсутствует
# mv /usr/share/applications/firefox.desktop /usr/share/applications/firefox.desktop.bak

то в GUI приложении Предпочитаемого приложения, альтернативного выбора не будет.

Если оба desktop файла браузеров отсутствуют, то выбора предпочитаемого браузера не будет совсем:
# mv /usr/share/applications/firefox.desktop /usr/share/applications/firefox.desktop.bak
# mv /usr/share/applications/newmoon.desktop /usr/share/applications/newmoon.desktop.bak
(см. скриншот)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #7 : 10.11.2018 23:02:27 »
Несмотря на то что в mate пользователь может иметь свой предпочитаемый браузер
$ grep x-scheme-handler /home/altlinux/.config/mimeapps.list
x-scheme-handler/http=newmoon.desktop
x-scheme-handler/https=newmoon.desktop
x-scheme-handler/about=newmoon.desktop
x-scheme-handler/mailto=thunderbird.desktop

thunderbird может иметь свою ассоциацию по mime
Меняем браузер по умолчанию в Thunderbird
но как её потом очистить в thunderbird, не знаю.
Хранится она где-то в $HOME/.thunderbird/

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 099
Re: Нарушение файловых ассоциаций
« Ответ #8 : 11.11.2018 09:20:34 »
Тебе показали как искать. Или в винде только по кнопкам клацать научили а про DOS-терминал забыли?
Вообще-то даже я чаще не читаю вагон твоего выхлопа. Cуть в 4-10 строк теряется в ненужном попутном объяснении ещё на пять десятков.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #9 : 11.11.2018 14:32:56 »
Тебе показали как искать. Или в винде только по кнопкам клацать научили а про DOS-терминал забыли?
Вообще-то даже я чаще не читаю вагон твоего выхлопа. Cуть в 4-10 строк теряется в ненужном попутном объяснении ещё на пять десятков.

Вся конструкция должна быть видна полностью. Ты что, не видишь, что пользователь 9 лет на альтах, но сдвигов никаких?

Вообще-то даже я чаще не читаю вагон твоего выхлопа. Cуть в 4-10 строк ...

У нас с тобой разный подход:
Ты смотришь на саму проблему, как админ.
Я хочу научить пользователя понимать систему и научиться пользоваться её инструментами. Дать ему больше самостоятельности. Чтобы он не помер с голоду рядом с полным холодильником.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #10 : 11.11.2018 16:46:12 »
Ещё раз проверил с удалением firefox-esr:
Проблема не наблюдается в лайве стартекита mate на сентябрьском срезе бранча - от 13 сентября.
И при удалении firefox-esr, выбор newmoon как предпочитаемого браузера сохраняется:
$ cat /etc/os-release
NAME="starter kit"
VERSION="p8 (Hypericum)"
ID=altlinux
VERSION_ID=p8
PRETTY_NAME="ALT Starterkit (Hypericum)"
ANSI_COLOR="1;33"
CPE_NAME="cpe:/o:alt:starterkit:p8"
HOME_URL="http://en.altlinux.org/starterkits"
BUG_REPORT_URL="https://bugs.altlinux.org/"
$ mate-about --version
MATE Desktop Environment 1.12.1
$ rpm -q firefox-esr
предупреждение: пакет firefox-esr не установлен
$ rpm -qa | grep newmoon
newmoon-data-27.8.3-alt0.M80P.1
newmoon-base-27.8.3-alt0.M80P.1

newmoon остался выбранным как предпочтительный браузер:
$ grep x-scheme-handler /home/altlinux/.config/mimeapps.list
x-scheme-handler/http=newmoon.desktop
x-scheme-handler/https=newmoon.desktop
x-scheme-handler/about=newmoon.desktop
x-scheme-handler/mailto=thunderbird.desktop
$ rpm -qf $(which mate-default-applications-properties)
mate-control-center-1.12.1-alt2.M80P.1
(см. окно Предпочтительные приложения на скриншоте)

Открытие newmoon по ссылке из thunderbird, на скриншоте.
« Последнее редактирование: 11.11.2018 16:54:59 от Speccyfighter »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #11 : 11.11.2018 17:16:55 »
Кстати:
Надо будет попросить Антона Мидюкова добавить в профиль стартеркита mate какой-нибудь clipper - менеджер буфера обмена, его в этом стартерките нет, включая и в дополнениях для панели.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #12 : 11.11.2018 18:20:52 »
Ну и в завершение:

Зависимостей у приложения много:
$ ldd /usr/bin/mate-default-applications-properties | wc -l
68

В стартерките alt-p8-mate-20180913-i586.iso, конфиг mimeapps.list в домашнем каталоге изменяется и сохраняется при выборе предпочтительного браузера:
$ sed -n '5469,5489p' strace-mate-default-applications-properties.txt | grep -n .
1:access("/home", F_OK)                   = 0
2:stat64("/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
3:access("/home/altlinux", F_OK)          = 0
4:stat64("/home/altlinux", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
5:access("/home/altlinux/.config", F_OK)  = 0
6:stat64("/home/altlinux/.config", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
7:open("/home/altlinux/.config/mimeapps.list", O_RDONLY|O_LARGEFILE) = 10
8:fstat64(10, {st_mode=S_IFREG|0644, st_size=1066, ...}) = 0
9:read(10, "[Default Applications]\nx-scheme-"..., 4096) = 1066
10:read(10, "", 4096)                      = 0
11:close(10)                               = 0
12:open("/home/altlinux/.config/mimeapps.list.HRUHSZ", O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 0666) = 10
13:fallocate(10, 0, 0, 1066)               = 0
14:write(10, "[Default Applications]\nx-scheme-"..., 1066) = 1066
15:fstatfs64(10, 84, {f_type=AUFS_SUPER_MAGIC, f_bsize=4096, f_blocks=715960, f_bfree=431139, f_bavail=390674, f_files=182160, f_ffree=173825, f_fsid={val=[0, 0]}, f_namelen=242, f_frsize=4096, f_flags=ST_VALID|ST_RELATIME}) = 0
16:lstat64("/home/altlinux/.config/mimeapps.list", {st_mode=S_IFREG|0644, st_size=1066, ...}) = 0
17:fsync(10)                               = 0
18:close(10)                               = 0
19:rename("/home/altlinux/.config/mimeapps.list.HRUHSZ", "/home/altlinux/.config/mimeapps.list") = 0
20:write(4, "\1\0\0\0\0\0\0\0", 8)         = 8
21:write(4, "\1\0\0\0\0\0\0\0", 8)         = 8
В 14-й строке идёт запись x-scheme-handler в секцию [Default Applications] с новым выбором сразу же после имени секции; в 19-й, файл конфига переименовывается.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Нарушение файловых ассоциаций
« Ответ #13 : 11.11.2018 18:53:04 »
Как это ещё может сломаться:

Если права на каталог сломаны
$ grep x-scheme /home/altlinux/.config/mimeapps.list
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=firefox.desktop
x-scheme-handler/about=firefox.desktop
x-scheme-handler/mailto=thunderbird.desktop
# chown 0:0 /home/altlinux/.config

Здесь идёт выбор браузера

то смены выбора браузера не произойдёт, несмотря на визуальную смену в GUI приложении mate-default-applications-properties
# chown 500:500 /home/altlinux/.config
$ grep x-scheme /home/altlinux/.config/mimeapps.list
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=firefox.desktop
x-scheme-handler/about=firefox.desktop
x-scheme-handler/mailto=thunderbird.desktop

Отказа в доступе оно не выдаст.
А визуально будет создаваться ощущение, что смена предпочтительного браузера произошла.

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 031
  • ITS
Re: Нарушение файловых ассоциаций
« Ответ #14 : 12.11.2018 11:55:04 »
Тебе показали как искать. Или в винде только по кнопкам клацать научили а про DOS-терминал забыли?
Не стоит обижаться. У тебя много полезной информации для детального понимания - это нужно и пиши также дальше, но ... :

"Чингисхан как-то сказал об одном из своих начальников,
что у него железная воля, честь, совесть, ум, он храбр как тигр,
но... никогда не стать ему крупным руководителем. Потому что он
думает, будто все люди такие."