osupdater/antiquated/python/osupdater.py

52 lines
1.2 KiB
Python
Executable file

#!/usr/bin/env python
import wx
import subprocess
class Example(wx.Frame):
def __init__(self, *args, **kwargs):
super(Example, self).__init__(*args, **kwargs)
self.initui()
def initui(self):
menubar = wx.MenuBar()
filemenu = wx.Menu()
fileitem = filemenu.Append(wx.ID_EXIT, 'Quit', 'Quit application')
menubar.Append(filemenu, '&File')
self.SetMenuBar(menubar)
self.Bind(wx.EVT_MENU, self.onquit, fileitem)
self.SetSize((300, 200))
self.SetTitle('OS Updater')
self.Centre()
pnl = wx.Panel(self)
updateflatpakbutton = wx.Button(pnl, label='Update Flatpaks', pos=(20, 20))
updateflatpakbutton.Bind(wx.EVT_BUTTON, self.onflatpakupdate)
updaterpmbutton = wx.Button(pnl, label='Update RPMs', pos=(20, 60))
updaterpmbutton.Bind(wx.EVT_BUTTON, self.onrpmupdate)
def onflatpakupdate(self, e):
subprocess.run(["flatpak", "update", "-y"])
def onrpmupdate(self, e):
subprocess.run(["sudo", "dnf", "update", "-y"])
def onquit(self, e):
self.Close()
def main():
app = wx.App(0)
ex = Example(None)
ex.Show()
app.MainLoop()
if __name__ == '__main__':
main()