#!/bin/bash
usage()
{
	cat <<EOF
Usage: $0 [options]

Options:
    -s       Show package name and version number.
    -n       Show numerical version number only.
    -l       List installed packages details (Default option).
EOF
}
if [ "X$1" == "X-s" ]; then echo OFED-internal-4.7-3.2.9:; exit 0; fi
if [ "X$1" == "X-n" ]; then echo 4.7-3.2.9; exit 0; fi
if [ "X$1" != "X-l" ] && [ "X$1" != "X" ]; then usage; exit 1; fi

cat << EOF
OFED-internal-4.7-3.2.9:

ar_mgr:
osm_plugins/ar_mgr/ar_mgr-1.0-0.47.MLNX20191120.gf30d03a.tar.gz

cc_mgr:
osm_plugins/cc_mgr/cc_mgr-1.0-0.46.MLNX20191120.gf30d03a.tar.gz

dapl:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/dapl-2.1.10mlnx-OFED.3.4.2.1.0.47100.src.rpm

dump_pr:
osm_plugins/dump_pr//dump_pr-1.0-0.42.MLNX20191120.gf30d03a.tar.gz

fabric-collector:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/fabric-collector-1.1.0.MLNX20170103.89bb2aa-0.1.47100.src.rpm

gpio-mlxbf:
mlnx_ofed_soc/gpio-mlxbf-1.0-0.g6d44a8a.src.rpm

hcoll:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/hcoll-4.4.2938-1.47100.src.rpm

i2c-mlx:
mlnx_ofed_soc/i2c-mlx-1.0-0.gde458c1.src.rpm

ibacm:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/ibacm-41mlnx1-OFED.4.3.3.0.0.47100.src.rpm

ibdump:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/ibdump-5.0.0-3.47100.src.rpm

ibsim:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/ibsim-0.7mlnx1-0.11.g85c342b.47100.src.rpm

ibutils:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/ibutils-1.5.7.1-0.12.gdcaeae2.47100.src.rpm

ibutils2:
ibutils2/ibutils2-2.1.1-0.113.MLNX20191121.g1c29603.tar.gz

infiniband-diags:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/infiniband-diags-5.4.0.MLNX20190908.5f40e4f-0.1.47100.src.rpm

iser:
mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_4_7_3
commit 457f0645ccd4ff80d597cc3a6c13e80873ff782e

isert:
mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_4_7_3
commit 457f0645ccd4ff80d597cc3a6c13e80873ff782e

kernel-mft:
mlnx_ofed_mft/kernel-mft-4.13.3-6.src.rpm

knem:
knem.git mellanox-master
commit ec1f2f88f34bb0092b4e013bfe8b99c7026c03ad
libdisni:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/libdisni-1.9-OFED.4.5.0.0.6.47100.src.rpm

libibcm:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/libibcm-41mlnx1-OFED.4.1.0.1.0.47100.src.rpm

libibmad:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/libibmad-5.4.0.MLNX20190423.1d917ae-0.1.47100.src.rpm

libibumad:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/libibumad-43.1.1.MLNX20190905.1080879-0.1.47100.src.rpm

libibverbs:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/libibverbs-41mlnx1-OFED.4.7.0.0.2.47100.src.rpm

libmlx4:
mlnx_ofed/libmlx4.git mlnx_ofed_4_7
commit 44e82a1c2c3cc67960f4646125b5c93de6676b95
libmlx5:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/libmlx5-41mlnx1-OFED.4.7.0.3.3.47100.src.rpm

libpka:
mlnx_ofed_soc/libpka-1.0-1.g6cc68a2.src.rpm

librdmacm:
mlnx_ofed/librdmacm.git mlnx_ofed_4_7
commit c009f0c743215011f8e582b7788a811a590006fc
librxe:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/librxe-41mlnx1-OFED.4.4.2.4.6.47100.src.rpm

libvma:
vma/source_rpms//libvma-8.9.5-0.src.rpm

mlnx-en:
mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_4_7_3
commit 457f0645ccd4ff80d597cc3a6c13e80873ff782e

mlnx-ethtool:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/mlnx-ethtool-5.1-1.47100.src.rpm

mlnx-iproute2:
mlnx_ofed/iproute2.git mlnx_ofed_4_7
commit 1c4837862432f8d4a7fdd4bc8f598d7ebab354c3
mlnx-nfsrdma:
mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_4_7_3
commit 457f0645ccd4ff80d597cc3a6c13e80873ff782e

mlnx-nvme:
mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_4_7_3
commit 457f0645ccd4ff80d597cc3a6c13e80873ff782e

mlnx-ofa_kernel:
mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_4_7_3
commit 457f0645ccd4ff80d597cc3a6c13e80873ff782e

