Revision 42726

View differences:

trunk/org.gvsig.desktop/org.gvsig.desktop.installer/src/main/packaging/gvspkg
294 294
        x = x.replace("\\:", ":")
295 295
        return x
296 296
      return default
297
    
297

  
298 298
    def getDescription(self):
299 299
      return self.getIniOption("description")
300 300

  
......
379 379
        for line in lines:
380 380
          if line[-1] == "\n":
381 381
            line = line[:-1]
382
          
382

  
383 383
          info = PackageInfo(line)
384 384
          self.append(info)
385 385

  
......
446 446

  
447 447
def installer_add(cmd,arg1,arg2):
448 448
    installer_add_use_zip(cmd,arg1,arg2)
449
    
449

  
450 450
def installer_add_use_zip(cmd,arg1,arg2):
451 451
    if cmd == "addjrelin":
452 452
      return
453
    
453

  
454 454
    if cmd == "addjrewin":
455 455
      return
456
    
456

  
457 457
    if cmd == "addpks":
458 458
       zip = zipfile.ZipFile(arg1,"a",zipfile.ZIP_STORED)
459 459
       zip.write(arg2,"package.gvspks")
460 460
       zip.close()
461
    
461

  
462 462
def installer_add_use_installkit(cmd,arg1,arg2):
463 463
    folder = "%s/gvspkg.bin" % GVSPKG_ROOT
464 464

  
......
501 501
            distribution_name = arg
502 502
        else:
503 503
            assert False, "unhandled option"
504
    
505 504

  
505

  
506 506
    if len(args) != 2 :
507 507
        shorthelp(args)
508 508
        sys.exit(4)
......
524 524
    mychmod(custom_name,RWALL)
525 525
    message("Adding %s..." % gvspks_name)
526 526
    installer_add("addpks", custom_name, gvspks_name)
527
    
527

  
528 528
    """
529 529
    if addjrelin:
530 530
        withjre_name = bin_name.replace("online", distribution_name+"-withjre")
......
598 598
        msgwarn("No se ha encontrado el fichero %r. la opcion -s/--include-default-selection sera ignorada." % default_selection)
599 599
        default_selection = None
600 600

  
601
      
601

  
602 602
    indexes = IndexList()
603 603

  
604 604
    packages_txt = getDist() +"/packages.txt"
605
    packages_gvspki = getDist() +"/packages.gvspki"    
605
    packages_gvspki = getDist() +"/packages.gvspki"
606 606

  
607 607
    message( "Creating 'packages.gvspki' for version '%s'" % getVersion() + "...")
608 608
    if not os.path.exists(getDist()):
609 609
        msgerror("Can't locate version folder '%s'." % getDist())
610 610
        sys.exit(3)
611
   
611

  
612 612
    if os.path.exists(packages_txt) and not clear_list:
613 613
        indexes.load(packages_txt)
614 614
    else:
......
699 699
    if os.path.lexists(dst+".md5"):
700 700
      os.remove(dst+".md5")
701 701
    os.symlink(src+".md5",dst+".md5")
702
    
702

  
703 703
def domkmirror(root_src, version, build):
704 704
  join = os.path.join
705 705

  
......
709 709
  build_target = join(root_target,"dists",version,"builds",build)
710 710
  pool_src = join(root_src,"pool")
711 711
  pool_target = join(root_target,"pool")
712
  
712

  
713 713
  makedirs(root_target)
714 714
  makedirs(build_target)
715 715
  makedirs(pool_target)
......
771 771
    indexes = IndexList()
772 772

  
773 773
    packages_txt = getDist() +"/packages.txt"
774
   
774

  
775 775
    if os.path.exists(packages_txt) and not clear_list:
776 776
        indexes.load(packages_txt)
777 777
    else:
......
799 799
  <meta http-equiv="Content-Type" content= "text/html; charset=us-ascii" />
800 800
      <title>"%s" package list</title>'''% getVersion() # Title
801 801

  
802
    html += '''  
802
    html += '''
803 803
<!-- estilos para las tablas -->
804 804
  <style type="text/css" title="currentStyle">
805 805
    @import "css/demo_table.css";
......
884 884
      raise ex
885 885

  
886 886
    message("html pages createds.\n")
887
  
888
  
887

  
888

  
889 889
def mkpkihtml(basepath, info):
890 890
  html='''<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
891 891
<html xmlns="http://www.w3.org/1999/xhtml">
......
1008 1008
      print "Requiered option --state not found."
1009 1009
      shorthelp(args)
1010 1010
      sys.exit(2)
1011
      
1011

  
1012 1012
    join = os.path.join
1013 1013
    build_folder = join(getPackagesRoot(),"dists",getVersion(),"builds",build)
1014 1014
    if not os.path.isdir(build_folder):
......
1026 1026
    makedirs(join(portable_folder,"standard"))
1027 1027
    makedirs(join(portable_folder,"patchs"))
1028 1028
    f=open(join(portable_folder,"packages","excludes"),"w")
1029
    f.write("""EPSG_v6                                                                                                                               
