From 38965cc89460410e5ebe823bfbaa2a2f6a0b9ad2 Mon Sep 17 00:00:00 2001 From: gutosie Date: Fri, 28 Nov 2025 11:40:04 +0200 Subject: [PATCH] add install stable versin in blue button --- NeoBoot/files/tools.py | 67 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 66 insertions(+), 1 deletion(-) diff --git a/NeoBoot/files/tools.py b/NeoBoot/files/tools.py index 0e609e8..2c157b3 100644 --- a/NeoBoot/files/tools.py +++ b/NeoBoot/files/tools.py @@ -2950,11 +2950,13 @@ class Opis(Screen): + - + + @@ -2963,8 +2965,10 @@ class Opis(Screen): skin = """ + + @@ -2980,6 +2984,7 @@ class Opis(Screen): Screen.__init__(self, session) self["key_red"] = Label(_("Remove NeoBoot of STB")) self["key_green"] = Label(_("Install NeoBOOT from github")) + self["key_blue"] = Label(_("Install NeoBOOT Stable")) self["lab1"] = ScrollLabel("") self["lab2"] = Label(_("" + getNeoActivatedtest() + "")) self["actions"] = ActionMap( @@ -2988,6 +2993,7 @@ class Opis(Screen): "back": self.close, "red": self.delete, "green": self.neoinstallgithub, + "blue": self.installneostable, "ok": self.close, "up": self["lab1"].pageUp, "left": self["lab1"].pageUp, @@ -3089,6 +3095,65 @@ class Opis(Screen): else: self.close() +############################################## + + def installneostable(self): + message = _("Are you sure you want to reinstall neoboot from github.") + ybox = self.session.openWithCallback( + self.neostable, MessageBox, message, MessageBox.TYPE_YESNO + ) + ybox.setTitle(_("Install.")) + + def neostable(self, answer): + if fileExists("/.multinfo"): + self.myClose( + _("Sorry, Neoboot can be installed or upgraded only when booted from Flash")) + self.close() + else: + if answer is True: + if fileExists("/usr/bin/fullwget"): + os.system( + "cd /tmp; fullwget --no-check-certificate https://raw.githubusercontent.com/gutosie/neoboot/master/NeoBoot_Stable.tar.gz" + ) + if not fileExists("/tmp/NeoBoot_Stable.tar.gz"): + if fileExists("/usr/bin/curl"): + os.system( + "sync; cd /tmp; curl -O --ftp-ssl -k https://raw.githubusercontent.com/gutosie/neoboot/master/NeoBoot_Stable.tar.gz" + ) + if not fileExists("/tmp/NeoBoot_Stable.tar.gz"): + if fileExists("/usr/bin/wget"): + os.system( + "cd /tmp;rm ./*.zip; wget --no-check-certificate https://raw.githubusercontent.com/gutosie/neoboot/master/NeoBoot_Stable.tar.gz" + ) + if not fileExists("/tmp/NeoBoot_Stable.tar.gz"): + self.session.open( + MessageBox, + _("Unfortunately, at the moment not found an update, try again later."), + MessageBox.TYPE_INFO, + 10, + ) + if fileExists("/tmp/NeoBoot_Stable.tar.gz"): + cmd2 = "tar -czf /tmp/NEOBootLastcOPY.tar.gz /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot; sleep 2; rm -r /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot;sleep 2; /bin/tar -xzvf /tmp/NeoBoot_Stable.tar.gz -C /" + system(cmd2) + self.session.open( + MessageBox, + _("The plug-in has been successfully installed."), + MessageBox.TYPE_INFO, + 5, + ) + self.close() + else: + self.session.open( + MessageBox, + _("The plug-in not installed."), + MessageBox.TYPE_INFO, + 5, + ) + self.close() + + +################################################################### + def delete(self): message = _( "Are you sure you want to completely remove NeoBoota of your image?\n\nIf you choose so all directories NeoBoota will be removed.\nA restore the original image settings Flash."