mirror of
https://github.com/Snigdha-OS/snigdhaos-kernel-switcher-dev.git
synced 2025-09-11 00:04:57 +02:00
34 lines
1.2 KiB
Python
34 lines
1.2 KiB
Python
import os
|
|
from os import makedirs
|
|
import subprocess
|
|
import logging
|
|
from logging import Logger
|
|
import locale
|
|
import gi
|
|
from gi.repository import Gtk
|
|
gi.require_version("Gtk", "3.0")
|
|
|
|
basedir = os.path.abspath(os.path.join(os.path.dirname(__file__)))
|
|
sudousername = os.getlogin()
|
|
logger = logging.getLogger("logger")
|
|
ch = logging.StreamHandler()
|
|
# source: https://stackoverflow.com/questions/3220284/how-to-customize-the-time-format-for-python-logging
|
|
formatter = logging.Formatter("%(asctime)s:%(levelname)s > %(message)s", "%Y-%m-%d %H:%M:%S")
|
|
ch.setFormatter(formatter)
|
|
logger.addHandler(ch)
|
|
locale.setlocale(locale.LC_ALL, "C.utf-8")
|
|
locale_env = os.environ
|
|
locale_env["LC_ALL"] = "C.utf-8"
|
|
|
|
def permissions(dst):
|
|
try:
|
|
groups = subprocess.run(["sh", "-c", "id " + sudousername],shell=False,stdout=subprocess.PIPE,stderr=subprocess.STDOUT,env=locale_env)
|
|
for i in groups.stdout.decode().split(" "):
|
|
if "gid" in i:
|
|
g = i.split("(")[1]
|
|
group = g.replace(")", "".strip())
|
|
subprocess.call(["chown", "-R", sudousername + ":" + group, dst],shell=False,env=locale_env)
|
|
except Exception as e:
|
|
logger.error("Found error in permissions() ! Type: %s" %e)
|
|
|