X-Git-Url: http://iramuteq.org/git?p=iramuteq;a=blobdiff_plain;f=checkinstall.py;h=34b37480f7828d09405bafb7990b0833f5a95777;hp=65af3ff8ff87e65ae1642458990ff26af922da56;hb=763d90785a9de548c3a5ffd9b718e3e5fea8332d;hpb=b1bfe11bdde3e2499b2246f1841499a64480cabb diff --git a/checkinstall.py b/checkinstall.py index 65af3ff..34b3748 100644 --- a/checkinstall.py +++ b/checkinstall.py @@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- #Author: Pierre Ratinaud #Copyright (c) 2008 Pierre Ratinaud -#Lisense: GNU/GPL +#License: GNU/GPL import os import sys @@ -45,11 +45,17 @@ def IsNew(self): return True def UpgradeConf(self) : + log.info('upgrade conf') dictuser = self.ConfigPath dictappli = ConstructConfigPath(self.AppliPath, user = False) for item,filein in dictuser.iteritems(): if not item == u'global' and not item == u'history': shutil.copyfile(dictappli[item], filein) + dicoUser = self.DictPath + dicoAppli = ConstructDicoPath(self.AppliPath) + for fi in dicoUser : + if not os.path.exists(dicoUser[fi]) and os.path.exists(dicoAppli[fi]): + shutil.copyfile(dicoAppli[fi], dicoUser[fi]) def CreateIraDirectory(UserConfigPath,AppliPath): if not os.path.exists(UserConfigPath): @@ -94,12 +100,14 @@ def FindRPAthWin32(): if progpaths != [] : for progpath in progpaths : rpath = os.path.join(progpath, "R") - if os.path.exists(rpath) : - for i in range(7,20): - for j in range(0,15): - path=os.path.join(rpath,"R-2."+str(i)+"."+str(j),'bin','R.exe') - if os.path.exists(path): - BestPath=path + if os.path.exists(rpath) : + for maj in range(2,4) : + for i in range(0,30): + for j in range(0,20): + for poss in ['', 'i386', 'x64'] : + path=os.path.join(rpath,"R-%i.%i.%i" % (maj, i, j),'bin',poss,'R.exe') + if os.path.exists(path): + BestPath=path return BestPath def FindRPathNix(): @@ -117,22 +125,8 @@ def RLibsAreInstalled(self) : else : return True -def install_textometrieR(self) : - dlg = wx.ProgressDialog("Installation de textometrieR", - "Veuillez patientez...", - maximum= 2, - parent=self, - style=wx.PD_APP_MODAL | wx.PD_AUTO_HIDE | wx.PD_ELAPSED_TIME | wx.PD_CAN_ABORT - ) - dlg.Center() - dlg.Update(1, 'Installation de textometrieR') - path = os.path.join(self.AppliPath, 'Rlib', 'textometrieR') - exec_RCMD(self.RPath, path) - dlg.Update(2,'fini') - dlg.Destroy() - def CheckRPackages(self): - listdep = ['ca', 'gee', 'ape', 'igraph','proxy', 'wordcloud', 'textometrieR'] + listdep = ['ca', 'rgl', 'gee', 'ape', 'igraph','proxy', 'wordcloud', 'irlba', 'textometry'] nolib = [] i=0 dlg = wx.ProgressDialog("Test des librairies de R", "test en cours...", maximum = len(listdep), parent=self, style=wx.PD_APP_MODAL | wx.PD_AUTO_HIDE | wx.PD_ELAPSED_TIME | wx.PD_CAN_ABORT) @@ -152,10 +146,6 @@ def CheckRPackages(self): log.info('packages %s : OK' % bib) dlg.Update(len(listdep),'fini') dlg.Destroy() - install_textoR = False - if 'textometrieR' in nolib : - nolib.pop(nolib.index('textometrieR')) - install_textoR = True if nolib != [] : txt = '\n'.join(nolib) msg = u"""Les bibliothèques de R suivantes sont manquantes : @@ -171,7 +161,7 @@ Sans ces bibliothèques, IRamuteq ne fonctionnera pas. - ou laisser IRamuteq les installer automatiquement en cliquant sur VALIDER . Les bibliothèques seront téléchargées depuis le site miroir de R %s. """ % (txt, self.pref.get('iramuteq','rmirror')) - dial = wx.MessageDialog(self, msg, u"Installation incomplète", wx.OK | wx.CANCEL | wx.NO_DEFAULT | wx.ICON_WARNING) + dial = wx.MessageDialog(self, msg, u"Installation incomplète", wx.OK | wx.CANCEL | wx.ICON_WARNING) dial.CenterOnParent() val = dial.ShowModal() if val == wx.ID_OK : @@ -212,9 +202,7 @@ Sans ces bibliothèques, IRamuteq ne fonctionnera pas. dlg.Update(len(nolib) + 1, 'fin') dlg.Destroy() dial.Destroy() - if install_textoR : - install_textometrieR(self) - if nolib == [] and not install_textoR : + if nolib == [] : self.pref.set('iramuteq', 'rlibs', True) with open(self.ConfigPath['preferences'], 'w') as f : self.pref.write(f)