50 lines
No EOL
1.2 KiB
Python
Executable file
50 lines
No EOL
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", "--user"])
|
|
|
|
def OnRPMUpdate(self, e):
|
|
subprocess.run(["sudo", "dnf", "update", "-y"])
|
|
|
|
def OnQuit(self, e):
|
|
self.Close()
|
|
|
|
def main():
|
|
|
|
app = wx.App()
|
|
ex = Example(None)
|
|
ex.Show()
|
|
app.MainLoop()
|
|
|
|
if __name__ == '__main__':
|
|
main() |