Ignore:
Timestamp:
Mar 9, 2017, 12:38:17 PM (3 years ago)
Author:
daduve
Message:

adding sh files

Location:
lliurex-remote-installer/trunk/fuentes
Files:
1 added
8 edited

Legend:

Unmodified
Added
Removed
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/AptBox.py

    r3832 r3851  
    151151               
    152152                for t in range(0,times):
    153                         for x in self.core.var["apt"]:
    154                                 self.new_apt_button(x)
     153                        if self.core.var["apt"] not in [{},"",None,'{}']:
     154                                for x in self.core.var["apt"]:
     155                                        self.new_apt_button(x)
    155156                       
    156157                self.current_var=copy.deepcopy(self.core.var)
     
    448449               
    449450                if self.test_apt[0]:
    450                         if self.test_apt[3] not in [None,"","[]"]:
     451                        if self.test_apt[3] not in [None,"","[]",[]]:
    451452                                if self.delete_test_apt_dialog(self.test_apt[3]):
    452453                                        self.core.n4d.set_variable(self.test_apt[1])
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/Core.py

    r3832 r3851  
    22import AptBox
    33import DebBox
     4import ExecBox
    45import N4dManager
    56
     
    3839                self.deb_box=DebBox.DebBox()
    3940               
     41                self.dprint("Creating DebBox...")
     42                self.exec_box=ExecBox.ExecBox()
     43               
    4044                # ####
    4145               
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/DebBox.py

    r3832 r3851  
    239239       
    240240                        url_dest="/var/www/llx-remote/"+str(pkg)
    241                         remove=self.core.n4d.remove_file(url_dest)
    242                         if not remove[0]:
     241                        self.deleted=self.core.n4d.remove_file(url_dest)
     242                        if not self.deleted[0]:
    243243                                comment="The file %s cannot be deleted"%pkg
    244244                                self.remove_file_info_dialog(comment)
     245                               
    245246                        self.thread_ret={"status":True,"msg":"SE HA ROTO"}
    246247                       
     
    263264                for x in self.current_var["deb"]["packages"]:
    264265                        self.new_package_button("%s"%x)
     266                if self.deleted[0]:
     267                        self.core.var=copy.deepcopy(self.current_var)
     268                        self.core.n4d.set_variable(self.core.var)
     269                       
     270                       
    265271               
    266272        #check_delete_thread
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/LliurexRemoteInstaller.py

    r3832 r3851  
    5757                self.deb_box=self.core.deb_box
    5858                self.stack.add_titled(self.deb_box,"debs","Debs")
    59                 self.stack.add_titled(Gtk.Label("EXECUTABLES"),"exes","Executables")
     59                self.exec_box=self.core.exec_box
     60                self.stack.add_titled(self.exec_box,"exes","Executables")
    6061               
    6162               
     
    7172        def load_values(self):
    7273               
     74               
     75               
     76                self.core.n4d.test_var()
    7377                var_init=self.core.n4d.get_variable()
    7478                if var_init[0]:
     
    8084                var={}
    8185                var=variable
    82                 #var[self.APT]={}
    83                 #var[self.APT]=variable[self.APT]
    84                
    85                 '''#DUMMY DATA
    86                 var=
    87                 var={}
    88                 var["apt"]={}
    89                
    90                 i={}
    91                 i["url"]="http://lliurex.net/xenial xenial main restricted universe multiverse"
    92                 i["packages"]=[]
    93                
    94                 i["packages"].append("chromium-browser")
    95                 i["packages"].append("steam")
    96                 i["packages"].append("scite")
    97                 i["packages"].append("krita")
    98                
    99                 var["apt"]["Lliurex"]=i
    100                
    101                 i={}
    102                 i["url"]="http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse"
    103                 i["packages"]=[]
    104                
    105                 for x in range(10,21):
    106                         i["packages"].append("Package %s"%x)
    107                        
    108                 var["apt"]["Ubuntu"]=i
    109                 '''
    110                
    111                 self.core.n4d.test_var()
     86               
    11287                self.apt_box.set_info(var)
    11388                self.deb_box.set_info(var)
     89                self.exec_box.set_info(var)
    11490               
    11591               
     
    149125               
    150126                change_child=True
    151 
     127                if self.stack.get_visible_child_name()=="debs":
     128                        selected="deb"
     129                if self.stack.get_visible_child_name()=="exes":
     130                        selected="sh"
     131                       
     132                       
    152133                if self.stack.get_visible_child_name()=="debs":
    153134                        if self.deb_box.check_changes():
     
    159140                                                self.deb_box.package_list_box.remove(c)
    160141                       
    161                                         for x in self.core.var["deb"]["packages"]:
     142                                        for x in self.core.var[selected]["packages"]:
    162143                                                self.deb_box.new_package_button("%s"%x)
     144                                               
     145                if self.stack.get_visible_child_name()=="exes":
     146                        if self.exec_box.check_changes():
     147                                change_child=self.exec_box.changes_detected_dialog()
     148                                if change_child:
     149                                        self.exec_box.set_info(self.core.var)
     150                                       
     151                                        for c in self.exec_box.package_list_box.get_children():
     152                                                self.exec_box.package_list_box.remove(c)
     153                       
     154                                        for x in self.core.var[selected]["packages"]:
     155                                                self.exec_box.new_package_button("%s"%x)
    163156                                       
    164157                                       
     
    190183                                        for x in self.core.var["apt"][apt_id]["packages"]:
    191184                                                self.apt_box.new_package_button("%s"%x)
     185                                               
     186                if self.stack.get_visible_child_name()=="exes":
     187                        if self.exec_box.check_changes():
     188                                change_child=self.exec_box.changes_detected_dialog()
     189                                if change_child:
     190                                        self.exec_box.set_info(self.core.var)
     191                                       
     192                                        for c in self.exec_box.package_list_box.get_children():
     193                                                self.exec_box.package_list_box.remove(c)
     194                       
     195                                        for x in self.core.var["sh"]["packages"]:
     196                                                self.exec_box.new_package_button("%s"%x)
     197                       
    192198                                       
    193199                                       
     
    197203               
    198204                if change_child:
    199                        
     205                        self.deb_box.set_info(self.core.var)
    200206                        self.stack.set_visible_child_name("debs")
    201207                        self.apt_button.set_name("OPTION_BUTTON")
     
    207213        def exes_button_clicked(self,widget):
    208214               
    209                 self.stack.set_visible_child_name("exes")
    210                 self.apt_button.set_name("OPTION_BUTTON")
    211                 self.debs_button.set_name("OPTION_BUTTON")
    212                 self.exes_button.set_name("SELECTED_OPTION_BUTTON")
     215                change_child=True
     216               
     217                if self.stack.get_visible_child_name()=="apt":
     218                        if self.apt_box.check_changes():
     219                                change_child=self.apt_box.changes_detected_dialog()
     220                                if change_child:
     221                                        self.apt_box.set_info(self.core.var)
     222                                        apt_id=self.apt_box.current_id
     223                                        self.apt_box.url_entry.set_text(self.core.var["apt"][apt_id]["url"])
     224                                       
     225                                        for x in self.apt_box.package_list_box.get_children():
     226                                                self.apt_box.package_list_box.remove(x)
     227                       
     228                                        for x in self.core.var["apt"][apt_id]["packages"]:
     229                                                self.apt_box.new_package_button("%s"%x)
     230                                               
     231                if self.stack.get_visible_child_name()=="debs":
     232                        if self.deb_box.check_changes():
     233                                change_child=self.deb_box.changes_detected_dialog()
     234                                if change_child:
     235                                        self.deb_box.set_info(self.core.var)
     236                                       
     237                                        for c in self.deb_box.package_list_box.get_children():
     238                                                self.deb_box.package_list_box.remove(c)
     239                       
     240                                        for x in self.core.var["deb"]["packages"]:
     241                                                self.deb_box.new_package_button("%s"%x)
     242                       
     243                                       
     244                                       
     245                                        #self.apt_box.stack.set_visible_child_name("empty")
     246                       
     247                       
     248               
     249                if change_child:
     250               
     251                        self.stack.set_visible_child_name("exes")
     252                        self.apt_button.set_name("OPTION_BUTTON")
     253                        self.debs_button.set_name("OPTION_BUTTON")
     254                        self.exes_button.set_name("SELECTED_OPTION_BUTTON")
    213255               
    214256        #def exes_button_clicked
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/N4dManager.py

    r3832 r3851  
    107107        #def set_variable
    108108       
     109        def test_list (self,dict,type):
     110               
     111                try:
     112                        list_deb_ok=self.client.test_list(self.user,"LliureXRemoteInstaller",dict,type)
     113                        print list_deb_ok
     114                        return list_deb_ok
     115               
     116                except Exception as e:
     117                        print e
     118                        return False
     119               
     120        #def test_list
     121       
    109122        def app_deb_exist (self,app=None,url=None):
    110123                try:
     
    123136                        #list_apt_ok.wait()
    124137                        if file_sended["status"]:
    125                                 return [True]
     138                                return True
    126139                        else:
    127                                 return [False]
     140                                return False
    128141               
    129142                except Exception as e:
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/lliurex-remote-installer.ui

    r3832 r3851  
    247247            <property name="receives_default">True</property>
    248248            <property name="margin_right">10</property>
     249            <property name="margin_top">10</property>
     250            <property name="margin_bottom">10</property>
     251            <property name="use_stock">True</property>
     252          </object>
     253          <packing>
     254            <property name="expand">False</property>
     255            <property name="fill">True</property>
     256            <property name="padding">5</property>
     257            <property name="pack_type">end</property>
     258            <property name="position">0</property>
     259          </packing>
     260        </child>
     261      </object>
     262      <packing>
     263        <property name="expand">False</property>
     264        <property name="fill">True</property>
     265        <property name="position">4</property>
     266      </packing>
     267    </child>
     268  </object>
     269  <object class="GtkBox" id="exec_data_box">
     270    <property name="visible">True</property>
     271    <property name="can_focus">False</property>
     272    <property name="orientation">vertical</property>
     273    <child>
     274      <placeholder/>
     275    </child>
     276    <child>
     277      <object class="GtkLabel" id="package_label_exec">
     278        <property name="visible">True</property>
     279        <property name="can_focus">False</property>
     280        <property name="halign">start</property>
     281        <property name="valign">center</property>
     282        <property name="margin_top">2</property>
     283        <property name="ypad">8</property>
     284        <property name="label" translatable="yes">Executables List to install</property>
     285        <property name="xalign">0</property>
     286      </object>
     287      <packing>
     288        <property name="expand">False</property>
     289        <property name="fill">True</property>
     290        <property name="position">1</property>
     291      </packing>
     292    </child>
     293    <child>
     294      <object class="GtkScrolledWindow" id="scrolledwindow5">
     295        <property name="height_request">200</property>
     296        <property name="visible">True</property>
     297        <property name="can_focus">True</property>
     298        <property name="shadow_type">in</property>
     299        <child>
     300          <object class="GtkViewport" id="exec_list_viewport">
     301            <property name="visible">True</property>
     302            <property name="can_focus">False</property>
     303            <child>
     304              <object class="GtkBox" id="exec_list_box">
     305                <property name="visible">True</property>
     306                <property name="can_focus">False</property>
     307                <property name="margin_top">10</property>
     308                <property name="margin_bottom">10</property>
     309                <property name="orientation">vertical</property>
     310                <child>
     311                  <placeholder/>
     312                </child>
     313              </object>
     314            </child>
     315          </object>
     316        </child>
     317      </object>
     318      <packing>
     319        <property name="expand">True</property>
     320        <property name="fill">True</property>
     321        <property name="position">2</property>
     322      </packing>
     323    </child>
     324    <child>
     325      <object class="GtkBox" id="box15">
     326        <property name="visible">True</property>
     327        <property name="can_focus">False</property>
     328        <child>
     329          <object class="GtkButton" id="apply_exec_button">
     330            <property name="label">gtk-apply</property>
     331            <property name="visible">True</property>
     332            <property name="can_focus">True</property>
     333            <property name="receives_default">True</property>
     334            <property name="margin_bottom">10</property>
     335            <property name="use_stock">True</property>
     336          </object>
     337          <packing>
     338            <property name="expand">False</property>
     339            <property name="fill">True</property>
     340            <property name="padding">5</property>
     341            <property name="pack_type">end</property>
     342            <property name="position">0</property>
     343          </packing>
     344        </child>
     345      </object>
     346      <packing>
     347        <property name="expand">False</property>
     348        <property name="fill">True</property>
     349        <property name="pack_type">end</property>
     350        <property name="position">3</property>
     351      </packing>
     352    </child>
     353    <child>
     354      <object class="GtkBox" id="box16">
     355        <property name="visible">True</property>
     356        <property name="can_focus">False</property>
     357        <child>
     358          <object class="GtkButton" id="add_exec_button">
     359            <property name="label">gtk-add</property>
     360            <property name="visible">True</property>
     361            <property name="can_focus">True</property>
     362            <property name="receives_default">True</property>
    249363            <property name="margin_top">10</property>
    250364            <property name="margin_bottom">10</property>
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-server.install/etc/n4d/conf.d/LliureXRemoteInstaller

    r3694 r3851  
    1313repo_update=admin,admins,adm,teachers
    1414dict_ok=admin,admins,adm,teachers
     15test_apt_list =admin,admins,adm,teachers
     16test_deb_list =admin,admins,adm,teachers
     17test_list =admin,admins,adm,teachers
     18remove_file =admin,admins,adm,teachers
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-server.install/usr/share/n4d/python-plugins/LliureXRemoteInstaller.py

    r3833 r3851  
    77       
    88        N4D_VAR="LLX_REMOTE_INSTALLER"
     9        initial_dict={'deb': {'url': 'http://server/llx-remote/', 'packages': []}, 'sh': {'url': 'http://server/llx-remote/', 'packages': []}, 'apt': {}}
    910       
    1011        #VALOR VARIABLE DEL REPO ADDAPLICATION_SOURCES
     
    4142                        print "[LLXRemoteInstaller] (test_var) Value for variable %s: %s"%(namevar,VALOR)
    4243                        if  VALOR in ["",None,'None']:
    43                                 objects["VariablesManager"].add_variable(namevar,{},"",namevar,[],False,False)
     44                                objects["VariablesManager"].add_variable(namevar,self.initial_dict,"",namevar,[],False,False)
    4445                                COMMENT = ("[LLXRemoteInstaller] (test_var) Added variable %s to VariablesManager" %namevar)
    4546                                print ("%s" %COMMENT)
     
    235236                        list_apt_ok=[]
    236237                        list_apt_testing=[]
     238                        restore=False
    237239                        for x in dict[self.APT]:
    238240                                print "[LLXRemoteInstaller](test_apt_list) Comprobando el PPA: %s"%x
     
    245247                                                print COMMENT
    246248                                                list_apt=list_apt+list_apt_testing
     249                                                restore=True
    247250                                                print "[LLXRemoteInstaller](test_apt_list) Anyadimos las APT del repo anterior, nueva lista: %s"%(list_apt)
    248251                                        else:
     
    281284                                dict[self.APT][x][self.LIST]=list_apt_testing
    282285                               
    283                         self.repo_restore(self.file_sources)
     286                        #Solo hago un update y restore del sources si este ha sido cambiado anteriormente.
     287                        if restore:     
     288                                self.repo_restore(self.file_sources)
    284289                        return [True,dict,list_apt,list_apt_deleted,COMMENT]
    285290                       
     
    309314                        list_debs=list_debs_ok
    310315                        dict[self.DEB][self.LIST]=list_debs
     316                        print "[LLXRemoteInstaller](test_deb_list) Listado avaiable de DEBS: %s"%list_debs_ok
     317                        print "[LLXRemoteInstaller](test_deb_list) Listado Unavaiable de DEBS: %s"%list_debs_fail
     318                        return [True,dict,list_debs_ok,list_debs_fail]
     319                except Exception as e:
     320                        return [False,str(e)]
     321               
     322               
     323        #def test_deb_list
     324       
     325        def test_list (self,dict=None,type=None):
     326               
     327                try:
     328               
     329                        #TEST DE LOS DEBS
     330                        list_debs=dict[type][self.LIST]
     331                        url=dict[type][self.URL]
     332                        #url=self.SHARE_DIRECTORY
     333                        print "[LLXRemoteInstaller](test_deb_list) El listado de DEBS es %s i lo comprobaremos en la URL: %s"%(list_debs,url)
     334                        list_debs_ok=[]
     335                        list_debs_fail=[]
     336                        for app in list_debs:
     337                                print "[LLXRemoteInstaller](test_deb_list) Comprobando si es avaiable el DEB: %s"%app
     338                                if self.app_deb_exist(app,url)[0]:
     339                                        list_debs_ok.append(app)
     340                                else:
     341                                        list_debs_fail.append(app)
     342                        list_debs=list_debs_ok
     343                        dict[type][self.LIST]=list_debs
    311344                        print "[LLXRemoteInstaller](test_deb_list) Listado avaiable de DEBS: %s"%list_debs_ok
    312345                        print "[LLXRemoteInstaller](test_deb_list) Listado Unavaiable de DEBS: %s"%list_debs_fail
Note: See TracChangeset for help on using the changeset viewer.