1030
EPSG_v8_4                                                                                                                                     
1029
    f.write("""EPSG_v6
1030
EPSG_v8_4
1031 1031
org.gvsig.app.document.layout1.app.mainplugin
1032 1032
org.gvsig.dyschromatopsia.app.extension
1033 1033
org.gvsig.educa.portableview.app.editor
......
1072 1072
    #   join(portable_folder,"make-portable")
1073 1073
    # )
1074 1074
    mychmod(join(portable_folder,"make-portable"),RWXALL)
1075
    
1075

  
1076 1076
def zipfolder(source,target):
1077 1077
  def zipdir(path, zip):
1078 1078
      for root, dirs, files in os.walk(path):
......
1085 1085
def removefile(filename):
1086 1086
  if os.path.exists(filename):
1087 1087
    os.remove(filename)
1088
  
1088

  
1089 1089
def mkportable(args):
1090 1090
    cmd = Command(args)
1091 1091
    try:
......
1115 1115
      print "Requiered option --state not found."
1116 1116
      shorthelp(args)
1117 1117
      sys.exit(2)
1118
      
1118

  
1119 1119
    join = os.path.join
1120 1120
    build_folder = join(getPackagesRoot(),"dists",getVersion(),"builds",build)
1121 1121
    if not os.path.isdir(build_folder):
1122 1122
      print "Can't access the build folder "+build_folder+"."
1123 1123
      sys.exit(2)
1124
    
1124

  
1125 1125
    portable_folder = join(build_folder,"misc","portable")
1126 1126
    if not os.path.isdir(portable_folder) :
1127 1127
      do_prepare_portable(build,state)
......
1131 1131
    removefile(join(build_folder,"gvsig-desktop-%s-%s-%s-lin-x86.zip" %  (getVersion(),build,state)))
1132 1132
    removefile(join(build_folder,"gvsig-desktop-%s-%s-%s-lin-x86_x86.zip" % (getVersion(),build,state)))
1133 1133
    removefile(join(build_folder,"gvsig-desktop-%s-%s-%s-win-x86.zip" % (getVersion(),build,state)))
1134
    
1134

  
1135 1135
    target_folder = join(getPackagesRoot(),"dists",getVersion(),"builds",build,"misc","portable","target")
1136 1136
    os.chdir(target_folder)
1137
    
1137

  
1138 1138
    message("Creating zip gvsig-desktop-%s-%s-%s-lin-x86.zip" % (getVersion(),build,state))
1139 1139
    zipfolder(
1140 1140
      "gvsig-desktop-%s-%s-%s-lin-x86" % (getVersion(),build,state),
......
1150 1150
      "gvsig-desktop-%s-%s-%s-win-x86" % (getVersion(),build,state),
1151 1151
      join(build_folder,"gvsig-desktop-%s-%s-%s-win-x86.zip" % (getVersion(),build,state))
1152 1152
    )
1153
    
1153

  
1154 1154
    #message("Remove temporary folders")
1155 1155
    #shutil.rmtree(target_folder)
1156 1156

  
......
1169 1169
    distribution_name = "standard"
1170 1170
    platforms = ("x86", "x86_64")
1171 1171
    oss = ("lin", "win")
1172
    
1172

  
1173 1173
    for opt, arg in opts:
1174 1174
        if opt in ("-b", "--build"):
1175 1175
            build=arg
......
1211 1211
    if not os.path.isdir("builds/"+build):
1212 1212
      print "Can't access the build folder builds/"+build+"."
1213 1213
      sys.exit(2)
1214
       
1214

  
1215 1215
    message( "Generating distribution for build "+ build + "...")
1216 1216
    message("Recreating index of packages...")
1217 1217
    executeCommand("mks", "-s", "-c")
1218
    
1218

  
1219 1219
    executeCommand("mkhtml" )
1220 1220

  
1221 1221
    gvspki_filename = "builds/"+build+"/packages.gvspki"
1222 1222
    message( "Coping packages.gvspki to "+ gvspki_filename + "\n")
1223 1223
    shutil.copyfile("packages.gvspki", gvspki_filename)
1224 1224
    shutil.copyfile("packages.gvspki.md5", gvspki_filename +".md5")
1225
    
1225

  
1226 1226
    #exec_extensions = {
1227 1227
    #  "lin" : LINUX_EXEC_EXTENSION,
1228 1228
    #  "win" : ".exe"
1229 1229
    #}
1230
    
1230

  
1231 1231
    for cur_os in oss:
1232 1232
      exec_extension = ".jar" #exec_extensions[cur_os]
1233 1233
      for cur_platform in platforms:
......
1238 1238
        if not os.path.isfile(online_filename):
1239 1239
          msgwarn("Can't access the online installable for "+cur_os+"/"+cur_platform + " ("+online_filename+").")
1240 1240
          continue
1241
       
1241

  
1242 1242
        message( "Coping packages-"+cur_os+"-"+cur_platform+"..gvspks to "+ gvspks_filename)
1243 1243
        shutil.copyfile("packages-"+cur_os+"-"+cur_platform+".gvspks", gvspks_filename)
1244 1244
        shutil.copyfile("packages-"+cur_os+"-"+cur_platform+".gvspks.md5", gvspks_filename +".md5")
......
1249 1249
        md5sum(online_filename,online_filename+".md5")
1250 1250
        mychmod(online_filename+".md5",RWALL)
1251 1251

  
1252
        
1252

  
1253 1253
        executeCommand("mkinstall" , "--addjre"+cur_os, online_filename, gvspks_filename)
1254 1254

  
1255 1255
        message( "Renaming files from custom to standard...")
......
1275 1275
        mychmod(target_filename+".md5",RWALL)
1276 1276
        """
1277 1277
        message( "Createds installers for platform "+cur_os+"/"+cur_platform+"\n")
1278
        
1278

  
1279 1279
    message( "Coping html index to browse paqueges of the distro.")
1280 1280
    shutil.rmtree("builds/"+build+"/web", ignore_errors=True)
1281 1281
    shutil.copytree("web", "builds/"+build+"/web")
......
1288 1288
    f.close()
1289 1289

  
1290 1290
    message( "\nCreation of distribution completed.\n")
1291
         
1292
      
1293
      
1294 1291

  
1292

  
1293

  
1294

  
1295 1295
def show(args):
1296 1296
    cmd = Command(args)
1297 1297
    try:
......
1336 1336

  
1337 1337
def editall(args):
1338 1338
    cmd = Command(args)
1339
    try:  
1339
    try:
1340 1340
        opts, args = getopt.getopt(cmd.getArgs("editall"), "Scx:I:r:", ["clear-list", "exclude=", "excludepki=", "excludepkg=", "include=", "replace=", "sign"])
1341 1341
    except getopt.GetoptError, err:
1342 1342
        # print help information and exit:
......
1517 1517
    url_pki = args[0]
1518 1518
    if url_pki.startswith("https:") and nohttps :
1519 1519
       url_pki = "http:" + url_pki[6:]
1520
       
1520

  
1521 1521
    message( "Download package index '%s'" % url_pki)
1522 1522
    temppath_pki= os.path.join("/tmp",os.path.basename(url_pki))
1523 1523
    if not downloadFile(url_pki,temppath_pki):
......
1530 1530
    if url_pkg[-7:] == ".gvspki" :
1531 1531
      msgwarn("Suspicious download-url value. Ends with gvspki, expected gvspkg.")
1532 1532
      msgwarn("download-url ='%s'." % url_pkg)
1533
    
1533

  
1534 1534
    if url_pkg.startswith("https:") and nohttps :
1535 1535
       url_pkg = "http:" + url_pkg[6:]
1536
       
1536

  
1537 1537
    message( "Download package '%s'" % url_pkg)
1538 1538
    temppath_pkg= os.path.join("/tmp",os.path.basename(url_pkg))
1539 1539
    if not downloadFile(url_pkg,temppath_pkg):
......
1551 1551
    pathname_pkg = os.path.join(folder,os.path.basename(url_pkg))
1552 1552
    if  not force and os.path.isfile(pathname_pki) :
1553 1553
        msgwarn("The package downloaded from download-url alredy exists in the pool. Use -f to force install.")
1554
        print # force a newline  
1554
        print # force a newline
1555 1555
        return 1
1556 1556
    message( "installing package '%s'" % os.path.basename(pathname_pki))
1557 1557
    shutil.copyfile(temppath_pki, pathname_pki)
......
1588 1588
-d,--debug      Activa el modo debug.
1589 1589
--version ver   Fija la version con la que van a trabajar.
1590 1590
-r,--package-root root    Fija la carpeta del raiz del sistema de paquetes
1591
    
1591

  
1592 1592
COMMANDS:
1593 1593

  
1594 1594
mkinstall [OPTIONS] install-file packages-file
......
1616 1616
     -b BUILD, --build=BUILD
1617 1617
     -p, --platform=all|x86|x86_64|amd64
1618 1618
     -N, --distribution-name=name
1619
     
1619

  
1620 1620
mkmirror [OPTIONS]
1621 1621
     -b, --build buildnumber
1622 1622

  
......
1683 1683
-r|--package-root package-root
1684 1684
    Fija la carpeta en la que va a buscar el raiz del sistema de paquetes
1685 1685
    con el que trabajar
1686
    
1686

  
1687 1687
COMMANDS:
1688 1688

  
1689 1689
mkinstall [OPTIONS] install-file packages-file
......
1697 1697
    -l | --addjrelin
1698 1698

  
1699 1699
    -w | --addjrewin
1700
    
1700

  
1701 1701
    -N | --distribution-name=name
1702 1702
      Nombre usado como sufijo del nuevo binario a generar. Por defecto si no se
1703 1703
      indica valdra "custom".
......
1746 1746
        Si no se indica plataforma se generara para "all".
1747 1747
        El indice,"gvspki", siempre llevara los de todas las plataformas, esta opcion
1748 1748
        solo afecta a la genracion del "gvspks".
1749
        
1750
        
1749

  
1750

  
1751 1751
     -i | --index-only
1752 1752
        No crea el fichero gvspks, solo crea el gvspki
1753 1753

  
......
1781 1781
        - x86_64
1782 1782
        - amd64 (sinonimo aceptado para x86_64)
1783 1783
        Si no se indica plataforma se generara para x86.
1784
        
1784

  
1785 1785
     -N | --distribution-name=name
1786 1786
        Nombre usado como sufijo del nuevo binario a generar. Por defecto si no se
1787 1787
        indica valdra "standard".
1788 1788

  
1789
     
1789

  
1790 1790
mkmirror [OPTIONS]
1791 1791

  
1792 1792
  Prepara una carpeta para hacer un mirror de un build en concreto.

Also available in: Unified diff