Ondersteuning > Programmeren

Python script laten opstarten

(1/2) > >>

Mustangman1966:
Een vriend heeft een Python script gemaakt om achtergronden te laten veranderen.
Maar hoe kan ik dat script automatisch laten opstarten in Ubuntu 20.04?

vanadium:
Via de "opstarttoepassingen" van je desktop. In Ubuntu 20.10 is er een toepassing "Startup Applications" (commando: nome-session-properties), maar het kan zijn dat je voor vroegere versies terecht moet in "Gnome Tweaks", tab "Startup applications". Je kan ook steeds zelf een starter (.desktop bestand) aanmaken in ~/.config/autostart

Mustangman1966:

--- Citaat van: vanadium op 2020/12/18, 11:49:39 ---Via de "opstarttoepassingen" van je desktop. In Ubuntu 20.10 is er een toepassing "Startup Applications" (commando: nome-session-properties), maar het kan zijn dat je voor vroegere versies terecht moet in "Gnome Tweaks", tab "Startup applications". Je kan ook steeds zelf een starter (.desktop bestand) aanmaken in ~/.config/autostart

--- Einde van citaat ---
Ik heb het geprobeerd via Opstarten in Gnome Tweaks, maar hij start alsnog niet op.
Dit is het script:

--- Code: ---import os
import sys
import random
import time
import subprocess

customArgs = []
customArgs.append('--path=')

path = None

for customArg in customArgs:
    for sysArg in sys.argv:
        sysArg = sysArg.split('=')
        cmd = sysArg[0]
        try:
            val = sysArg[1]
        except:
            continue
        if cmd in customArg:
            if cmd == '--path':
                path = val
               
if path is None:
    path = '/home/rick/Afbeeldingen/Wallpapers'

def ChangeWallp():
    files = []
    try:
        for r, d, f in os.walk(path):
            for file in f:
                files.append(os.path.join(r, file))
        os.system('gsettings set org.gnome.desktop.background picture-uri file:///'+str(random.choice(files)))
        os.system('gsettings set org.gnome.desktop.screensaver picture-uri file:///'+str(random.choice(files)))
    except:
        print('')
    time.sleep(120)
    ChangeWallp()
ChangeWallp()
--- Einde van code ---

Hoe krijg ik dit script dan werkend via "startup Applications" ?

MauRice2:
Mustangman1966

Ben geen kei met python.
Maar volgens mij heb je twee mogelijkheden in die 'OpstartToepassingen'

A)
Je zet in de opdracht regel:

--- Code: ---python <Path/Naam-Script>

--- Einde van code ---

B)
Boven in het scrpit de onderstaan regel toeveogen:

--- Code: ---#!/usr/bin/python

--- Einde van code ---
Script uivoerbaar maken en de opdrachtregel zet je het  <Path/Naam-Script>

De regel #!/usr/bin/python zeg dat het script met python moet worden uitgevoerd.
Als er #!/bin/bash staat is het een bash-script e.d.
Maar moet wel de eerste regel zijn.

Veel plezier ermee.

erik1984:
Werkt dat trouwens ook bij een script dan eindeloos blijft draaien zoals in dit geval? Ik had in Ubuntu MATE een soortgelijk script en uiteindelijk een ander scriptbestand gemaakt van 1 regel om het daadwerkelijk script aan te roepen

--- Code: ---/pad/naar/mijnscript.sh &
--- Einde van code ---
& is om het op de achtergrond te draaien.

Maar weet niet hoe dat tegenwoordig in de gewone Ubuntu werkt met opstartscripts.

Navigatie

[0] Berichtenindex

[#] Volgende pagina

Naar de volledige versie