| Server IP : 107.13.46.68 / Your IP : 216.73.216.232 Web Server : Apache/2.4.58 (Ubuntu) System : Linux mariOS 6.8.0-51-generic #52-Ubuntu SMP PREEMPT_DYNAMIC Thu Dec 5 13:09:44 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /lib/python3/dist-packages/ |
Upload File : |
import gi
import aptkit.simpleclient
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
from abc import ABC, abstractmethod
import time
class InfoReport(ABC):
def __init__(self):
self.title = ""
self.icon = "mintreport-symbolic"
self.has_ignore_button = False
@abstractmethod
def is_pertinent(self):
pass
@abstractmethod
def get_descriptions(self):
pass
@abstractmethod
def get_actions(self):
pass
def install_packages(self, package_names):
self.apt = aptkit.simpleclient.SimpleAPTClient(None)
self.package_names = package_names
self.apt.set_finished_callback(self.on_update_before_install_finished)
self.apt.update_cache()
Gtk.main()
def on_update_before_install_finished(self, transaction=None, exit_state=None):
self.apt.set_finished_callback(self.on_install_finished)
self.apt.set_cancelled_callback(self.on_install_finished)
self.apt.install_packages(self.package_names)
def on_install_finished(self, transaction=None, exit_state=None):
del self.package_names
del self.apt
Gtk.main_quit()
def remove_packages(self, package_names):
self.apt = aptkit.simpleclient.SimpleAPTClient(None)
self.package_names = package_names
self.apt.set_finished_callback(self.on_update_before_remove_finished)
self.apt.update_cache()
Gtk.main()
def on_update_before_remove_finished(self, transaction=None, exit_state=None):
self.apt.set_finished_callback(self.on_remove_finished)
self.apt.set_cancelled_callback(self.on_remove_finished)
self.apt.remove_packages(self.package_names)
def on_remove_finished(self, transaction=None, exit_state=None):
del self.package_names
del self.apt
Gtk.main_quit()
class InfoReportAction():
def __init__(self, label, callback, data=None):
self.label = label
self.callback = callback
self.style = None
self.data = data
def set_style(self, style):
self.style = style