mirror of
https://github.com/Snigdha-OS/snigdhaos-kernel-switcher.git
synced 2025-09-07 15:45:13 +02:00
🔨 refactor(_construct): still on construction
This commit is contained in:
@@ -20,10 +20,11 @@ import shutil
|
|||||||
import time
|
import time
|
||||||
import re
|
import re
|
||||||
from libs.Kernel import Kernel, InstalledKernel, CommunityKernel
|
from libs.Kernel import Kernel, InstalledKernel, CommunityKernel
|
||||||
|
# from ui import AboutDialog, FlowBox,KernelStack,ManagerGUI,MenuButton,ProgressWindow,SettingsWindow,SplashScreen,Stack
|
||||||
from ui.MessageWindow import MessageWindow
|
from ui.MessageWindow import MessageWindow
|
||||||
from queue import Queue
|
from queue import Queue
|
||||||
import gi
|
import gi
|
||||||
gi.require_version("Gtk", "3.0") # GTK 2.0 is dead!
|
gi.require_version("Gtk", "3.0")
|
||||||
from gi.repository import GLib
|
from gi.repository import GLib
|
||||||
|
|
||||||
|
|
||||||
@@ -541,5 +542,38 @@ def print_all_threads():
|
|||||||
def update_progress_textview(self, line):
|
def update_progress_textview(self, line):
|
||||||
try:
|
try:
|
||||||
if len(line) > 0:
|
if len(line) > 0:
|
||||||
self.textbuffer.insert_markup()
|
self.textbuffer.insert_markup(self.textbuffer.get_end_iter(), "%s" % line, len(" %s" % line))
|
||||||
|
except Exception as e:
|
||||||
|
logger.error("Found error in update_progress_textview(): %s" %e)
|
||||||
|
finally:
|
||||||
|
self.messages_queue.task_done()
|
||||||
|
text_mark_end = self.textbuffer.create_mark("end", self.textbuffer.get_end_iter(), False)
|
||||||
|
self.textview.scroll_mark_onscreen(text_mark_end)
|
||||||
|
|
||||||
|
def monitor_messages_queue(self):
|
||||||
|
try:
|
||||||
|
while True:
|
||||||
|
message = self.messages_queue.get()
|
||||||
|
GLib.idle_add(update_progress_textview, self, message, priority=GLib.PRIORITY_DEFAULT)
|
||||||
|
except Exception as e:
|
||||||
|
logger.error("Found error in monitor_messages_queue(): %s" %e)
|
||||||
|
|
||||||
|
def check_kernel_installed(name):
|
||||||
|
try:
|
||||||
|
logger.info("Checking if %s kernel is installed!" % name)
|
||||||
|
check_cmd_str = ["pacman", "-Q", name]
|
||||||
|
if logger.getEffectiveLevel() == 10:
|
||||||
|
logger.debug("Executing: %s" %check_cmd_str)
|
||||||
|
process_kernel_query = subprocess.Popen(check_cmd_str,shell=False,stdout=subprocess.PIPE,stderr=subprocess.STDOUT, env=locale_env)
|
||||||
|
out,err = process_kernel_query.communicate(timeout=process_timeout)
|
||||||
|
if process_kernel_query.returncode == 0:
|
||||||
|
for i in out.decode("utf-8").splitlines():
|
||||||
|
if i.split(" ")[0] == name:
|
||||||
|
logger.info("Kernel is already installed!")
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
logger.info("Kernel Not Installed!")
|
||||||
|
return False
|
||||||
|
except Exception as e:
|
||||||
|
logger.error("Found error in check_kernel_installed(): %s" %e)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user