Пользовательские действия в контекстном меню pcmanfm

Модератор: adventurer

Аватара пользователя

Автор темы
adventurer
Супермодератор
Сообщения: 3215
Зарегистрирован: 15 июн 2011, 18:24

Re: Пользовательские действия в контекстном меню pcmanfm

#31

Сообщение adventurer » 25 дек 2015, 08:09

Если установить пакет madebits-pca, то соответствующие desktop-файлы будут находится в каталоге:

Код: Выделить всё

/usr/local/share/file-manager/actions
Потому как нужно добавить подсказки на русском языке.

Чего-то не работает открытие файла в leafpad с правами root! Открывается текущий каталог с правми root.
С mime-типом что-то не так?

Аватара пользователя

google_online
Сообщения: 15
Зарегистрирован: 19 сен 2015, 11:15

Re: Пользовательские действия в контекстном меню pcmanfm

#32

Сообщение google_online » 30 дек 2015, 21:06

У меня контекстное меню "Открыть папку с правами root" работает а контектное меню "Set As Wallpaper" проявилось но не работает, точнее не устанавливает в качестве обоев.

Pcmanfm версия: 1.2.0-1

Аватара пользователя

Автор темы
adventurer
Супермодератор
Сообщения: 3215
Зарегистрирован: 15 июн 2011, 18:24

Re: Пользовательские действия в контекстном меню pcmanfm

#33

Сообщение adventurer » 31 дек 2015, 07:43

Мне сначала показалось, что устанавливает обои только в формате png, но потом оказалось, что и в формате jpg тоже.

PS
А через свойства рабочего стола выбранные обои устанавливаются?

PPS
Может, после перезагрузки заработает? Потому что у меня работает.

Аватара пользователя

google_online
Сообщения: 15
Зарегистрирован: 19 сен 2015, 11:15

Re: Пользовательские действия в контекстном меню pcmanfm

#34

Сообщение google_online » 02 янв 2016, 23:33

Здрасвтуйте!
Зделал я на втором компьютере тоже самое и всё заработоло.
Файловый менеджер открывает каталоги с правами суперпользователя и контекстное меню для смены обоев на рабочем столе тоже работает. Видимо на ноутбуки я что то не правильно зделал и смуту на сеял.

Аватара пользователя

Автор темы
adventurer
Супермодератор
Сообщения: 3215
Зарегистрирован: 15 июн 2011, 18:24

Пользовательские действия в контекстном меню pcmanfm

#35

Сообщение adventurer » 10 дек 2017, 16:56

У кого-нибудь работает создание ссылки на рабочем столе (+ Create Desktop Shortcut)?

Аватара пользователя

DAlver
Сообщения: 7
Зарегистрирован: 03 июл 2018, 20:32
Откуда: Смоленская обл.

Пользовательские действия в контекстном меню pcmanfm

#36

Сообщение DAlver » 03 июл 2018, 21:19

Lubuntu 18.04 lts , PCManFm 1.2.5 возникли проблемы при создании доп. пунктов контекстного меню.

1) В 18.04 gksu нет, её функции перекинуты на pkexec, которой требуются правила безопастности. В принципе я нашел на форуме (не помню где и на каком) выкладку как их делать ( используя как шаблон файл от синаптика ) по адресу /usr/share/polkit-1/actions (и это работает) , но там же было сказано, что правила могут затираться с обновлениями, и есть вариант использования в /etc/polkit-1 , однако создание /etc/polkit-1/actions с правилами не срабатывает. Кто подскажет куда надо кидать правила в /etc/polkit-1 , если там это вообще может работать :oops:

2) Столкнулся с тем фактом что у меня pcmanfm не передаёт параметры в контекстное меню.
Что не так в этом скрипте ? %f, %u, %d - не работает ничего из этого

Код: Выделить всё

[Desktop Entry]
Type=Action
Profiles=profile-zero;
Name[en_US]=Open Folder As Root
Name[en]=Open Folder Folder As Root
Name[C]=Open Folder As Root
Name[ru]=Открыть Папку как Root
Icon=stop

[X-Action-Profile profile-zero]
MimeTypes=inode/directory;
Exec=/usr/bin/pkexec /usr/bin/pcmanfm %d
Name=Default profile

Аватара пользователя

DAlver
Сообщения: 7
Зарегистрирован: 03 июл 2018, 20:32
Откуда: Смоленская обл.

Пользовательские действия в контекстном меню pcmanfm

#37

Сообщение DAlver » 04 июл 2018, 00:47

Пока мой предыдущий пост кукует на модерации, по 2-му вопросу сам нашел ответ. :D
Сделал на Lubuntu 18.04 три простеньких дополнительных контекстных меню : Открыть Папку как Root , Редактировать текст как Root и Очистить корзину. Последний пункт это чтоб очистка всегда под рукой была :)

Действия в общем виде : Запускаю в терминале sudo pcmanfm и создаю/помещаю нужные файлы/папки , выставляю разрешения.
Файлы правил для pkexec помещаю (пока не разобрался с /etc) в /usr/share/polkit-1/actions , bash-скрипты в /usr/local/bin и выставляю разрешения на запуск, desktop-ярлыки меню в /usr/share/file-manager/actions и также выставляю разрешения на запуск.

Теперь по опциям: Правило для pkexec : com.ubuntu.pkexec.pcmanfm.policy

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
 "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
<policyconfig>

  <action id="com.ubuntu.pkexec.pcmanfm">
    <message>Authentication is required to run the file manager in root mode</message>
    <message xml:lang="ru">Для запуска файлового менеджера в режиме root требуется аутентификация</message>

    <icon_name>synaptic</icon_name>
    <defaults>
      <allow_any>auth_admin</allow_any>
      <allow_inactive>auth_admin</allow_inactive>
      <allow_active>auth_admin</allow_active>
    </defaults>
    <annotate key="org.freedesktop.policykit.exec.path">/usr/bin/pcmanfm</annotate>
    <annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
  </action>

</policyconfig>
bash-скрипт : pcmanfm-pkexec

Код: Выделить всё

#!/bin/sh
pkexec "/usr/bin/pcmanfm" "$@"
Ярлык : open-folder-as-root.desktop

Код: Выделить всё

[Desktop Entry]
Type=Action
Profiles=profile-zero;
Name[en_US]=Open Folder As Root
Name[en]=Open Folder Folder As Root
Name[C]=Open Folder As Root
Name[ru]=Открыть Папку как Root
Icon=stop

[X-Action-Profile profile-zero]
MimeTypes=inode/directory;
Exec=/usr/local/bin/pcmanfm-pkexec  %u
Name=Default profile
Правило для pkexec : com.ubuntu.pkexec.leafpad.policy

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
 "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
<policyconfig>

  <action id="com.ubuntu.pkexec.leafpad">
    <message>Authentication is required to run the leafpad in root mode</message>
    <message xml:lang="ru">Для запуска блокнота leafpad в режиме root требуется аутентификация</message>

    <icon_name>synaptic</icon_name>
    <defaults>
      <allow_any>auth_admin</allow_any>
      <allow_inactive>auth_admin</allow_inactive>
      <allow_active>auth_admin</allow_active>
    </defaults>
    <annotate key="org.freedesktop.policykit.exec.path">/usr/bin/leafpad</annotate>
    <annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
  </action>

</policyconfig>
bash-скрипт : leafpad-pkexec

Код: Выделить всё

#!/bin/sh
pkexec "/usr/bin/leafpad" "$@"
Ярлык : edit-text-as-root.desktop

Код: Выделить всё

[Desktop Entry]
Type=Action
Profiles=profile-zero;
Name[en_US]=Edit text As Root
Name[en]=Edit text As Root
Name[C]=Edit text As Root
Name[ru]=Редактировать текст как Root
Icon=stop

[X-Action-Profile profile-zero]
MimeTypes=text/plain;
Exec=/usr/local/bin/leafpad-pkexec %f
Name=Default profile
Здесь доустановил пакеты trash-cli и zenity.

bash-скрипт : Empty_Trash.sh

Код: Выделить всё

#!/bin/sh
zenity --question --title="Подтвердить "  --text="     Хотите  очистить  корзину  ?           " --no-wrap
if [ $? -eq "0" ]
then
/usr/bin/trash-empty
fi
Ярлык : Empty_Trash.desktop

Код: Выделить всё

[Desktop Entry]
Type=Action
Profiles=profile-zero;
Name[en_US]=Empty Trash
Name[en]=Empty Trash
Name[C]=Empty Trash
Name[ru]=Очистить корзину

Icon=user-trash-full

[X-Action-Profile profile-zero]
MimeTypes=inode/directory;all/allfiles;
Exec=/usr/local/bin/Empty_Trash.sh
Name=Default profile