from .centos7 import CentOS7TPInstaller
from util.string_util import replace_in_list


class CentOS8TPInstaller(CentOS7TPInstaller):
    def __init__(self, profile):
        """
        TP Installer for CentOS 8
        :param Profile profile: the installation profile
        """
        super(CentOS8TPInstaller, self).__init__(profile)

    def get_build_core_packages(self):
        ret = super(CentOS8TPInstaller, self).get_build_core_packages()
        ret.remove('gdal-devel') # cannot be found in any standard repo
        return ret

    def get_build_java_packages(self):
        return ['java-11-openjdk-devel', 'maven']

    def get_build_cmake_packages(self):
        """system cmake is v3.11"""
        return ['cmake']

    def get_run_core_packages(self):
        ret = super(CentOS8TPInstaller, self).get_run_core_packages()
        # not found
        for p in ['sysvinit-tools', 'gdal', 'gdal-java']:
            if p in ret:
                ret.remove(p)
        return ret

    def get_run_java_packages(self):
        ret = ['java-11-openjdk-headless']
        # todo: gdal-java
        return ret
