#!/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-25.10-1.2.8:; exit 0; fi
if [ "X$1" == "X-n" ]; then echo 25.10-1.2.8; exit 0; fi
if [ "X$1" != "X-l" ] && [ "X$1" != "X" ]; then usage; exit 1; fi

cat << EOF
OFED-internal-25.10-1.2.8:

clusterkit:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/clusterkit-1.15.472-1.20251022.023d2d0.2510122.src.rpm

dpcp:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/dpcp-1.1.55-1.2510122.src.rpm

ibarr:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/ibarr/2510.0.0-1/ibarr-2510.0.0-1.src.rpm
ibdump:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/ibdump/6.0.0-2/ibdump-6.0.0-2.src.rpm
ibsim:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/ibsim/0.12.1-3/ibsim-0.12.1-3.src.rpm
ibutils2:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/ibutils2-2.1.1-0.22400.MLNX20251030.g8c84ecb57.2510122.src.rpm

iser:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/iser-25.10-OFED.25.10.1.2.2.1.src.rpm

isert:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/isert-25.10-OFED.25.10.1.2.2.1.src.rpm

kernel-mft:
mlnx_ofed_mft/kernel-mft-4.34.0-145.src.rpm

knem:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/knem-1.1.4.90mlnx4-OFED.25.10.1.2.2.1.src.rpm

libvma:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/libvma/9.8.80-1/libvma-9.8.80-1.src.rpm
libxlio:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/libxlio-3.60.4-1.src.rpm

mlnx-dpdk:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/mlnx-dpdk-22.11.0-2510.1.0.2510122.src.rpm

mlnx-ethtool:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/mlnx-ethtool/2510.0.0-1/mlnx-ethtool-2510.0.0-1.src.rpm
mlnx-iproute2:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/mlnx-iproute2/2510.0.9-1/mlnx-iproute2-2510.0.9-1.src.rpm
mlnx-nfsrdma:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/mlnx-nfsrdma-25.10-OFED.25.10.1.2.2.1.src.rpm

mlnx-nvme:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/mlnx-nvme-25.10-OFED.25.10.1.2.2.1.src.rpm

mlnx-ofa_kernel:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/mlnx-ofa_kernel-25.10-OFED.25.10.1.2.2.1.src.rpm

mlnx-tools:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/mlnx-tools/2510.0.14-1/mlnx-tools-2510.0.14-1.src.rpm
mlx-steering-dump:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/mlx-steering-dump-1.0.0-0.2510122.src.rpm

multiperf:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/multiperf-3.0-3.0.2510122.src.rpm

ofed-docs:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/ofed-docs.git mlnx_ofed-4.0
commit 3d1b0afb7bc190ae5f362223043f76b2b45971cc

openmpi:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/openmpi-4.1.9a1-1.20251022.ad48c462ff.2510122.src.rpm

opensm:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/opensm-5.25.1.MLNX20251030.e3791a47-0.1.2510122.src.rpm

openvswitch:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/openvswitch-3.2.0044-1.2510122.src.rpm

perftest:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/perftest/25.10.0-0.128.gd01b183/perftest-25.10.0-0.128.gd01b183.src.rpm
rdma-core:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/rdma-core/2510.0.10-1/rdma-core-2510.0.10-1.src.rpm
rshim:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/rshim-2.5.7-0.g0339e66.src.rpm

sharp:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/sharp-3.13.12-1.2510122.src.rpm

sockperf:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/sockperf/3.1-1/sockperf-3.1-1.src.rpm
srp:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/srp-25.10-OFED.25.10.1.2.2.1.src.rpm

ucx:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/ucx-1.20.0-1.20251022.03898fede.2510122.src.rpm

virtiofs:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.10-1.2.2/SRPMS/virtiofs-25.10-OFED.25.10.1.2.2.1.src.rpm

xpmem:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/prime/generic-rpm/x86_64/xpmem/2510.0.16-1/xpmem-2510.0.16-1.src.rpm
EOF

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

pkglist1=
pkglist2=

if [ -x /usr/bin/dpkg ]; then
    pkglist1=$(dpkg --list | grep -E "clusterkit|doca-openvswitch-common|doca-openvswitch-ipsec|doca-openvswitch-pki|doca-openvswitch-source|doca-openvswitch-switch|doca-openvswitch-test|doca-openvswitch-testcontroller|doca-openvswitch-vtep|python3-doca-openvswitch|doca-openvswitch-dev|dpcp|ibarr|ibdump|ibsim|ibsim-doc|ibutils2|iser-dkms|isert-dkms|kernel-mft-dkms|knem|knem-dkms|libvma|libvma-dev|libvma-dbg|libvma-utils|libxlio|libxlio-dev|libxlio-dbg|libxlio-utils|mlnx-dpdk|mlnx-dpdk-doc|mlnx-dpdk-dev|mlnx-ethtool|mlnx-iproute2|mlnx-nfsrdma-dkms|mlnx-nvme-dkms|mlnx-ofed-kernel-utils|mlnx-ofed-kernel-dkms|mlnx-tools|mlx-steering-dump|openmpi|opensm|opensm-doc|libopensm|libopensm-devel|perftest|rdma-core|ibacm|ibverbs-providers|ibverbs-utils|libibverbs-dev|libibverbs1|libibumad-dev|libibumad3|librdmacm-dev|librdmacm1|rdmacm-utils|srptools|python3-pyverbs|infiniband-diags|libibmad5|libibmad-dev|libibnetdisc5|libibnetdisc-dev|rshim|sharp|__APP_NAME__|srp-dkms|ucx-dev|ucx|ucx-xpmem|ucx-cuda|ucx-gdrcopy|ucx-ib-mlx5-gda|virtiofs-dkms|xpmem|libxpmem-dev|libxpmem0|xpmem-dkms|xpmem-modules")
fi

if (which rpm >/dev/null 2>&1); then
    pkglist2=$(rpm -qa --queryformat "[%{NAME}]
" | grep -E "kernel-ib|clusterkit|dpcp|ibarr|ibdump|ibsim|ibutils2|^iser|kmod-iser|iser.*kmp|^isert|kmod-isert|isert.*kmp|kernel-mft|knem|libvma|libxlio|mlnx-dpdk|mlnx-ethtool|mlnx-iproute2|mlnx-nfsrdma|mlnx-nvme|mlnx-ofa_kernel|mlnx-tools|mlx-steering-dump|multiperf|ofed-docs|openmpi|opensm|openvswitch|perftest|rdma-core|ibacm|libibcm|libibumad|libibverbs|librdmacm|srp_daemon|infiniband-diags|python3-pyverbs|rshim|sharp|sockperf|^srp$|kmod-srp|srp.*kmp|ucx|^virtiofs$|kmod-virtiofs|virtiofs.*kmp|xpmem|neohost-backend|neohost-sdk")
fi

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