# Skip packages by distro ... these are ones that although available
# are:
# - incompatible with other pieces we need, e.g. Qt4 when other
#   packages are Qt5, or
# - fail prerequisites due to packaging botches, or
# - are bad e.g. like valgrind dumping core
#
# >= 3 fields per line (separated by while space)
# Field 1	- Distro name, as reported by whatami
# Field 2	- Distro version, as reported by whatami, - for all versions
# 		  (an alias for .*)
# Field 3	- Distro architecture, - for all architectures (alias for .*)
# Field 4 .. N	- packages that should be skipped ... note that grep(1)
#		  patterns in this field are matched literally (no regexp
#		  matching) with package "names" in manifest, if regexp
#		  matching is required, enclose the regexp in {}
#
# grep(1) patterns allowed in all Fields.
#
# Comments prefixed by #
#
#Distro      Version  Arch    Skipped Packages
#-- ArchLinux
# we're using python3
ArchLinux    -        -       python2-{.*} {.*}-python2
#-- Centos
# we're using python3
# As of 8.2.2004 ...
# mysql conflicst with mariadb
# mandoc conflicts with man-pages
# perl-Net-SNMP) has bad prereq on perl-Digest-SHA1, not perl-Digest-SHA
# perl-Spreadsheet-XLSX has bad depends chain back to perl-IO-Scalar
# perl-Spreadsheet-WriteExcel has bad depends chain back to perl-IO-Scalar
# cpan(Spreadsheet::WriteExcel) fails to build
CentOS       8\.2\.   -       {.*}-python2 python2-{.*} python2[0-9]-{.*} python-{.*} mysql mandoc perl-Net-SNMP perl-Spreadsheet-XLSX perl-Spreadsheet-WriteExcel cpan(Spreadsheet::WriteExcel)
CentOS       8\.1\.   -       {.*}-python2 python2-{.*} python2{[0-9]-.*} python-{.*}
CentOS       7\.[5-9]\. -       {.*}-python2 python2-{.*} python2{[0-9]-.*} python-{.*}
# For CentOS 8, mktemp and realpath are in coreutils, not coreutils-single
CentOS       8\.      -       coreutils-single
# For CentOS 7 and 8 prefer infiniband-diags-devel over libibmad-devel
CentOS       [7-8]\.  -       libibmad-devel
# For CentOS 6 infiniband-diags-devel does not provide all the headers
CentOS       6\.      -       infiniband-diags-devel
# libSoQt is for Qt4 not Qt5
CentOS       7\.      -       SoQt-devel
# prefer docker over podman-docker
CentOS       7\.      -       podman-docker
# we're using python2
CentOS       6\.10    -       {.*}-python3 python3-{.*} python3{[0-9]-.*}
# need non-standard repo for msssql-* pkgs
CentOS       -        -       mssql-server mssql-tools
# these ones are SuSE packages, not in the RH ecosystem
CentOS       -        -       kubectl libqt4-devel
# -- Debian
# we're using python3 from Debian 9 onwards
Debian       1.\.     -       python-{.*}
Debian       9\.      -       python-{.*}
Debian       buster   -       python-{.*}
Debian       bullseye -       python-{.*} python libpython-dev libpython2-dev libpython-stdlib libpython2-stdlib
# observed on bozo
# libqt4-dev and libsoqt4 are all for Qt4, but we're
# using Qt5 for the other bits we need for pmview, but even the Qt5
# libcoin80-dev and libsoqt520-dev packages are not all there for Qt5
# so skip the lot (especially on Debian 10)
Debian       bullseye -       libqt4-dev libsoqt4-dev
Debian       1.\..    -       libcoin80-dev libcoin-dev libqt4-dev libsoqt4-dev libsoqt520-dev libsoqt-dev-common
# observed on vm11
# python3-bpfcc : Depends: libbpfcc (>= 0.8.0-4) but it is not installable
Debian       10\.     -       python3-bpfcc
#-- Fedora
# kubernetes-node pulls in moby-engine which is really bad for podman-docker
# - expect Fedora to clean this up in at a later release when moby-engine is
#   dropped
Fedora       3[1-4]   -       kubernetes-node
# need non-standard repo for msssql-* pkgs
Fedora       -        -       mssql-server mssql-tools
# prefer mariadb over mysql
Fedora       3[0-9]   -       community-mysql
# we're using python3
Fedora       3[0-9]   -       python-{.*} python2-{.*} 
# these ones are SuSE packages, not in the RH ecosystem
Fedora       -        -       kubectl libqt4-devel
#-- Gentoo
# observed on vm05
# I cannot figure out how to remake this package with USE=utils so that
# avahi-browse is built and installed (Ken)
Gentoo       2\.4\.2  -       net-dns/avahi
#-- LinuxMint
# observed on vm18
# libsoqt-dev -> libsoqt4-dev and all the other Qt pieces are Qt5
LinuxMint    17\.3    -       libsoqt-dev
# observed on vm36 ... ditto
LinuxMint    18\.3    -       libsoqt-dev
# we're using python3
LinuxMint    17\.     -       python-{.*}
LinuxMint    18\.     -       python-{.*}
#-- NetBSD
# observed on vm38 ... dtrace(1) is not the systemtap one
# we're using python3
NetBSD       6\.1\.5  -       py27-{.*} dtrace
NetBSD       8\.0     -       py27-{.*} dtrace
#-- OpenBSD
# observed on vm37
# qtbase is Qt5 and gcc++ here is too old to compile Qt5 headers ... revisit
# if we change from gcc to clang for OpenBSD
# qtsvg is not needed without Qt5
# valgrind is available, but segv's
# we're using python3
OpenBSD      6\.[3-7] -       qtbase qtsvg valgrind python-{.*} {.*}-python cpan(Spreadsheet::ReadSXC) cpan(XML::TokeParser)
#-- RedHat
# we're using python2
# As of 8.2 ...
# mysql conflicst with mariadb
# mandoc conflicts with man-pages
# perl-Net-SNMP) has bad prereq on perl-Digest-SHA1, not perl-Digest-SHA
# perl-Spreadsheet-XLSX has bad depends chain back to perl-IO-Scalar
# perl-Spreadsheet-WriteExcel has bad depends chain back to perl-IO-Scalar
# cpan(Spreadsheet::WriteExcel) fails to build
RHEL         8\.2     -       {.*}-python2 python2-{.*} python2[0-9]-{.*} python-{.*} mysql mandoc perl-ldap perl-Net-SNMP perl-Spreadsheet-XLSX perl-Spreadsheet-WriteExcel cpan(Spreadsheet::WriteExcel)
RHEL         8\.[0-1] -       cpan(Net::LDAP) cpan(Spreadsheet::XLSX) cpan(Text::CSV_XS) cpan(XML::LibXML) cpan(XML::TokeParser) perl-autodie perl-Date-Manip perl-DBD-MySQL perl-LDAP perl-Net-SNMP perl-Spreadsheet-WriteExcel perl-Spreadsheet-XLSX perl-Text-CSV_XS perl-XML-LibXML perl-XML-TokeParser {.*}-python2 python2-{.*} system-python-libs
# broken dependencies - perl-Parse-RecDescent and/or perl-Crypt-DES
RHEL         7\.9     -       perl-Spreadsheet-WriteExcel perl-Spreadsheet-XLSX perl-Net-SNMP
RHEL         7\.[5-9] -       {.*}-python3 python3-{.*} python3{[0-9]-.*} 
RHEL         6\.10    -       {.*}-python3 python3-{.*} python3{[0-9]-.*}
# for RHEL 7, no way to get infiniband/mad.h installed, so rdma-core-devel
# is collateral damage, and libibumad-devel is obsoleted
RHEL         7\.       -       infiniband-diags-devel libibmad-devel rdma-core-devel libibumad-devel
# need non-standard repo for msssql-* pkgs
RHEL         -        -       mssql-server mssql-tools
# these ones are SuSE packages, not in the RH ecosystem
RHEL         -        -       kubectl libqt4-devel
#-- Slackware
# we're using python2
Slackware    14\.2    -       python3-{.*}
#-- SuSE SLES
# we're using python3
SUSE         12-SP.*  -       python-{.*}
# need non-standard repo for msssql-* pkgs
SUSE         -        -       mssql-server mssql-tools
#-- openSUSE
# need non-standard repo for msssql-* pkgs
openSUSE     -        -       mssql-server mssql-tools
#-- Ubuntu
# Python2 retired from PCP builds as of Ubunutu version 20.04
Ubuntu       2.\.     -       python-{.*} python libpython-dev libpython2-dev libpython-stdlib libpython2-stdlib
Ubuntu       1[89]\.. -       python-{.*}
Ubuntu       1[67]\.. -       python-{.*} python2-dev
# we're using python3 from 14.04 on
Ubuntu       1[45]\.. -       python-{.*}
# observed on bozo
# libsoqt-dev, libsoqt-dev-common and libcoin-dev are all for Qt4, but we're
# using Qt5 for the other bits we need for pmview
Ubuntu       18\.10   -       libcoin-dev libsoqt-dev libsoqt-dev-common libsoqt4-dev
Ubuntu       18\.04   -       libcoin-dev libsoqt-dev libsoqt-dev-common libsoqt4-dev
# observed on vm01
# python3-bpfcc : Depends: libbpfcc (>= 0.5.0-5ubuntu1) but it is not installable
Ubuntu       18\.04   i.86    python3-bpfcc
# observed on vm27
# libsoqt-dev, libsoqt-dev-common and libcoin-dev are all for Qt4, but we're
# using Qt5 for the other bits we need for pmview
Ubuntu       16\.04   -       libcoin-dev libsoqt-dev libsoqt-dev-common libsoqt4-dev
# prefer mariadb over mysql for the more recent versions
#
Ubuntu       20\.04   -       mysql-client-core mysql-client-core-[0-9][0-9.]*
Ubuntu       18\.04   -       mysql-client-core mysql-client-core-[0-9][0-9.]*
# observed in CI for Ubuntu 16.04
# need mysql over mariadb, and pick an explicit latest mysql-client-core
# version, not the generic meta package
Ubuntu       16\.04   -       mariadb-client-core mariadb-client-core-[0-9][0-9.]* mysql-client-core
#
# preferences where check-vm -a lists all options ... from list-packages
# analysis
#
RHEL         8\.       -      ccache coreutils-single perl
RHEL         7\.       -      389-ds ccache python2-requests python2-six
RHEL         6\.       -      389-ds ccache perl-interpreter python2-requests python2-setuptools python2-six zabbix22-agent
CentOS       7\.       -      389-ds
CentOS       -         -      ccache
Fedora       32        -      coreutils-single infiniband-diags-devel
Fedora       -         -      ccache
