Changeset 1995


Ignore:
Timestamp:
Jun 23, 2016, 12:41:16 PM (3 years ago)
Author:
hectorgh
Message:

adding check info window

Location:
lliurex-java-panel/trunk/fuentes/install-files/usr/share/lliurex-java-panel
Files:
4 edited
2 moved

Legend:

Unmodified
Added
Removed
  • lliurex-java-panel/trunk/fuentes/install-files/usr/share/lliurex-java-panel/lliurex-java-panel.py

    r1992 r1995  
    1111import ConfigParser
    1212import platform
    13 
     13import subprocess
     14import sys
    1415from math import pi
    1516
     
    4344                self.info["animation_active"]=False
    4445                self.info["shadow_start"]=0
     46                self.info["available"]=True
    4547               
    4648                if os.path.exists(BANNERS_PATH+self.info["pkg"]+".png"):
     
    224226                '''
    225227               
    226                 for item in sorted(os.listdir(JAVAS_CONFIG_PATH)):
    227                         if os.path.isfile(JAVAS_CONFIG_PATH+item):
    228                                 gb=self.configuration_parser.load_plugin(JAVAS_CONFIG_PATH+item)
    229                                 if gb!=None:
    230                                         self.add_grid_button(gb)
    231                                        
    232                                
     228                       
    233229               
    234230               
     
    239235               
    240236                self.main_window=builder.get_object("main_window")
    241                 self.main_window.show_all()
     237               
    242238               
    243239                self.main_window.connect("destroy",self.quit)
     
    247243                self.pbar=builder.get_object("progressbar")
    248244                self.progress_window.set_transient_for(self.main_window)
     245               
     246                self.gather_window=builder.get_object("gather_window")
     247                self.gather_pbar=builder.get_object("progressbar1")
     248                self.progress_label=builder.get_object("progress_label")
    249249               
    250250                self.label_clicked(None,None,0)
     
    292292                self.build_jre_alternatives()
    293293                self.build_firefox_alternatives()
    294 
    295294                self.configuration_box.show_all()
    296                
     295
    297296                self.set_css_info()
     297               
     298                #self.main_window.show_all()
     299                self.gather_window.show_all()
     300                GLib.timeout_add(100,self.pulsate_gathering_info)
     301               
     302                self.t=threading.Thread(target=self.gather_info)
     303                self.t.daemon=True
     304                self.t.start()
     305               
     306               
    298307                GObject.threads_init()         
    299308                Gtk.main()
     
    301310        #def
    302311       
     312        def gather_info(self):
     313               
     314                import time
     315                base_apt_cmd="apt-cache policy "
     316               
     317                gbs=[]
     318               
     319                for item in sorted(os.listdir(JAVAS_CONFIG_PATH)):
     320                        if os.path.isfile(JAVAS_CONFIG_PATH+item):
     321                                gb=self.configuration_parser.load_plugin(JAVAS_CONFIG_PATH+item)
     322                                if gb!=None:
     323                                        sys.stdout.write("* Checking %s ...\t"%gb.info["pkg"])
     324                                        gb.info["installed"]=self.is_installed(gb.info["pkg"])
     325                                        sys.stdout.write("%s\n"%gb.info["installed"])
     326                                        base_apt_cmd += "%s "%gb.info["pkg"]
     327                                        gbs.append(gb)
     328                                       
     329                p=subprocess.Popen([base_apt_cmd],shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE)     
     330                output=p.communicate()
     331               
     332                for gb in gbs:
     333                       
     334                        if gb.info["pkg"] not in output[0]:
     335                                print(" [!] %s not available [!] "%gb.info["pkg"])
     336                                gb.info["available"]=False
     337                        else:   
     338                                self.add_grid_button(gb)       
     339                       
     340               
     341
     342       
     343        #def gather_info
     344       
     345        def pulsate_gathering_info(self):
     346               
     347                self.gather_pbar.pulse()
     348               
     349                if not self.t.is_alive():
     350                       
     351                        self.gather_window.hide()
     352                        self.main_window.show_all()
     353               
     354                return self.t.is_alive()
     355               
     356        #def pulsate_gathering
    303357       
    304358        def set_css_info(self):
     
    371425
    372426
    373                 .radio#UNO {
     427                .radio#RED {
    374428                  -gtk-icon-source: -gtk-scaled(url("/usr/share/lliurex-java-panel/rsrc/radio-unchecked.png"), url("/usr/share/lliurex-java-panel/rsrc/radio-unchecked.png")); }
    375429
    376430               
    377431               
    378                 .radio:checked#UNO {
     432                .radio:checked#RED {
    379433                  -gtk-icon-source: -gtk-scaled(url("/usr/share/lliurex-java-panel/rsrc/radio-checked.png"), url("/usr/share/lliurex-java-panel/rsrc/radio-checked.png")); }
    380434
    381                 GtkButton#UNO GtkLabel {
     435                GtkButton#RED GtkLabel {
    382436                        color: #8297a1;
    383437                        font: Quattrocento Sans 11;
     
    395449                self.configuration_label.set_name("MAIN_LABEL_DISABLED")
    396450                self.pbar.set_name("RED_PROGRESS")
     451                self.gather_pbar.set_name("RED_PROGRESS")
    397452                self.confbutton_grid.set_name("DARK_BACK")
     453                self.progress_label.set_name("ALTERNATIVES_LABEL")
    398454               
    399455               
    400456        #def css_info
    401457
     458       
     459        def is_installed(self,pkg):
     460               
     461               
     462                p=subprocess.Popen(["dpkg-query -W -f='${db:Status-Status}' %s"%pkg],shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE)
     463                output=p.communicate()
     464               
     465                if output[0]=="installed":
     466                        return True
     467                       
     468                return False
     469               
     470               
     471        #def check_installed
     472       
    402473       
    403474
     
    469540               
    470541                        a=Alternative("CPANEL ALTERNATIVE #%s"%x,"command alternative cpanel #%s"%x)
    471                         a.set_name("UNO")
     542                        a.set_name("RED")
    472543                        alternative_list.append(a)
    473544                        tmp_box.pack_start(a,False,False,15)
     
    503574               
    504575                        a=Alternative("JWS ALTERNATIVE #%s"%x,"command alternative jws #%s"%x)
    505                         a.set_name("UNO")
     576                        a.set_name("RED")
    506577                        alternative_list.append(a)
    507578                        tmp_box.pack_start(a,False,False,15)
     
    538609               
    539610                        a=Alternative("JRE ALTERNATIVE #%s"%x,"command alternative jre #%s"%x)
    540                         a.set_name("UNO")
     611                        a.set_name("RED")
    541612                        alternative_list.append(a)
    542613                        tmp_box.pack_start(a,False,False,15)
     
    574645               
    575646                        a=Alternative("FIREFOX ALTERNATIVE #%s"%x,"command alternative firefox #%s"%x)
    576                         a.set_name("UNO")
     647                        a.set_name("RED")
    577648                        alternative_list.append(a)
    578649                        tmp_box.pack_start(a,False,False,15)
     
    724795                        pctx.set_font_description(desc)
    725796                        ctx.set_source_rgba(self.green.r,self.green.g,self.green.b,1)
    726                         txt="Instal·lat"
     797                        txt=_("Installed")
    727798                        pctx.set_markup(txt)
    728799                        width=pctx.get_pixel_size()[0]
  • lliurex-java-panel/trunk/fuentes/install-files/usr/share/lliurex-java-panel/rsrc/lliurex-java-panel.glade

    r1984 r1995  
    146146    </child>
    147147  </object>
     148  <object class="GtkWindow" id="gather_window">
     149    <property name="can_focus">False</property>
     150    <property name="type">popup</property>
     151    <property name="window_position">center</property>
     152    <child>
     153      <object class="GtkBox" id="box2">
     154        <property name="visible">True</property>
     155        <property name="can_focus">False</property>
     156        <property name="margin_left">10</property>
     157        <property name="margin_right">10</property>
     158        <property name="margin_top">10</property>
     159        <property name="margin_bottom">10</property>
     160        <property name="orientation">vertical</property>
     161        <child>
     162          <object class="GtkLabel" id="progress_label">
     163            <property name="visible">True</property>
     164            <property name="can_focus">False</property>
     165            <property name="label" translatable="yes">Checking system...</property>
     166          </object>
     167          <packing>
     168            <property name="expand">False</property>
     169            <property name="fill">True</property>
     170            <property name="position">0</property>
     171          </packing>
     172        </child>
     173        <child>
     174          <object class="GtkProgressBar" id="progressbar1">
     175            <property name="visible">True</property>
     176            <property name="can_focus">False</property>
     177          </object>
     178          <packing>
     179            <property name="expand">False</property>
     180            <property name="fill">True</property>
     181            <property name="position">1</property>
     182          </packing>
     183        </child>
     184      </object>
     185    </child>
     186  </object>
    148187  <object class="GtkWindow" id="main_window">
    149188    <property name="height_request">750</property>
     
    151190    <property name="title" translatable="yes">LliureX Java Panel</property>
    152191    <property name="resizable">False</property>
     192    <property name="window_position">center</property>
    153193    <child>
    154194      <object class="GtkBox" id="box7">
  • lliurex-java-panel/trunk/fuentes/install-files/usr/share/lliurex-java-panel/supported-javas/openjdk8

    r1990 r1995  
    11[JAVA]
    2 pkg=openjdk8
    3 name=Open JDK 8
    4 cmd=apt-get install openjdk8
     2pkg=openjdk-8-jre
     3name=OpenJDK JRE 8
     4cmd=apt-get install openjdk-8-jre
  • lliurex-java-panel/trunk/fuentes/install-files/usr/share/lliurex-java-panel/supported-javas/openjdk9

    r1990 r1995  
    11[JAVA]
    2 pkg=openjdk9
    3 name=Open JDK 9
    4 cmd=apt-get install openjdk9
     2pkg=openjdk-9-jre
     3name=OpenJDK JRE 9
     4cmd=apt-get install openjdk-9-jre
Note: See TracChangeset for help on using the changeset viewer.