Changeset 3094 for lliurex-up/trunk


Ignore:
Timestamp:
Dec 16, 2016, 12:47:55 PM (3 years ago)
Author:
jrpelegrina
Message:

WIP in new gui. Add some features

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

Legend:

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

    r3035 r3094  
    1919
    2020        def __init__(self):
     21
    2122                self.llxUpCore=LliurexUpCore.LliurexUpCore()
    2223                GObject.threads_init()
    2324                log_msg="------------------------------------------\n"+"LLIUREX-UP STARTING AT: " + datetime.datetime.today().strftime("%d/%m/%y %H:%M:%S") +"\n------------------------------------------"
    2425                self.log(log_msg)
     26                #self.saveTargetMetapackagePath=os.path.join(self.llxUpCore.processPath,"targetMetapackage")
     27                self.preactions_token=os.path.join(self.llxUpCore.processPath,'preactions_token')
     28                self.upgrade_token=os.path.join(self.llxUpCore.processPath,'upgrade_token')
     29                self.installflavour_token=os.path.join(self.llxUpCore.processPath,'installflavour_token')
     30                self.postactions_token=os.path.join(self.llxUpCore.processPath,'postactions_token')
     31
    2532                self.checkInitialFlavour()
    2633
     
    3138        def checkInitialFlavour(self):
    3239
    33                  self.targetMetapackage=None
    34 
    35                  try:
     40                self.targetMetapackage=None
     41
     42                try:
    3643                        self.targetMetapackage=self.llxUpCore.checkFlavour()
    3744                        log_msg="Initial check metapackage. Metapackage to install: " + str(self.targetMetapackage)
    3845                        self.log(log_msg)
     46                       
     47                        #if self.targetMetapackage !=None:
     48                        self.metapackageRef=self.llxUpCore.metapackageRef
     49                        if len(self.metapackageRef)==0:
     50                                self.llxUpCore.getTargetMetapackage()
     51                        self.metapackageRef=sorted(self.metapackageRef)
     52                         
    3953                        self.previousFlavours=self.llxUpCore.previuosFlavours
    40 
    4154                        if len(self.previousFlavours)==0:
    4255                                self.llxUpCore.getPreviuosFlavours()
     
    4558                        self.log(log_msg)
    4659                 
    47                  except Exception as e:
     60                except Exception as e:
    4861                        log_msg="Initial check metapackage. Error: " + str(e)
    4962                        self.log(log_msg)
    5063
    51                  return self.targetMetapackage
     64                return self.targetMetapackage
    5265
    5366        #def checkFlavoour
    5467
     68
     69        # def saveTargetMetapackage(self):
     70
     71        #       try:
     72        #               aux=open(self.saveTargetMetapackagePath,'w')
     73        #               x=self.targetMetapackage.split("-")[2]
     74        #               aux.write(x+"\n")
     75        #               x="edu"
     76        #               aux.write(x+"\n")
     77        #               aux.close()
     78
     79        #       except Exception as e:
     80        #               print str(e)   
     81
    5582        def requiresInstallFlavour(self):
    5683               
     
    5885               
    5986                self.flavours=self.llxUpCore.flavours
    60                 log_msg="Get update flavours " + str(self.flavours)
     87                log_msg="Get update flavours: " + str(self.flavours)
    6188                self.log(log_msg)
    6289
    6390                if not 'None' in self.previousFlavours:
    6491                        if self.previousFlavours !=self.flavours:
    65                                 log_msg="Requires Install Flavour: Yes"
     92                                flavourToInstall=self.parseFlavourToInstall(self.previousFlavours)
     93                                log_msg="Requires Install this Flavour: " + str(flavourToInstall)
    6694                                self.log(log_msg)
    6795                               
     
    7098                                self.log(log_msg)       
    7199                                                       
     100                else:
     101                        log_msg="Flavours reference: " + str(self.metapackageRef)
     102                        self.log(log_msg)
     103                        if self.metapackageRef != self.flavours:
     104                                flavourToInstall=self.parseFlavourToInstall(self.metapackageRef)
     105
     106                                log_msg="Requires Install this Flavour: " + str(flavourToInstall)
     107                                self.log(log_msg)
     108                        else:
     109                                log_msg="Requires Install Flavour: No"
     110                                self.log(log_msg)
    72111
    73112                return flavourToInstall                                         
    74113                       
     114
     115        def parseFlavourToInstall(self,flavours):
     116       
     117                parse_flavour=""
     118
     119                for item in flavours:
     120                        if item != "edu":
     121                                parse_flavour=parse_flavour + " " + "lliurex-meta-" + item
     122
     123                return parse_flavour                   
    75124
    76125        def canConnectToLliurexNet(self):
     
    192241                return self.lliurexVersionLocal
    193242
     243
    194244        def getLliurexVersionNet(self):
    195245               
     
    210260        def getPackagesToUpdate(self):
    211261               
     262                ref_flavour=["lliurex-meta-server","lliurex-meta-client", "lliurex-meta-desktop", "lliurex-meta-music", "lliurex-meta-pyme", "lliurex-meta-infantil"]
     263                self.incorrect_flavours=[]
    212264                try:
    213265                        packages_parse=[]
     
    217269                                        version=packages[item]
    218270                                        packages_parse.append(item+";"+version['candidate']+";"+'20Mb')
     271                                        if item in ref_flavour:
     272                                                self.incorrect_flavours.append(item)
    219273
    220274                        log_msg="Get packages to update: OK"
     
    228282
    229283
     284        def checkIncorrectFlavours(self):
     285               
     286                count=0
     287
     288                if len(self.incorrect_flavours)>0:
     289
     290                        for item in self.incorrect_flavours:
     291                                if self.targetMetapackage != None:
     292                                        print self.targetMetapackage
     293                                        if item != self.targetMetapackage:
     294                                                count=count+1
     295                                else:
     296                                        meta=item.split("-")[2]
     297                                        if 'None' in self.previousFlavours:
     298                                                if not meta in self.metapackageRef:
     299                                                        count=count+1
     300                                        else:           
     301                                                if not meta in self.previousFlavours:
     302                                                        count=count+1
     303
     304                if count>0:
     305                        log_msg="Checking incorrect flavours. Others flavours detected: " + str(self.incorrect_flavours)
     306                        self.log(log_msg)
     307                        return True
     308
     309                else:
     310                        log_msg="Checking incorrect flavours. Others flavours no detected"
     311                        self.log(log_msg)
     312                        return False
     313
     314
     315        def preActionsScript(self):
     316
     317                try:
     318                        self.preActions=self.llxUpCore.preActionsScript()
     319                        self.preActions=self.preActions + ' ;touch ' + self.preactions_token + '\n'
     320                        return self.preActions
     321
     322                except Exception as e:
     323                        print str(e)   
     324
     325        def distUpgradeProcess(self):
     326               
     327                self.distupgrade='apt-get dist-upgrade -sV ;touch ' + self.upgrade_token + '\n'
     328       
     329                return self.distupgrade
     330
     331
     332
    230333        def checkFinalFlavour(self):
    231334               
     
    236339                        log_msg="Final check metapackage. Metapackage to install: " + str(self.targetMetapackage)
    237340                        self.log(log_msg)
    238 
    239                         if self.targetMetapackage == None:
     341                        if self.targetMetapackage==None:
    240342                                flavourToInstall=self.requiresInstallFlavour()
    241                         else:
    242                                 flavourToInstall=self.targetMetapackage
     343                        else:
     344                                flavourToInstall=self.targetMetapackage         
     345
     346                except Exception as e:
     347                        log_msg="Final check metapackage. Error: " + str(e)
     348                        self.log(log_msg)
     349
     350                return flavourToInstall         
    243351       
    244 
    245                 except Exception as e:
    246                         log_msg="Final check metapackage. Error: " + str(e)
    247                         self.log(log_msg)
    248 
    249                 return flavourToInstall                         
     352        def installFinalFlavour(self,flavourToInstall):
     353
     354                self.command='apt-get install ' + flavourToInstall + ' -sV ;touch ' + self.installflavour_token + '\n'
     355                return self.command
     356
     357        def postActionsScript(self):
     358
     359                try:
     360                        self.postActions=self.llxUpCore.postActionsScript()
     361                        self.postActions=self.postActions + ' ;touch ' + self.postactions_token + '\n'
     362                        return self.postActions
     363
     364                except Exception as e:
     365                        print str(e)   
     366
     367
     368        def cleanEnvironment(self):
     369               
     370                try:
     371                        self.llxUpCore.cleanEnvironment()
     372                        log_msg="Clean environment: OK"
     373                        self.log(log_msg)
     374
     375                except Exception as e:
     376                        log_msg="Clean environment. Error :" + str(e)
     377                        self.log(log_msg)                               
    250378
    251379        #def getPackagesToUpdate
  • lliurex-up/trunk/fuentes/lliurex-up-gui/LliurexUpCore.py

    r3035 r3094  
    1515                self.changelogsPath = os.path.join(self.processPath,'changelogs')
    1616                self.processSourceslist = os.path.join(self.processPath,'sourceslist')
     17                self.targetMetapackagePath=os.path.join(self.processPath,"targetMetapackage")
    1718                self.previousflavourspath = os.path.join(self.processPath,'previousflavours')
    18 
    1919                self.preActionsPath = '/usr/share/lliurex-up/preActions'
    2020                self.postActionsPath = '/usr/share/lliurex-up/PostActions'
     
    2222                self.n4d = xmlrpclib.ServerProxy('https://localhost:9779')
    2323                self.haveLliurexMirror = False
     24                self.metapackageRef=[]
    2425                self.previuosFlavours = []
     26                self.getTargetMetapackage()
    2527                self.flavours = []
    2628                self.getPreviuosFlavours()
     
    3840                        aux.close()
    3941
     42
     43        def getTargetMetapackage(self):
     44
     45                if os.path.exists(self.targetMetapackagePath):
     46                        aux = open(self.targetMetapackagePath,'r')
     47                        lines = aux.readlines()
     48                        for x in lines:
     49                                self.metapackageRef.append(x.strip())
     50                        aux.close()             
     51
     52        def saveTargetMetapackage(self,targetMetapackage):
     53
     54                aux=open(self.targetMetapackagePath,'w')
     55                x=targetMetapackage.split("-")[2]
     56                aux.write(x+"\n")
     57                x="edu"
     58                aux.write(x+"\n")
     59                aux.close()
     60               
    4061
    4162        def updateFlavoursList(self):
     
    182203                                                targetMetapackage = x[2:]
    183204                                                break
     205
     206                if targetMetapackage !=None:
     207                        print targetMetapackage
     208                        self.saveTargetMetapackage(targetMetapackage)                           
    184209                return targetMetapackage
    185210
  • lliurex-up/trunk/fuentes/lliurex-up-gui/lliurex-up.py

    r3035 r3094  
    2828
    2929
    30 RSRC_DIR="rsrc/"
    31 CACHED_ICON="rsrc/cached.png"
    32 DONE_ICON="rsrc/done.png"
    33 ERROR_ICON="rsrc/error.png"
    34 TMP_FILE="/tmp/upgrade.txt"
     30BASE_DIR="/home/lliurex/svn/lliurex-up/trunk/fuentes/lliurex-up-gui/"
     31GLADE_FILE=BASE_DIR+"rsrc/lliurex-up.ui"
     32CACHED_ICON=BASE_DIR+"rsrc/cached.png"
     33DONE_ICON=BASE_DIR+"/done.png"
     34ERROR_ICON=BASE_DIR+"rsrc/error.png"
    3535
    3636class Package:
     
    122122                builder=Gtk.Builder()
    123123               
    124                 glade_path=RSRC_DIR+"lliurex-up.ui"
     124                glade_path=GLADE_FILE
    125125                builder.add_from_file(glade_path)
    126126
     
    209209                font_terminal = Pango.FontDescription("monospace normal 10")
    210210                self.vterminal.set_font(font_terminal)
     211                self.vterminal.set_scrollback_lines(-1)
    211212                self.terminal_scrolled.add(self.vterminal)
    212213               
     
    297298                self.get_lliurexversionlocal_t=threading.Thread(target=self.get_lliurexversionlocal)
    298299                self.get_lliurexversionnet_t=threading.Thread(target=self.get_lliurexversionnet)
    299                 self.checkFlavourToInstall_t=threading.Thread(target=self.checkFlavourToInstall)
     300                self.checkInitialFlavourToInstall_t=threading.Thread(target=self.checkInitialFlavourToInstall)
    300301                self.gather_packages_t=threading.Thread(target=self.gather_packages)
     302                self.preactions_process_t=threading.Thread(target=self.preactions_process)
    301303                self.update_process_t=threading.Thread(target=self.update_process)
     304                self.checkFinalFlavourToInstall_t=threading.Thread(target=self.checkFinalFlavourToInstall)
     305
     306                self.postactions_process_t=threading.Thread(target=self.postactions_process)
    302307
    303308                self.check_lliurexup_t.daemon=True
     
    308313                self.get_lliurexversionlocal_t.daemon=True
    309314                self.get_lliurexversionnet_t.daemon=True
    310                 self.checkFlavourToInstall_t.daemon=True
     315                self.checkInitialFlavourToInstall_t.daemon=True
    311316
    312317                self.gather_packages_t.daemon=True
     318                self.preactions_process_t.daemon=True
    313319                self.update_process_t.daemon=True
     320                self.checkFinalFlavourToInstall_t.daemon=True
     321                self.postactions_process_t.daemon=True
    314322
    315323                self.check_lliurexup_t.done=False
     
    320328                self.get_lliurexversionlocal_t.done=False
    321329                self.get_lliurexversionnet_t.done=False
    322                 self.checkFlavourToInstall_t.done=False
     330                self.checkInitialFlavourToInstall_t.done=False
    323331
    324332                self.gather_packages_t.done=False
    325 
     333                self.preactions_process_t.done=False
    326334                self.update_process_t.done=False
     335                self.postactions_process_t.done=False
     336                self.checkFinalFlavourToInstall_t.done=False
    327337
    328338                self.check_lliurexup_t.launched=False
     
    333343                self.get_lliurexversionlocal_t.launched=False
    334344                self.get_lliurexversionnet_t.launched=False
    335                 self.checkFlavourToInstall_t.launched=False
     345                self.checkInitialFlavourToInstall_t.launched=False
    336346
    337347                self.gather_packages_t.launched=False
     348                self.preactions_process_t.launched=False
    338349                self.update_process_t.launched=False
     350                self.checkFinalFlavourToInstall_t.launched=False
     351                self.postactions_process_t.launched=False
    339352                self.spinner.start()
    340353               
     
    342355                self.max_seconds=5.0
    343356                self.current_second=0
    344                 self.gather_process=9
     357                self.number_process=7
    345358
    346359                GObject.threads_init()
     
    417430                }
    418431
     432                #UPDATE_BUTTON_END_COLOR {
     433                        background-image:-gtk-gradient (linear, left top, left bottom, from (#546e7a), to (#546e7a));;
     434
     435                }
    419436                               
    420437                #GATHER_ICON_COLOR {
     
    501518                        self.check_lliurexup_t.start()
    502519                        self.check_lliurexup_t.launched=True
    503                         self.show_number_process_executing(1)
     520                        self.show_number_process_executing(1,"")
    504521
    505522                if  self.check_lliurexup_t.done:
     
    511528                                        self.install_lliurexup_t.start()
    512529                                        self.install_lliurexup_t.launched=True
    513                                         self.show_number_process_executing(2)
     530                                        self.show_number_process_executing(2,"")
    514531
    515532                                else:
     
    534551                                        self.check_mirror_t.start()
    535552                                        self.check_mirror_t.launched=True
    536                                         self.show_number_process_executing(3)
     553                                        self.show_number_process_executing(3,"")
    537554
    538555
     
    607624        def check_lliurexup_version(self):
    608625
    609                 time.sleep(3)   
     626                time.sleep(5)   
    610627                self.is_lliurexup_updated=self.llxup_connect.isLliurexUpIsUpdated()
    611628                self.check_lliurexup_t.done=True
     
    730747                if not self.get_lliurexversionlocal_t.launched:
    731748                        print "[Lliurex-up]: Checking LliurexVersion from local repository "
    732                         msg_gather="<span><b>"+_("Checking version to update")+"</b></span>"
     749                        msg_gather="<span><b>"+_("Checking new version to update")+"</b></span>"
    733750                        self.gather_label.set_markup(msg_gather)
    734751                        self.get_lliurexversionlocal_t.start()
    735752                        self.get_lliurexversionlocal_t.launched=True
    736                         self.show_number_process_executing(4)
     753                        self.show_number_process_executing(4,"")
    737754
    738755
     
    741758                        if not self.get_lliurexversionnet_t.is_alive() and not self.get_lliurexversionnet_t.launched:
    742759                                print "[Lliurex-up]: Checking LliurexVersion from Lliurex net"
    743                                 msg_gather="<span><b>"+_("Checking version available")+"</b></span>"
     760                                msg_gather="<span><b>"+_("Checking new version available")+"</b></span>"
    744761                                self.gather_label.set_markup(msg_gather)
    745762                                self.get_lliurexversionnet_t.start()   
    746763                                self.get_lliurexversionnet_t.launched=True
    747                                 self.show_number_process_executing(5)
     764                                self.show_number_process_executing(5,"")
    748765
    749766
     
    751768                        if self.get_lliurexversionnet_t.done:
    752769
    753                                 if not self.checkFlavourToInstall_t.is_alive() and not self.checkFlavourToInstall_t.launched:
     770                                if not self.checkInitialFlavourToInstall_t.is_alive() and not self.checkInitialFlavourToInstall_t.launched:
    754771                                        print "[Lliurex-up]: Checking if installation of flavour is required"
    755772                                        msg_gather="<span><b>"+_("Checking if installation of flavour is required")+"</b></span>"
    756773                                        self.gather_label.set_markup(msg_gather)
    757                                         self.checkFlavourToInstall_t.start()
    758                                         self.checkFlavourToInstall_t.launched=True
    759                                         self.show_number_process_executing(6)
    760 
    761 
    762 
    763                                 if self.checkFlavourToInstall_t.done:
     774                                        self.checkInitialFlavourToInstall_t.start()
     775                                        self.checkInitialFlavourToInstall_t.launched=True
     776                                        self.show_number_process_executing(6,"")
     777
     778
     779
     780                                if self.checkInitialFlavourToInstall_t.done:
    764781
    765782                                        if not self.gather_packages_t.is_alive() and not self.gather_packages_t.launched:
     
    769786                                                self.gather_packages_t.start()
    770787                                                self.gather_packages_t.launched=True
    771                                                 self.show_number_process_executing(7)
     788                                                self.show_number_process_executing(7,"")
    772789
    773790
     
    778795                                                self.cancel_button_box.show()   
    779796
    780 
    781                                                 if len(self.packages)==0:
    782                                                         msg_gather="<span><b>"+_("Your system is update")+"</b></span>"
     797                                                if not self.incorrect_flavours:
     798                                                        if len(self.packages)==0:
     799                                                                msg_gather="<span><b>"+_("Your system is update")+"</b></span>"
     800                                                                self.gather_label.set_markup(msg_gather)
     801                                                                #self.pbar.hide()
     802                                                                print "[Lliurex-up]: Sytem update. Nothing to do"
     803                                                                return False
     804                                                        else:
     805                                                                print "[Lliurex-up]: System nor update"
     806
     807                                                                #self.requires_installing_metapackage()
     808                                                                self.parse_packages_updated()
     809                                                                self.populate_packages_tv()
     810                                                                self.get_update_summary()
     811                                                                self.stack.set_transition_type(Gtk.StackTransitionType.SLIDE_LEFT)
     812                                                                self.stack.set_visible_child_name("update")     
     813                                                                return False
     814                                                else:
     815                                                        self.gather_label.set_name("ERROR_FONT")
     816                                                        msg_gather="<span><b>"+_("Updated abort for incorrect flavours detected in update")+"</b></span>"
    783817                                                        self.gather_label.set_markup(msg_gather)
    784                                                         self.pbar.hide()
     818                                                        #self.pbar.hide()
    785819                                                        print "[Lliurex-up]: Sytem update. Nothing to do"
    786                                                         return False
    787                                                 else:
    788                                                         print "[Lliurex-up]: System nor update"
    789 
    790                                                         #self.requires_installing_metapackage()
    791                                                         self.parse_packages_updated()
    792                                                         self.populate_packages_tv()
    793                                                         self.get_update_summary()
    794                                                         self.stack.set_transition_type(Gtk.StackTransitionType.SLIDE_LEFT)
    795                                                         self.stack.set_visible_child_name("update")     
    796                                                         return False   
     820                                                        return False                                                   
    797821               
    798822
     
    805829                                return True                             
    806830
    807                 if self.checkFlavourToInstall_t.launched:
    808                         if self.checkFlavourToInstall_t.is_alive():
     831                if self.checkInitialFlavourToInstall_t.launched:
     832                        if self.checkInitialFlavourToInstall_t.is_alive():
    809833                                return True
    810834
     
    828852        #def get_lliurexversionlocal   
    829853       
    830         def checkFlavourToInstall(self):
     854        def checkInitialFlavourToInstall(self):
    831855
    832856                self.flavourToInstall=self.llxup_connect.targetMetapackage
     
    839863                                print "[Lliurex-up]: Installation of flavour is not required"
    840864               
    841                 self.checkFlavourToInstall_t.done=True 
     865                self.checkInitialFlavourToInstall_t.done=True   
    842866
    843867
     
    845869
    846870                self.packages=self.llxup_connect.getPackagesToUpdate()
     871                self.incorrect_flavours=self.llxup_connect.checkIncorrectFlavours()
    847872                self.gather_packages_t.done=True
    848873
     
    901926        #def updated_percentage
    902927               
    903         def show_number_process_executing(self, execprocess):
    904 
    905                 self.pbar.set_fraction(execprocess/8.0)
    906                 msg_pbar="Executing process: " + str(execprocess) + " of 7"
     928        def show_number_process_executing(self, execprocess, processname):
     929
     930                self.total_process=self.number_process+1.0
     931                self.pbar.set_fraction(execprocess/self.total_process)
     932                if processname =="":
     933                        msg_pbar="Executing process: " + str(execprocess) + " of " + str(self.number_process)
     934                else:
     935                        msg_pbar="Executing process: " + str(execprocess) + " of " + str(self.number_process) + ". " + processname
     936       
    907937                msg_pbar="<span><b>"+msg_pbar+"</b></span>"
    908938                self.pbar_label.set_markup(msg_pbar)
     
    947977        #def package_clicked                   
    948978
    949         def update_process(self):
    950                  
    951                 self.command='apt-get dist-upgrade -sV | tee '+ TMP_FILE + ';rm ' + TMP_FILE +'\n'
    952                 print self.command
    953                 length=len(self.command)
    954                 self.vterminal.feed_child(self.command, length)
    955 
    956         #def update_process             
    957                                
    958979        def upgrade_process(self,widget, event=None):
    959980
    960                 if not self.update_process_t.launched:
    961                         self.update_button_box.set_name("UPDATE_LAUNCHED_BUTTON_COLOR")
     981                self.number_process=4
     982                if not self.preactions_process_t.launched:
    962983
    963984                        self.pbar.show()
    964                         self.pbar.pulse()
     985                        #self.pbar.pulse()
    965986                        self.viewport.show()
    966987                        self.terminal_scrolled.show()
     
    968989                        self.msg_terminal=_("Update process details")
    969990                        self.terminal_label.set_markup(self.msg_terminal)
    970                         GLib.timeout_add(100,self.waiting_update)
    971                         self.update_process_t.start()
    972                         self.update_process_t.launched=True
     991                        GLib.timeout_add(100,self.dist_upgrade)
     992
     993                        # self.preactions_process_t.start()
     994                        # self.preactions_process_t.launched=True
    973995
    974996
    975997                else:
    976                         if not self.update_process_t.done:
     998                        if not self.postactions_process_t.done:
    977999                                self.terminal_label.set_name("ERROR_FONT")
    9781000                                msg_updgrade_running=_("The update process is running. Wait a moment please")
    9791001                                self.terminal_label.set_markup(msg_updgrade_running)
    9801002
    981        
    982         #def upgrade_process
    983 
    984         def waiting_update(self):
    985 
    986                 if os.path.exists(TMP_FILE):
    987                         return True
     1003
     1004        def dist_upgrade(self):
     1005
     1006
     1007                if not self.preactions_process_t.launched:
     1008                        print "[Lliurex-up]: Executing pre-actions"
     1009                        self.pbar_label.show()
     1010
     1011                        self.preactions_process_t.start()
     1012                        self.preactions_process_t.launched=True
     1013                        self.show_number_process_executing(1,"Pre-actions process")
     1014                        self.update_button_box.set_name("UPDATE_BUTTON_LAUNCHED_COLOR")
     1015
    9881016                else:
    989                         self.pbar.hide()
    990                         self.terminal_label.set_name("CHANGELOG_FONT")
    991                         msg_updgrade_running="<span><b>" + _("The system is now update") + "</b></span>"
    992                         self.terminal_label.set_markup(msg_updgrade_running)
    993                         self.checkFinalFlavour()
    994                         self.update_process_t.done=True
    995                         return False
    996 
    997                                        
     1017
     1018                        if self.preactions_process_t.done:
     1019                                if not self.update_process_t.is_alive() and not self.update_process_t.launched:
     1020                                        print "[Lliurex-up]: Executing dist-upgrade"
     1021                                        self.update_process_t.start()
     1022                                        self.update_process_t.launched=True
     1023                                        self.show_number_process_executing(2,"Dist-upgrade process")
     1024
     1025                               
     1026                                if self.update_process_t.done:
     1027                                        if not self.checkFinalFlavourToInstall_t.is_alive() and not self.checkFinalFlavourToInstall_t.launched:
     1028                                                print "[Lliurex-up]: Checking Final Flavour"
     1029                                                self.checkFinalFlavourToInstall_t.start()
     1030                                                self.checkFinalFlavourToInstall_t.launched=True
     1031                                                self.show_number_process_executing(3,"Checking Flavour")
     1032                                                                               
     1033                                       
     1034                                        if self.checkFinalFlavourToInstall_t.done:                               
     1035
     1036                                                if not self.postactions_process_t.is_alive() and not self.postactions_process_t.launched:
     1037                                                        print "[Lliurex-up]: Executing post-actions"
     1038                                                        self.postactions_process_t.start()
     1039                                                        self.postactions_process_t.launched=True
     1040                                                        self.show_number_process_executing(4,"Post-actions process")
     1041
     1042                                               
     1043                                                if self.postactions_process_t.done:
     1044                                                        self.pbar.hide()
     1045                                                        self.pbar_label.hide()
     1046                                                        self.terminal_label.set_name("CHANGELOG_FONT")
     1047                                                        msg_updgrade_running="<span><b>" + _("The system is now update") + "</b></span>"
     1048                                                        self.update_button_box.set_name("UPDATE_BUTTON_END_COLOR")
     1049                                                        self.terminal_label.set_markup(msg_updgrade_running)
     1050                                                        return False
     1051               
     1052       
     1053
     1054                if self.preactions_process_t.launched:
     1055                        if      not self.preactions_process_t.done:
     1056                                if not os.path.exists(self.llxup_connect.preactions_token):
     1057                                        return True
     1058                                else:
     1059                                        self.preactions_process_t.done=True
     1060                                        return True
     1061
     1062
     1063                if self.update_process_t.launched:
     1064                        if      not self.update_process_t.done:
     1065                                if not os.path.exists(self.llxup_connect.upgrade_token):
     1066                                        return True
     1067                                else:
     1068                                        self.update_process_t.done=True
     1069                                        return True
     1070
     1071                if self.checkFinalFlavourToInstall_t.launched:
     1072                        if not self.checkFinalFlavourToInstall_t.done:
     1073                                if not os.path.exists(self.llxup_connect.installflavour_token):
     1074                                        return True
     1075                                else:
     1076                                        self.checkFinalFlavourToInstall_t.done=True     
     1077                                        return True
     1078
     1079
     1080                if self.postactions_process_t.launched:
     1081                        if      not self.postactions_process_t.done:
     1082                               
     1083                                if not os.path.exists(self.llxup_connect.postactions_token):
     1084                                        return True
     1085                                else:
     1086                                        self.postactions_process_t.done=True
     1087                                        return True                     
     1088
     1089                       
    9981090        #def waiting_update
    9991091
    10001092
    1001         def checkFinalFlavour(self):
    1002 
    1003                 self.isMetapackageCorrect=self.llxup_connect.checkFinalFlavour()
    1004 
    1005                 if self.isMetapackageCorrect !=None:
    1006                         print "Check Final Metapackage: Instalation of meta is required"
     1093        def preactions_process(self):
     1094
     1095                self.command=self.llxup_connect.preActionsScript()
     1096                #self.command=self.llxup_connect.preActionsScript() + ' | tee ' + TMP_FILE + ';rm ' + TMP_FILE +'\n'
     1097                length=len(self.command)
     1098                self.vterminal.feed_child(self.command, length)
     1099
     1100
     1101        def update_process(self):
     1102                 
     1103                #self.command='apt-get dist-upgrade -sV | tee '+ TMP_FILE + ';rm ' + TMP_FILE +'\n'
     1104                self.command=self.llxup_connect.distUpgradeProcess()
     1105                length=len(self.command)
     1106                self.vterminal.feed_child(self.command, length)
     1107
     1108        #def update_process             
     1109
     1110
     1111        def checkFinalFlavourToInstall(self):
     1112
     1113                self.flavourToInstall=self.llxup_connect.checkFinalFlavour()
     1114
     1115                if self.flavourToInstall !=None:
     1116                        print "[Lliurex-up]: Check Final Metapackage: Instalation of meta is required"
     1117                        self.installFinalFlavour(self.flavourToInstall)
    10071118                else:
    1008                         print "Check Final Metapackage: Nothing to do" 
    1009 
    1010 
    1011                        
     1119                        print "[Lliurex-up]: Check Final Metapackage: Nothing to do"
     1120                        self.checkFinalFlavourToInstall_t.done=True     
     1121
     1122
     1123        def installFinalFlavour(self,flavourToInstall):
     1124
     1125                self.command=self.llxup_connect.installFinalFlavour(flavourToInstall)
     1126                length=len(self.command)
     1127                self.vterminal.feed_child(self.command, length)
     1128                               
     1129
     1130        def postactions_process(self):
     1131
     1132                self.command=self.llxup_connect.postActionsScript()
     1133                #self.command=self.llxup_connect.preActionsScript() + ' | tee ' + TMP_FILE + ';rm ' + TMP_FILE +'\n'
     1134                length=len(self.command)
     1135                self.vterminal.feed_child(self.command, length)
     1136
     1137       
    10121138        def view_packages_clicked(self,widget,event):
    10131139
     
    10781204        def mouse_over_update_button(self,widget,event):
    10791205
    1080                 if self.update_process_t.launched and not self.update_process_t.done:
     1206                if self.preactions_process_t.launched and not self.postactions_process_t.done:
    10811207                        self.update_button_box.set_name("UPDATE_LAUNCHED_OVER_COLOR")
    10821208                else:
    1083                         if self.update_process_t.done:
    1084                                 self.update_button_box.set_name("UPDATE_LAUNCHED_OVER_COLOR")
     1209                        if self.postactions_process_t.done:
     1210                                self.update_button_box.set_name("UPDATE_BUTTON_END_COLOR")
    10851211                        else:
    10861212                                self.update_button_box.set_name("UPDATE_OVER_COLOR")
     
    10901216        def mouse_exit_update_button(self,widget,event):
    10911217
    1092                 if self.update_process_t.launched and not self.update_process_t.done:
     1218                if self.preactions_process_t.launched and not self.postactions_process_t.done:
    10931219                        self.update_button_box.set_name("UPDATE_BUTTON_LAUNCHED_COLOR")
    10941220                        self.terminal_label.set_name("CHANGELOG_FONT")
    10951221                        self.terminal_label.set_markup(self.msg_terminal)
    10961222                else:
    1097                         if self.update_process_t.done:
    1098                                 self.update_button_box.set_name("UPDATE_BUTTON_LAUNCHED_COLOR")
     1223                        if self.postactions_process_t.done:
     1224                                self.update_button_box.set_name("UPDATE_BUTTON_END_COLOR")
    10991225
    11001226                        else:
     
    11281254
    11291255        def quit(self,widget,event=None):
    1130                
     1256                self.llxup_connect.cleanEnvironment()
    11311257                Gtk.main_quit()
    11321258
  • lliurex-up/trunk/fuentes/lliurex-up-gui/rsrc/lliurex-up.ui

    r3016 r3094  
    832832                <property name="visible">True</property>
    833833                <property name="can_focus">True</property>
    834                 <property name="vscrollbar_policy">external</property>
    835834                <property name="shadow_type">in</property>
    836835                <child>
Note: See TracChangeset for help on using the changeset viewer.