mlnx-rdma-rxe:
mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_4_7_3
commit 457f0645ccd4ff80d597cc3a6c13e80873ff782e

mlx-bootctl:
mlnx_ofed_soc/mlx-bootctl-1.1-0.g548e740.src.rpm

mlx-l3cache:
mlnx_ofed_soc/mlx-l3cache-0.1-1.gebb0728.src.rpm

mlx-pmc:
mlnx_ofed_soc/mlx-pmc-1.1-0.g1141c2e.src.rpm

mlx-trio:
mlnx_ofed_soc/mlx-trio-0.1-1.g9d13513.src.rpm

mlxbf-livefish:
mlnx_ofed_soc/mlxbf-livefish-1.0-0.gec08328.src.rpm

mpi-selector:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/mpi-selector-1.0.3-1.47100.src.rpm

mpitests:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/mpitests-3.2.20-e1a0676.47100.src.rpm

mstflint:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/mstflint-4.13.0-1.41.g4e8819c.47100.src.rpm

multiperf:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/multiperf-3.0-0.13.gcdaa426.47100.src.rpm

mxm:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/mxm-3.7.3112-1.47100.src.rpm

nvme-snap:
nvme/nvme-snap-2.0.1-4.mlnx.src.rpm

ofed-docs:
docs.git mlnx_ofed-4.0
commit 3d1b0afb7bc190ae5f362223043f76b2b45971cc

openmpi:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/openmpi-4.0.2rc3-1.47100.src.rpm

opensm:
mlnx_ofed_opensm/opensm-5.5.1.MLNX20191120.0c8dde0.tar.gz

openvswitch:
openvswitch.git mlnx_ofed-br-2.11
commit 5b238de6701a715745199f878d620a362236453a
perftest:
mlnx_ofed_perftest/perftest-4.4-0.11.gd240b65.tar.gz

pka-mlxbf:
mlnx_ofed_soc/pka-mlxbf-1.0-0.g963f663.src.rpm

qperf:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/qperf-0.4.9-9.47100.src.rpm

rdma-core:
mlnx_ofed/rdma-core.git mlnx_ofed_4_7_3
commit ac3ff54aaf48b3d64f8492e1790b8c5357378a80
rshim:
mlnx_ofed_soc/rshim-1.16-0.ga7ad4e6.src.rpm

sharp:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/sharp-2.0.0.MLNX20190922.a9ebf22-1.47100.src.rpm

sockperf:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/sockperf-3.6-0.git737d1e3e5576.47100.src.rpm

srp:
mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_4_7_3
commit 457f0645ccd4ff80d597cc3a6c13e80873ff782e

srptools:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-4.7-1.0.0/SRPMS/srptools-41mlnx1-5.47100.src.rpm

tmfifo:
mlnx_ofed_soc/tmfifo-1.4-0.gd7a3ff2.src.rpm

ucx:
mlnx_ofed_ucx/ucx-1.7.0-1.src.rpm

EOF

echo
echo Installed Packages:
echo -------------------

pkglist1=
pkglist2=

if [ -x /usr/bin/dpkg ]; then
    pkglist1=$(dpkg --list | grep -E "#DEB_PACKAGES_LIST#")
fi

if (which rpm >/dev/null 2>&1); then
    pkglist2=$(rpm -qa --queryformat "[%{NAME}]
" | grep -E "kernel-ib|ar_mgr|cc_mgr|dapl|dump_pr|fabric-collector|gpio-mlxbf|hcoll|i2c-mlx|ibacm|ibdump|ibsim|ibutils|ibutils2|infiniband-diags|^iser|kmod-iser|iser.*kmp|^isert|kmod-isert|isert.*kmp|kernel-mft|knem|libdisni|libibcm|libibmad|libibumad|libibverbs|libmlx4|libmlx5|libpka|librdmacm|librxe|libvma|mlnx-en|mlnx-ethtool|mlnx-iproute2|mlnx-nfsrdma|mlnx-nvme|mlnx-ofa_kernel|mlnx-rdma-rxe|mlx-bootctl|mlx-l3cache|mlx-pmc|mlx-trio|mlxbf-livefish|mpi-selector|mpitests|mstflint|multiperf|mxm|nvme-snap|ofed-docs|openmpi|opensm|openvswitch|perftest|pka-mlxbf|qperf|rdma-core|ibacm|libibcm|libibumad|libibverbs|librdmacm|srp_daemon|rshim|sharp|sockperf|^srp$|kmod-srp|srp.*kmp|srptools|tmfifo|ucx")
fi

echo -e "$pkglist1"
echo -e "$pkglist2"
