def __distro(self):
        """Based on the Linux distribution, set values accordingly.  A user
           specified value overrides any defaults."""

        if hpccm.config.g_linux_distro == linux_distro.UBUNTU:
            self.__deppackages = ['libnl-3-200', 'libnl-route-3-200',
                                 'libnuma1']

            if hpccm.config.g_linux_version >= Version('18.0'):
                # Give priority to packages from the Ubuntu repositories over
                # vendor repositories
                if hpccm.config.g_linux_version >= Version('24.0'):
                    self.__extra_opts = ['-t noble']
                elif hpccm.config.g_linux_version >= Version('22.0'):
                    self.__extra_opts = ['-t jammy']
                elif hpccm.config.g_linux_version >= Version('20.0'):
                    self.__extra_opts = ['-t focal']
                else:
                    self.__extra_opts = ['-t bionic']

                self.__ospackages= ['dapl2-utils', 'ibutils',
                                    'ibverbs-providers', 'ibverbs-utils',
                                    'infiniband-diags',
                                    'libdapl2', 'libdapl-dev',
                                    'libibmad5', 'libibmad-dev',
                                    'libibverbs1', 'libibverbs-dev',
                                    'librdmacm1', 'librdmacm-dev',
                                    'rdmacm-utils']
            else:
                # Give priority to packages from the Ubuntu repositories over
                # vendor repositories
                self.__extra_opts = ['-t xenial']

                self.__ospackages = ['dapl2-utils', 'ibutils', 'ibverbs-utils',
                                     'infiniband-diags',
                                     'libdapl2', 'libdapl-dev',
                                     'libibcm1', 'libibcm-dev',
                                     'libibmad5', 'libibmad-dev',
                                     'libibverbs1', 'libibverbs-dev',
                                     'libmlx4-1', 'libmlx4-dev',
                                     'libmlx5-1', 'libmlx5-dev',
                                     'librdmacm1', 'librdmacm-dev',
                                     'rdmacm-utils']

                if hpccm.config.g_cpu_arch == cpu_arch.AARCH64:
                    # Ubuntu 16.04 for ARM is missing these packages
                    for missing in ['dapl2-utils', 'libdapl2', 'libdapl-dev',
                                    'libibcm1', 'libibcm-dev']:
                        if missing in self.__ospackages:
                            self.__ospackages.remove(missing)
                elif hpccm.config.g_cpu_arch == cpu_arch.PPC64LE:
                    # Ubuntu 16.04 for Power is missing these packages
                    for missing in ['libibcm1', 'libibcm-dev']:
                        if missing in self.__ospackages:
                            self.__ospackages.remove(missing)
        elif hpccm.config.g_linux_distro == linux_distro.CENTOS:
            self.__extra_opts = [r'--disablerepo=mlnx\*']

            if hpccm.config.g_linux_version >= Version('8.0'):
                self.__deppackages = ['libnl3', 'numactl-libs']
                self.__ospackages = ['libibmad', 'libibmad-devel',
                                     'libibumad', 'libibverbs',
                                     'libibverbs-utils', 'libmlx5',
                                     'librdmacm',
                                     'rdma-core', 'rdma-core-devel']
                if hpccm.config.g_linux_version < Version('9.0'):
                    self.__powertools = True
            else:
                self.__deppackages = ['libnl', 'libnl3', 'numactl-libs']
                self.__ospackages = ['dapl', 'dapl-devel', 'ibutils',
                                     'libibcm', 'libibmad', 'libibmad-devel',
                                     'libmlx5', 'libibumad', 'libibverbs',
                                     'libibverbs-utils', 'librdmacm',
                                     'rdma-core', 'rdma-core-devel']
        else: # pragma: no cover
            raise RuntimeError('Unknown Linux distribution')
Based on the Linux distribution, set values accordingly.  A user
           specified value overrides any defaults.
hpccm/building_blocks/ofed.py