.profile в Ubuntu работает желаемый сценарий Python, но сценарий не работает как обычно?

Я создаю средство смены фона для Ubuntu, используя Python, в основном для развлечения. Когда я запускаю скрипт из оболочки, он работает и чередует фон между изображениями в определенной папке. Сейчас я пытаюсь запустить скрипт через.profile, чтобы он запускался при входе в систему. Сценарий определенно запущен - я помещаю печать в соответствующую функцию, и когда я нажимаю 'alt, ctrl, f3', я вижу вывод оператора print- но по какой-то причине фон не изменится, когда функция называется так. Я не думаю, что это вопрос запуска его из нелокального каталога, как я уже сказал, если я запускаю 'python program/python/desktop_changer/main.py', программа смены рабочего стола работает очень хорошо.

Вот соответствующие части функции:

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

    #Set pic, set timer, run continously
    for img in os.listdir('pics/'):
        #This next line is functional when I hit 'alt, ctrl, f3', outputting the paths for new images every ten seconds
        print(os.path.abspath('pics/' + img))
        set_gnome_wallpaper(os.path.abspath('pics/' + img))
        time.sleep(float(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)

И в ~/.profile: (SPE и 20 не имеют значения аргументы, и их использование закомментировано, пока я не смогу правильно запустить это)

python /home/chessie/program/python/desktop_changer/main.py SPE 20 &

0 ответов

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