import datetime from flask import Flask, render_template, request, url_for import webview import os import pickle import argparse import multiprocessing import subprocess """ The program first reads for the required info stored in the ./data/data.dat binary file. """ app = Flask(__name__) parser = argparse.ArgumentParser() parser.add_argument("--type",type=str,required=False) args = parser.parse_args() fr = open(r"/usr/share/linuxDynamicWallpapers/data/data.dat","rb") data = pickle.load(fr) fr.close() @app.context_processor def override_url_for(): return dict(url_for=dated_url_for) def dated_url_for(endpoint, **values): if endpoint == 'static': filename = values.get('filename', None) if filename: file_path = os.path.join(app.root_path, endpoint, filename) values['q'] = int(os.stat(file_path).st_mtime) return url_for(endpoint, **values) def setDEWallpaper(de,style): if style in ["bitday","firewatch","gradient"]: #only these 3 types have .png file extension. type = ".png" else: type = ".jpg" if de in ["/usr/share/xsessions/plasma","NEON","plasmawayland","neon","PLASMA","Plasma","plasma","KDE","Kde","kde"]: #Set Wallpaper for Plasma DE print("Inside",de) os.system("qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript 'var allDesktops = desktops();print (allDesktops);for (i=0;i