Changeset 2937 for lliurex-up


Ignore:
Timestamp:
Nov 28, 2016, 1:03:12 PM (3 years ago)
Author:
jrpelegrina
Message:

Wip in gui. Improve mirror conexion and create log

Location:
lliurex-up/trunk/fuentes/lliurex-up-gui
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • lliurex-up/trunk/fuentes/lliurex-up-gui/LliurexUpConnect.py

    r2931 r2937  
    55import socket
    66import threading
     7import datetime
     8from math import pi
    79
    810import LliurexUpCore
     
    2022                GObject.threads_init()
    2123                self.status=True               
     24                log_msg="LLIUREX-UP STARTING AT: " + datetime.datetime.today().strftime("%d/%m/%y %H:%M:%S")
     25                self.log(log_msg)
    2226
    2327               
     28        def get_flavour_init(self):
     29
     30                self.init_flavours = [ x.strip() for x in self.llxUpCore.n4d.lliurex_version('','LliurexVersion','-v')[1].split(',') ]
     31                log_msg="Initial flavour: "
     32                for line in self.init_flavours:
     33                        log_msg=log_msg + " " + line
     34
     35                self.log(log_msg)       
     36                return  self.init_flavours
     37
    2438        def canConnectToLliurexNet(self):
    2539                try:
     
    3751                        is_lliurexup_updated=self.llxUpCore.isLliurexUpIsUpdated()
    3852                        print is_lliurexup_updated
    39 
     53                        log_msg="Checking lliurex-up. Is lliurex-up updated: "+ str(is_lliurexup_updated)
     54                        self.log(log_msg)
    4055                        return is_lliurexup_updated
    4156               
    42                 except:
     57                except Exception as e:
     58                        log_msg="Checking lliurex-up. Error: " + str(e)
     59                        self.log(log_msg)
    4360                        return True
    4461
     
    4764                try:
    4865                        is_lliurexup_installed=self.llxUpCore.installLliurexUp()
     66                        log_msg="Installing lliurex-up: " + str(is_lliurexup_installed)
     67                        self.log(log_msg)
    4968                        return is_lliurexup_installed
    5069
    51                 except:
     70                except Exception as e:
     71                        log_msg="Installing lliurex-up. Error: " + str(e)
     72                        self.log(log_msg)
    5273                        return True
    5374
     
    6081                       
    6182                        if is_mirror_updated['action']=='update':
     83                                log_msg="Checking mirror. Is mirror update: False"
     84                                self.log(log_msg)
    6285                                return False
    6386                        else:
     87                                log_msg="Checking mirror. Is mirror update: True"
     88                                self.log(log_msg)
    6489                                return True
    6590               
    66                 except:
     91                except Exception as e:
     92                        log_msg="Checking mirror. Error: " + str(e)
     93                        self.log(log_msg)
    6794                        return True     
    6895
    6996        def lliurexMirrorIsRunning(self):
     97
    7098                try:
    7199                        is_lliurexmirror_running=self.llxUpCore.lliurexMirrorIsRunning()
    72100                        return is_lliurexmirror_running
    73101
    74                 except:
    75                         return False   
     102                except Exception as e:
     103                        log_msg="Updating mirror. Error: " + str(e)
     104                        self.log(log_msg)
     105                        return False
     106
    76107
    77108        def getPercentageLliurexMirror(self):
     
    100131                except:
    101132                        return packages_parse
     133
     134       
     135        def log(self,msg):
     136                log_file="/var/log/lliurex-up.log"
     137                f=open(log_file,"a+")
     138                f.write(msg + '\n')
     139                f.close()               
  • lliurex-up/trunk/fuentes/lliurex-up-gui/lliurex-up.py

    r2931 r2937  
    1616
    1717import commands
     18import datetime
     19from math import pi
     20
    1821import LliurexUpConnect
    19 
    2022
    2123import signal
     
    4244                #self.parse_desktop(desktop_file)
    4345                #self.parse_changelog(changelog_file)
    44                 #self.parse_installed_icon(CACHED_ICON)
     46                self.parse_installed_icon(CACHED_ICON)
    4547
    4648        #def__init__
     
    9193                self.check_root()
    9294                self.llxup_connect=LliurexUpConnect.LliurexUpConnect()
     95                self.initial_flavour=self.llxup_connect.get_flavour_init()
    9396                self.start_gui()
    9497
     
    203206
    204207                #self.packages_store=Gtk.ListStore(str,str,str,GdkPixbuf.Pixbuf)
    205                 self.packages_store=Gtk.ListStore(str,str)
     208                self.packages_store=Gtk.ListStore(str,str,GdkPixbuf.Pixbuf)
    206209                self.packages_tv.set_model(self.packages_store)
    207210                # column=Gtk.TreeViewColumn("")
     
    231234
    232235
    233                 # done_icon=Gtk.Image()
    234                 # done_icon.set_from_file(CACHED_ICON)
    235                 # pixbuf=done_icon.get_pixbuf()
    236                 # column=Gtk.TreeViewColumn("Installed")
    237                 # cell=Gtk.CellRendererPixbuf()
    238                 # column.pack_start(cell,True)
    239                 # column.add_attribute(cell,"pixbuf",3)
    240                 # self.packages_tv.append_column(column)
     236                done_icon=Gtk.Image()
     237                done_icon.set_from_file(CACHED_ICON)
     238                pixbuf=done_icon.get_pixbuf()
     239                column=Gtk.TreeViewColumn("Installed")
     240                cell=Gtk.CellRendererPixbuf()
     241                column.pack_start(cell,True)
     242                column.add_attribute(cell,"pixbuf",2)
     243                self.packages_tv.append_column(column)
    241244               
    242245                # self.changelog_textview=builder.get_object("changelog_textview")
     
    258261                self.no_button_box.hide()
    259262
    260                 #self.pbar_label.show()
     263                self.pbar_label.show()
    261264                self.pbar.show()
    262265               
     
    400403                        font: Roboto 11;
    401404                }
     405
     406                #ERROR_FONT {
     407                        color: #CC0000;
     408                        font: Roboto 11;
     409                }
    402410               
    403411                #DISABLED_BUTTON{
     
    435443                self.update_button_label.set_name("UPDATE_BUTTON_LABEL")
    436444                self.update_button_box.set_name("UPDATE_BUTTON_COLOR")
    437                 self.terminal_label.set_name("LABEL_OPTION")
     445                self.terminal_label.set_name("CHANGELOG_FONT")
    438446
    439447
     
    482490                               
    483491                                if      self.check_mirror_t.done:
     492                                        is_mirror_running=self.llxup_connect.lliurexMirrorIsRunning()
    484493
    485494                                        if not self.is_mirror_updated:
    486                                                 print "Asking if mirror will be update"
    487 
    488                                                 self.yes_button_box.show()
    489                                                 self.no_button_box.show()
    490                                                 self.pbar.hide()
    491                                                 self.spinner.start()
    492                                                 msg_gather="<span><b>"+_("Your mirror is not update.Do you want to update it?")+"</b></span>"
    493                                                 self.gather_label.set_markup(msg_gather)
    494                                                 #GLib.timeout_add(100,self.pulsate_wait_response)
    495                                                 return False
    496                                         else:
    497                                                 print "Nothing to do with mirror"
    498                                                 GLib.timeout_add(100,self.pulsate_get_info)
    499                                                 print "Gather info"
    500                                                 return False
     495                                                if not is_mirror_running:
     496                                                        print "Asking if mirror will be update"
     497                                                        self.yes_button_box.show()
     498                                                        self.no_button_box.show()
     499                                                        self.pbar.hide()
     500                                                        self.spinner.stop()
     501                                                        msg_gather="<span><b>"+_("Your mirror is not update.Do you want to update it?")+"</b></span>"
     502                                                        self.gather_label.set_markup(msg_gather)
     503                                                        #GLib.timeout_add(100,self.pulsate_wait_response)
     504                                                        return False
     505
     506                                                else:
     507                                                        self.mirror_running_msg()
     508                                                        return False
     509
     510                                        else:   
     511                                                if is_mirror_running:
     512                                                        self.mirror_running_msg()
     513                                                        return False
     514                                                else:   
     515                                                        print "Nothing to do with mirror"
     516                                                        GLib.timeout_add(100,self.pulsate_get_info)
     517                                                        print "Gather info"
     518                                                        return False
    501519                                               
    502520
     
    509527                                       
    510528                if self.check_mirror_t.launched:
    511                         if self.check_mirror_t.is_alive():
     529                        if self.check_mirror_t.is_alive():
    512530                                return True
    513                
    514                                
     531
     532               
     533        #def pulsate_checksystem       
    515534
    516535        def reboot_me(self):
     536
    517537                time.sleep(5)
    518538                os.execl(sys.executable, sys.executable, *sys.argv)     
    519539
     540        #def reboot_me 
    520541
    521542        def check_lliurexup_version(self):
     543
    522544                time.sleep(2)   
    523545                self.is_lliurexup_updated=self.llxup_connect.isLliurexUpIsUpdated()
    524546                self.check_lliurexup_t.done=True
    525547               
     548        #def check_lliurexup_version   
    526549               
    527550        def install_lliurexup(self):
     
    531554                self.install_lliurexup_t.done=True
    532555
     556        #def install_lliurexup 
     557
    533558               
    534559        def check_mirror(self):
     
    537562                self.check_mirror_t.done=True
    538563       
     564        #def check_mirror       
    539565
    540566        def no_button_clicked(self,widget,event):
    541567               
    542568                #self.response=0
    543                 self.spinner.stop()
    544569                self.pbar.show()       
    545570                print "Gather info"
     
    547572                self.yes_button_box.hide()
    548573                self.no_button_box.hide()
    549 
     574                log_msg="Update lliurex-mirror: No"
     575                self.llxup_connect.log(log_msg)
     576
     577        #def def no_button_clicked
     578               
    550579        def yes_button_clicked(self,widget,event):
    551580       
     
    558587                self.yes_button_box.hide()
    559588                self.no_button_box.hide()
    560                 msg_gather="<span><b>"+_("Updating mirror. The update may take several minutes")+"</b></span>"
    561                 self.gather_label.set_markup(msg_gather)
     589                #msg_gather="<span><b>"+_("Mirror is being updated. The process may take several minutes")+"</b></span>"
     590                #self.gather_label.set_markup(msg_gather)
    562591                self.execute_lliurexmirror_t.start()
    563                 GLib.timeout_add(1000,self.pulsate_updating_mirror)
    564                        
    565         #def no_button_clicked         
     592                self.mirror_running_msg()
     593                #GLib.timeout_add(1000,self.pulsate_updating_mirror)
     594                log_msg="Update lliurex-mirror: Yes"
     595                print log_msg
     596                self.llxup_connect.log(log_msg)
     597                       
     598        #def yes_button_clicked         
    566599
    567600        #def check_mirror
     
    592625        #       return True
    593626
     627        #def yes_button_clicked
     628
    594629        def pulsate_updating_mirror(self):
    595630
    596                 is_mirror_running=self.llxup_connect.lliurexMirrorIsRunning()
    597 
    598                 if is_mirror_running or self.execute_lliurexmirror_t.is_alive():
     631                self.is_mirror_running=self.llxup_connect.lliurexMirrorIsRunning()
     632
     633                if self.is_mirror_running or self.execute_lliurexmirror_t.is_alive():
    599634                        mirror_percentage=self.llxup_connect.getPercentageLliurexMirror()
    600635                        self.updated_percentage(mirror_percentage)
     
    604639                        self.spinner.stop()
    605640                        self.pbar_label.hide()
    606                         GLib.timeout_add(1000,self.pulsate_get_info)
     641                        GLib.timeout_add(100,self.pulsate_get_info)
    607642                        return False   
    608643
     644        #def pulsate_updating_mirro             
    609645
    610646        def execute_lliurexmirror(self):
     647               
    611648                commands.getoutput('/usr/sbin/lliurex-mirror-gui')
    612649
     650        #def def execute_lliurexmirror 
     651
     652        def mirror_running_msg(self):
     653
     654                self.spinner.start()
     655                msg_gather="<span><b>"+_("Mirror is being updated. The process may take several minutes")+"</b></span>"
     656                self.gather_label.set_markup(msg_gather)
     657                GLib.timeout_add(1000,self.pulsate_updating_mirror)
     658
     659        #def mirror_running_msg
     660
     661
    613662        def pulsate_get_info(self):
    614663
    615664                self.pbar.pulse()
     665
    616666                if not self.gather_packages_t.is_alive() and not self.gather_packages_t.launched:
    617667                        msg_gather="<span><b>"+_("Checking for new updates")+"</b></span>"
     
    636686                                self.pbar.hide()
    637687                                self.pbar_label.hide()
     688                                self.spinner.stop()
    638689                                self.stack.set_transition_type(Gtk.StackTransitionType.SLIDE_LEFT)
    639690                                self.stack.set_visible_child_name("update")     
     
    646697                                return True
    647698
     699        #def pulsate_get_info                   
    648700
    649701        def gather_packages(self):
     702
    650703                self.packages=self.llxup_connect.getPackagesToUpdate()
    651704                self.gather_packages_t.done=True
     
    661714                self.number_pkg="15"
    662715                self.size_update="100 Mb"
    663                
     716
    664717                msg_version_available=_("Version available: ")+"<span foreground='#3366cc'><b>"+self.version_available+"</b></span>"
    665718                msg_version_update=_("Version to update: ")+"<span foreground='#3366cc'><b>"+self.version_update+"</b></span>"
     
    673726                self.size_update_label.set_markup(msg_size)
    674727               
    675         #def get_update_info   
     728        #def get_update_summary
    676729               
    677730        def updated_percentage(self,completed):
    678731
    679732                percentage=completed/100.0
     733
    680734                self.pbar.set_fraction(percentage)
    681735               
     
    692746                for package in self.package_list:
    693747                        #self.packages_store.append((package.icon,"<span font='Roboto'><b>"+package.name+"</b></span>\n"+"<span font='Roboto' size='small'>"+package.version+"</span>","<span font='Roboto' size='large'><b>"+package.size+"</b></span>",package.installed))
    694                         self.packages_store.append(("<span font='Roboto'><b>"+package.name+"</b></span>\n"+"<span font='Roboto' size='small'>"+package.version+"</span>","<span font='Roboto' size='small'>"+package.size+"</span>"))
     748                        self.packages_store.append(("<span font='Roboto'><b>"+package.name+"</b></span>\n"+"<span font='Roboto' size='small'>"+package.version+"</span>","<span font='Roboto' size='large'><b>"+package.size+"</b></span>",package.installed))
    695749                       
    696750                #print len(self.packages_store)
     
    763817                        self.terminal_scrolled.show()
    764818                        self.terminal_label.show()
    765                         msg_terminal=_("Update process details")
    766                         self.terminal_label.set_markup(msg_terminal)
     819                        self.msg_terminal=_("Update process details")
     820                        self.terminal_label.set_markup(self.msg_terminal)
    767821                        self.update_process_launched=True
    768822               
    769        
    770         #def install_packages
     823                else:
     824                        self.terminal_label.set_name("ERROR_FONT")
     825                        msg_updgrade_running=_("The update process is running. Wait a moment please")
     826                        self.terminal_label.set_markup(msg_updgrade_running)
     827
     828       
     829        #def upgrade_process
    771830
    772831        def pulsate_pbar(self):
     
    786845        #def view_packages_clicked     
    787846       
    788 
    789847
    790848        def arrow_clicked(self,widget,event):
     
    811869
    812870        def mouse_over_yes(self,widget,event):
     871
    813872                self.yes_button_box.set_name("BUTTON_OVER_COLOR")
    814873
     874        #def mouse_over_yes     
     875
    815876        def mouse_exit_yes(self,widget,event):
     877
    816878                self.yes_button_box.set_name("BUTTON_COLOR")
    817879
     880        #def mouse_exit_yes     
     881
    818882        def mouse_over_no(self,widget,event):
     883
    819884                self.no_button_box.set_name("BUTTON_OVER_COLOR")
    820885
     886        #def mouse_over_no     
     887
    821888        def mouse_exit_no(self,widget,event):
     889
    822890                self.no_button_box.set_name("BUTTON_COLOR")
     891
     892        #def mouse_exit_no     
    823893                       
    824894        def mouse_over_view_packages(self,widget,event):
     895
    825896                self.view_packages_button_box.set_name("BUTTON_OVER_COLOR")     
    826897
     898        #def mouse_over_view_packages   
     899
    827900        def mouse_exit_view_packages(self,widget,event):
     901
    828902                self.view_packages_button_box.set_name("BUTTON_COLOR")
     903
     904        #def mouse_exit_view_packages   
    829905                       
    830906        def mouse_over_update_button(self,widget,event):
     
    835911                        self.update_button_box.set_name("UPDATE_OVER_COLOR")
    836912
     913        #def mouse_over_update_button
     914                       
    837915        def mouse_exit_update_button(self,widget,event):
     916
    838917                if self.update_process_launched:
    839918                        self.update_button_box.set_name("UPDATE_BUTTON_LAUNCHED_COLOR")
     919                        self.terminal_label.set_name("CHANGELOG_FONT")
     920                        self.terminal_label.set_markup(self.msg_terminal)
    840921                else:
    841922                        self.update_button_box.set_name("UPDATE_BUTTON_COLOR")
    842923
     924        #def mouse_exit_update_button
     925                       
    843926        def mouse_over_cancel(self,widget,event):
     927
    844928                self.cancel_button_box.set_name("BUTTON_OVER_COLOR")   
    845929
     930        #def mouse_over_cancel 
     931
    846932        def mouse_exit_cancel(self,widget,event):
     933
    847934                self.cancel_button_box.set_name("BUTTON_COLOR")
    848935
    849                
     936        #def mouse_exit_cancel
     937
    850938        def mouse_over_return_arrow(self,widget,event):
     939
    851940                self.return_arrow_box.set_name("BUTTON_OVER_COLOR")     
    852941
     942        #def mouse_over_return_arrow   
     943
    853944        def mouse_exit_return_arrow(self,widget,event):
     945
    854946                self.return_arrow_box.set_name("BUTTON_COLOR")         
    855947
    856 
     948        #def mouse_exit_return_arrow   
    857949
    858950        def quit(self,widget,event=None):
     
    860952                Gtk.main_quit()
    861953
     954        #def quit       
     955
    862956#class LliurexMirror
    863957
Note: See TracChangeset for help on using the changeset viewer.