From 7eb622930e265247344be772f4dc9098245c34cb Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Fri, 4 May 2018 12:30:50 +0200 Subject: [PATCH] update Java path searches to also match v10, v11, etc. This is still pretty conversative, since its not easy to test on all those platforms. #474 --- fdroidserver/common.py | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/fdroidserver/common.py b/fdroidserver/common.py index 8804b32d..ee0ee345 100644 --- a/fdroidserver/common.py +++ b/fdroidserver/common.py @@ -160,18 +160,18 @@ def _add_java_paths_to_config(pathlist, thisconfig): j = os.path.basename(d) # the last one found will be the canonical one, so order appropriately for regex in [ - r'^1\.([6-9])\.0\.jdk$', # OSX - r'^jdk1\.([6-9])\.0_[0-9]+.jdk$', # OSX and Oracle tarball - r'^jdk1\.([6-9])\.0_[0-9]+$', # Oracle Windows - r'^jdk([6-9])-openjdk$', # Arch - r'^java-([6-9])-openjdk$', # Arch - r'^java-([6-9])-jdk$', # Arch (oracle) - r'^java-1\.([6-9])\.0-.*$', # RedHat - r'^java-([6-9])-oracle$', # Debian WebUpd8 - r'^jdk-([6-9])-oracle-.*$', # Debian make-jpkg - r'^java-([6-9])-openjdk-[^c][^o][^m].*$', # Debian - r'^oracle-jdk-bin-1\.([7-9]).*$', # Gentoo (oracle) - r'^icedtea-bin-([7-9]).*$', # Gentoo (openjdk) + r'^1\.([16-9][0-9]?)\.0\.jdk$', # OSX + r'^jdk1\.([16-9][0-9]?)\.0_[0-9]+.jdk$', # OSX and Oracle tarball + r'^jdk1\.([16-9][0-9]?)\.0_[0-9]+$', # Oracle Windows + r'^jdk([16-9][0-9]?)-openjdk$', # Arch + r'^java-([16-9][0-9]?)-openjdk$', # Arch + r'^java-([16-9][0-9]?)-jdk$', # Arch (oracle) + r'^java-1\.([16-9][0-9]?)\.0-.*$', # RedHat + r'^java-([16-9][0-9]?)-oracle$', # Debian WebUpd8 + r'^jdk-([16-9][0-9]?)-oracle-.*$', # Debian make-jpkg + r'^java-([16-9][0-9]?)-openjdk-[^c][^o][^m].*$', # Debian + r'^oracle-jdk-bin-1\.([17-9][0-9]?).*$', # Gentoo (oracle) + r'^icedtea-bin-([17-9][0-9]?).*$', # Gentoo (openjdk) ]: m = re.match(regex, j) if not m: @@ -208,16 +208,16 @@ def fill_config_defaults(thisconfig): if thisconfig['java_paths'] is None: thisconfig['java_paths'] = dict() pathlist = [] - pathlist += glob.glob('/usr/lib/jvm/j*[6-9]*') - pathlist += glob.glob('/usr/java/jdk1.[6-9]*') - pathlist += glob.glob('/System/Library/Java/JavaVirtualMachines/1.[6-9].0.jdk') - pathlist += glob.glob('/Library/Java/JavaVirtualMachines/*jdk*[6-9]*') - pathlist += glob.glob('/opt/oracle-jdk-*1.[7-9]*') - pathlist += glob.glob('/opt/icedtea-*[7-9]*') + pathlist += glob.glob('/usr/lib/jvm/j*[16-9]*') + pathlist += glob.glob('/usr/java/jdk1.[16-9]*') + pathlist += glob.glob('/System/Library/Java/JavaVirtualMachines/1.[16-9][0-9]?.0.jdk') + pathlist += glob.glob('/Library/Java/JavaVirtualMachines/*jdk*[0-9]*') + pathlist += glob.glob('/opt/oracle-jdk-*1.[0-9]*') + pathlist += glob.glob('/opt/icedtea-*[0-9]*') if os.getenv('JAVA_HOME') is not None: pathlist.append(os.getenv('JAVA_HOME')) if os.getenv('PROGRAMFILES') is not None: - pathlist += glob.glob(os.path.join(os.getenv('PROGRAMFILES'), 'Java', 'jdk1.[6-9].*')) + pathlist += glob.glob(os.path.join(os.getenv('PROGRAMFILES'), 'Java', 'jdk1.[16-9][0-9]?.*')) _add_java_paths_to_config(pathlist, thisconfig) for java_version in ('7', '8', '9'):