Я пытаюсь запустить слайд-шоу автоматически при запуске в Fedora 20. Я начал с простого сценария. eog - это "eye on gnome", который является средством просмотра слайд-шоу, а мои фотографии находятся в каталоге /home /admin /Downloads. Это работает отлично.

#!/bin/bash
#
eog --slide-show /home/admin/Downloads

Затем я создал файл модуля в /etc /systemd /system

[Unit]
Description=Starts the pics program

[Service]
ExecStart=/home/admin/pics

[Install]
WantedBy=graphical.target

Когда я попытался запустить скрипт запуска, я получил следующее

Loaded: loaded (/etc/systemd/system/pics.service; enabled)
Active: failed (Result:exit-code)...
Process: 4752 ExecStart=/home/admin/pics
Main PID: 4799 (code=exited, status=1/FAILURE)

...:Unable to init server: Could not connect: Connection refused
...:Cannot open display:
...:Run 'eog --help' to see a full...
...:Unit pics.service entered failed state.

После исследования я обнаружил, что мне нужно включить следующее, но независимо от того, где я его поставил, у меня продолжают появляться различные сбои. Очевидно, это как-то связано с запуском программы от имени другого пользователя. Могу ли я получить помощь в исправлении моего кода?

 pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY 

1 ответ1

0

Вместо этого используйте Autostart для настольных приложений .

Внутри $XDG_CONFIG_HOME/autostart/ (по умолчанию: $HOME/.config/autostart) создайте файл pics.desktop , который должен содержать:

[Desktop Entry]
Type=Application
Exec=/home/admin/pics
Hidden=false
X-GNOME-Autostart-enabled=true
Name[en_US]=pics
Name=pics
Comment[en_US]=Starts the pics program
Comment=Starts the pics program

Если вы действительно хотите использовать системные модули, по крайней мере:

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .