Приложение автоматического запуска, не работающее при выполнении вручную/программно

Я в настоящее время пишу фоновый преобразователь для Ubuntu, которая работает после входа в систему. После большого количества головы-desking я наконец решил, что приложение автоматического запуска было способом сделать это.

Однако автоматически запустите заявки, которые я не подаю в Приложениях Запуска, GUI не будет работать, даже если они будут вставляться копией. (Они не будут работать при создании или программно или ручном полицейском я означаю говорить.) я попытался очень трудно копировать вывод файла GUI, но независимо от того, что я пробую, он просто не будет работать. Они не будут работать при сохранении как python.desktop. Они не будут работать при сохранении в desktop_changer.desktop. Однако вручную и программно вставленные файлы появится в GUI, и если я внесу небольшую корректировку в GUI (таком как то, чтобы менять имя или добавление пространства), то они будут внезапно работать! Действительно ли там что-то очевидно, что я отсутствую?

Python:

with open(os.path.expanduser("~/.config/autostart/python.desktop"), "w") as file:
    command = "[Desktop Entry] \nType=Application \nExec=python {}/main.py {} {}\nName=Desktop Changer\n".format(path, arg, minutes)
    file.write(command)

Основной метод:

if __name__ == "__main__":
    time.sleep(10)
    os.chdir(os.path.dirname(os.path.realpath(__file__)))


    while True:

        #Set pic, set timer, run continously
        for img in os.listdir('pics/'):
            print(os.path.abspath('pics/' + img))
            set_gnome_wallpaper(os.path.abspath('pics/' + img))
            time.sleep(10)

И set_gnome_wallpaper():

def set_gnome_wallpaper(file_path):
    command = "gsettings set org.gnome.desktop.background picture-options 'zoom' && gsettings set org.gnome.desktop.background picture-uri file://'%s'" % file_path
    subprocess.call(command, shell=True)

Вывод файла (~/.config/autostart/python.desktop):

[Desktop Entry] 
Type=Application 
Exec=python /home/chessie/program/python/desktop_changer/main.py SPE 60.0
Name=Desktop Changer

Когда я делаю это через GUI и удаляю посторонние части (~/.config/autostart/python.desktop):

[Desktop Entry]
Type=Application
Exec=python /home/chessie/program/python/desktop_changer/main.py SPE 60.0
Name=Desktop Changer

Я не могу вообразить то, что могло вызывать несоизмеримость. У кого-либо есть какая-либо идея?

2
задан 13 April 2017 в 23:08

0 ответов

Другие вопросы по тегам:

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