Разрешение пользователям моего приложения выбирать, должно ли приложение запускаться при входе в систему. Самый кроссплатформенный способ реализации?

Та же проблема здесь смотрит!

http://www.nvidia.com/download/driverResults.aspx/114232/en-us

Известные Проблемы с этим выпуском: * Возобновляющийся от приостанавливают, может не быть надежным на GeForce GTX 9xx платы в некоторых конфигурациях.

Примечание, что много дистрибутивов Linux обеспечивают свои собственные пакеты Графического драйвера Linux NVIDIA в собственном формате управления пакетом распределения. Это может взаимодействовать лучше с остальной частью платформы Вашего распределения, и можно хотеть использовать официальный пакет этой а не NVIDIA.

Также примечание, что пользователи SuSE должны прочитать ПРАКТИЧЕСКОЕ РУКОВОДСТВО Установщика NVIDIA SuSE прежде, чем загрузить драйвер.

Инструкции по установке: После того как Вы загрузили драйвер, изменяетесь на каталог, содержащий пакет драйвера, и устанавливаете драйвер путем выполнения, как корень, sh./NVIDIA-Linux-x86_64-378.09.run

, Одно из последних действий по установке предложит обновлять X конфигурационных файлов. Или признайте, что предложение, отредактируйте свои X конфигурационных файлов вручную так, чтобы NVIDIA, X драйверов будут использоваться, или выполненная nvidia-xconfig

Примечание, которое список поддерживаемых продуктов GPU предоставлен для указания, который GPU поддерживаются конкретной версией драйвера. Некоторые проекты, соединяющиеся, поддерживали GPU, может не быть совместимо с драйвером Linux NVIDIA: в частности, ноутбук и единые настольные проекты с переключаемым (гибрид) или графика Optimus не будут работать, если средства отключить интегрированную графику в аппаратных средствах не будут доступны. Аппаратные проекты будут варьироваться от производителя до производителя, поэтому консультируйтесь с производителем системы, чтобы определить, совместима ли та конкретная система.

2
задан 15.04.2020, 17:22

1 ответ

Распределения, придерживающиеся спецификаций X-Desktop, будут автоматически запускать приложения из общесистемного каталога XDG_CONFIG_DIRS/autostart и из каталога автозапуска в доме пользователя. Только последние будут доступны без прав root.

Определить приложение автозапуска в HOME

1. Найти каталог автозапуска

Сначала нам нужно узнать, где находится каталог автозапуска. В соответствии с спецификациями X-Desktop расположение должно быть следующим:

Если одно и то же имя файла находится в нескольких каталогах автозапуска, следует использовать только файл в самом важном каталоге ,

  • Пример: если $ XDG_CONFIG_HOME не задан, каталогом автозапуска в домашнем каталоге пользователя является ~ / .config / autostart /
  • Пример: если $ XDG_CONFIG_DIRS не установлен для всей системы Каталог автозапуска: / etc / xdg / autostart /
  • Пример: если не установлены $ XDG_CONFIG_HOME и $ XDG_CONFIG_DIRS, а два файла /etc/xdg/autostart/foo.desktop и ~ / .config / autostart / foo .desktop существует, тогда будет использоваться только файл ~ / .config / autostart / foo.desktop, потому что ~ / .config / autostart / важнее, чем / etc / xdg / autostart /
[ 1125] В стандартной установке Ubuntu $XDG_CONFIG_HOME не определено. Поэтому каталог автозапуска находится в ~/.config/autostart. Любой файл .desktop, расположенный в этом каталоге, запустит соответствующее приложение при входе в систему.

2. Создайте каталог автозапуска, если его нет

Прежде чем мы сможем заполнить каталог автозапуска, нам нужно проверить его наличие и в конечном итоге создать его.

3. Определите файл .dektop

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

[Desktop Entry]
Type=Application
Exec=</path/to/application>
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name=<name of application>

Мы можем распространять файл шаблона .desktop с нашим приложением, чтобы скопировать или удалить его из каталога автозапуска в зависимости от установленных пользовательских настроек.

Определите общесистемное приложение автозапуска

Чтобы включить автозапуск приложения для всех пользователей, нам нужно заполнить общесистемный каталог автозапуска (например, /etc/xdg/autostart) нашим файлом .desktop.

Чтобы сделать это из пользовательских настроек, нам нужно временно разрешить права root. Это может, например, сделать это, вызвав подпроцесс с pkexec из нашего диалога настроек.


См. также этот связанный вопрос:

0
ответ дан 15.04.2020, 17:22

Теги

Похожие вопросы